Discussion Board

Results 1 to 1 of 1
  1. #1
    Registered User
    Join Date
    Apr 2010

    S40 recording security issue

    Hello there,

    i'm no native english speaker, so please bear with me :-)

    I'm encountering strange behaviour of RecordControl.commit() on my device:
    V 09.10
    It's a S40 6th Edition i think.

    I've read through a lot of threads including this one and this one, where the questions are basically the same, but the answers didn't help.
    I also know that signing my midlet should do the trick. But i'm not willing to spend money for what i consider a workaround...

    Short Version: Summary at the end.

    Long Version:
    This snippet (pretty much taken from S40 SDK) is making me trouble:
    			ByteArrayOutputStream out = new ByteArrayOutputStream();
    			Player p = Manager.createPlayer("capture://video");
    			RecordControl rc = (RecordControl)p.getControl("RecordControl");	
    			while (true) {
    Multimedia recording and Connections are set to "Ask 1st time". When Midlet starts it asks if the camera may be used, which it should do. But then every single call to commit() triggers a confirmation "Application may send recorded data". When denied it throws a java.io.IOException "Unable to upload data". There is no way of disabling this.

    MMAPI documention mentions two seperate checks. What really bugs me though is that some changes avoid the confirmation:
    1. Changing the locator to "capture://audio" - therefor recording audio only - does not trigger the confirmation.
    2. So the intention might be to limit recording of visual data. But that's not true since the following snippet (again taken from S40 SDK) also won't trigger the confirmation:
    			Player p = Manager.createPlayer("capture://image");
    			//create video control:
    			VideoControl videoControl = (VideoControl)p.getControl("VideoControl");
    			videoControl.initDisplayMode(GUIControl.USE_GUI_PRIMITIVE, null);
    			while (true) {
    This snippets also asks if cam may be used, but then keeps taking snapshots without any further nagging.
    I do see that the recording mechanics are different, but i do not see any reason why the 1st snippet should trigger a confirmation that cannot be disabled (and totally negates what i'm planning to do), while the 2nd does no such things. Both snippets do the same: record visual data from the camera. So they should be subject to the same permissions, right?

    To sum it up:
    1. Recording permissions - esp. concerning RecordControl.commit() - are inconsistent IMHO. It lets me record audio and take snapshots with only the "Camera-Permission", but recording video requires Camera- and Upload-Permission. I can't see any sort of intention behind this behaviour. Also, denying the upload throws an IOException, but shouldnt it throw a SecurityException?
    Am i getting it wrong and it works as intened? Or did i stumble across a glitch.

    2. Upload-Permission cannot be set to "Ask 1st time", and thats a real killer. Is there a way to avoid the endless confirmations - besides signing the app?

    Best regards, thanks for reading,
    Last edited by lakrumm; 2010-04-18 at 10:53. Reason: Clarification

Similar Threads

  1. Long hour recording
    By jawadakhtar in forum Symbian Media (Closed)
    Replies: 0
    Last Post: 2010-01-14, 14:30
  2. Audio recording in Nokia S40 3rd Edition FP2 Emulator
    By anant_vk in forum Mobile Java Tools & SDKs
    Replies: 0
    Last Post: 2007-12-21, 18:10
  3. Problem with S40 5th Edition emulation, NCF 1.2 and BT dongle
    By nevillesatz in forum Bluetooth Technology
    Replies: 1
    Last Post: 2007-07-05, 10:52
  4. Recording Issue
    By anoopd in forum Symbian Media (Closed)
    Replies: 1
    Last Post: 2007-06-06, 13:06
  5. Nokia手机主要参数列表
    By cqucyf in forum [Archived] Other Programming Discussion 关于其他编程技术的讨论
    Replies: 0
    Last Post: 2005-05-04, 16:34

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts