When the android marketplace was opened on android phone following line was
being till i closed android market place

W/SurfaceFlinger(   57): executeScheduledBroadcasts() skipped, contention on
the client. We'll try again later...

What does this line means ? does this line occur because MyService was about
to be scheduled but system delayed it ?



On Sun, Oct 4, 2009 at 12:37 PM, shahzad ahmad <[email protected]>wrote:

> Hi,
>      I've developed an application which has a service and boot completed
> receiver. The boot completed receiver schedules the service to be executed
> after every 7 minutes. The boot completed receiver saves its context in a
> public static variable which is then accessed by service whenever it is
> scheduled by scheduler. The service first gets the IMEI number of phone and
> then saves it to a file if it is not already saved. Everything worked
> smoothly but then i logged into market place and after that the scheduled
> service was not able to get IMEI number directly , neither was it able to
> open the file which had already been created and it keeps on throwing
> nullpointer exception for both direct IMEI retrieval and attempt to open
> file  .
>
> Following is the immidiate code executed by service which is scheduled by
> schedular after contstant intervals (BootCompletedReceiver is the receiver
> which is called when phone is restarted and it schedules a service to be
> started after fixed time intervals,  appContext is public static Context
> variable of BootCompletedReceiver which is equal to context of
> BootCompletedReceiver and accessed by service and other classes for
> different purposes)
>
>     public String getIMEINumber() throws Exception {
>         String imei = null;
>
>         try {
>             TelephonyManager tm = (TelephonyManager)
> BootCompletedReceiver.appContext
>                     .getSystemService(Context.TELEPHONY_SERVICE);
>
>             imei = tm.getDeviceId();
>            System.out.println("[IMEIProcessor]: imei:" + imei);
>             }
>
>             if (imei != null) {
>                 storeIMEI(imei);
>                 return imei;
>             } else {
>                 imei = getIMEIFromFile();
>                 if (imei != null) {
>                     return imei;
>                 } else {
>                     throw new NullPointerException();
>                 }
>
>             }
>         } catch (Exception e) {
>             imei = getIMEIFromFile();
>             if (imei != null) {
>                 return imei;
>             } else {
>                 throw new NullPointerException();
>             }
>         }
>     }
>
> /////////////////////////////////////////////
> private boolean isIMEIFilePresent(){
>         FileInputStream fis = null;
>         try{
>             fis =
> BootCompletedReceiver.appContext.openFileInput("imei.file");
>             fis.close();
>             System.out.println("[IMEIProcessor]: imei file present");
>             return true;
>         } catch (Exception e){
>                 System.out.println(e);
>                 System.out.println("[IMEIProcessor]: imei file not
> present");
>                 return false;
>         }
>
>     }
>
>
> So following is first line of log when everything is working fine
>
> I/System.out(  194): [IMEIProcessor]: imei:358280015019595
>
> But when i logged into androidmarket place, application was neither able to
> get IMEI number from system nor it was able to check if imei.file is
> present. Following are logged messages .
>
> D/gmail-ls(  123): clearNewUnreadMailForNotificationLabelIfNeeded. Count:
> 0, label: -65541/^^unseen-^^vmi
> D/dalvikvm(  386): GC freed 3431 objects / 198576 bytes in 115ms
> I/gmail-ls(  123): ConversationCursor requesting results for
> query[label:^i] with queryId 1 starting at 1315217442227617791
> D/gmail-ls(  123): clearNewUnreadMailForNotificationLabelIfNeeded. Count:
> 0, label: -65540/^^unseen-^i
> D/gmail-ls(  123): clearNewUnreadMailForNotificationLabelIfNeeded. Count:
> 0, label: -65541/^^unseen-^^vmi
> D/Gmail   (  386): ConversationHeaderCursorAdapter.cursorStatusChanged:
> LOADING
> D/gmail-ls(  123): clearNewUnreadMailForNotificationLabelIfNeeded. Count:
> 0, label: -65540/^^unseen-^i
> D/gmail-ls(  123): clearNewUnreadMailForNotificationLabelIfNeeded. Count:
> 0, label: -65541/^^unseen-^^vmi
> D/Gmail   (  386): ConversationHeaderCursorAdapter.cursorStatusChanged:
> LOADED
> I/WindowManager(   57): Input configuration changed: { scale=1.0 imsi=0/0
> locale=en_AU touch=3 key=2/2 nav=3 orien=1 }
> D/StatusBar(   57): updateResources
> D/dalvikvm(   92): GC freed 3964 objects / 241744 bytes in 189ms
> D/dalvikvm(   57): GC freed 5513 objects / 267056 bytes in 166ms
> D/dalvikvm(  386): GC freed 3238 objects / 181800 bytes in 94ms
> D/dalvikvm(  123): GC freed 4506 objects / 235528 bytes in 143ms
> D/SurfaceFlinger(   57): About to give-up screen, flinger = 0xc3c18
> D/dalvikvm(  123): GC freed 620 objects / 42568 bytes in 145ms
> D/dalvikvm(   57): GC freed 14853 objects / 840120 bytes in 263ms
> ----> I/ActivityManager(   57): Start proc MyService.Test for service
> MyService.Test/.MyService: pid=426 uid=10023 gids={3003}
> I/dalvikvm(  426): Ignoring DDM send req for type=0x41504e4d len=38
> I/dalvikvm(  426): Ignoring DDM send req for type=0x41504e4d len=36
> I/System.out(  426): java.lang.NullPointerException
> I/System.out(  426): [IMEIProcessor]: imei file not present
> I/ActivityManager(   57): Stopping service: MyService.Test/.MyService
> I/System.out(  426): java.lang.NullPointerException
> I/System.out(  426): [IMEIProcessor]: imei file not present
> D/dalvikvm(  426): GC freed 680 objects / 42208 bytes in 129ms
> I/ActivityManager(   57): Process MyService.Test (pid 426) has died.
>
> Can you tell what i'm doing wrong? Why Activity is manager is starting
> process MyService.Test because when things were working fine there was no
> mentioning of Activitymanager and following was the first line to be printed
> in logs
>
> I/System.out(  194): [IMEIProcessor]: imei:358280015019595
>
> Suddenly why ActivityManager is trying to start my application ? and after
> that service is never able to get IMEI and nor open file. Is it due to
> context which the service uses of Boot completed receiver i.e
> BootCompletedReceiver.appContext ?
>
> I'm realy stuck due to this issue . Please help me to solve this issue
>
> Thanks
>
>
>

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to