Is your service remote, or running in-process? 20.02.2011 19:49 пользователь "Jake Colman" <[email protected]> написал: >>>>>> "MM" == Mark Murphy <[email protected]> writes: > > MM> On Fri, Feb 18, 2011 at 12:44 PM, Jake Colman <[email protected]> wrote: > > >> My service no longer updates the widget and the widget's data area > >> remains blank. This indicates (at least to me but I'm still > >> learning) that either the widget is not getting its notification > >> to start the service or the service is ignoring its start method. > > MM> I'd add some logging or breakpoints. Depending on how you are > MM> using AppWidgetManager from your service, it's also possible that > MM> the service is running but just not updating the app widget > MM> (e.g., you're using the ID-based app widget update and the ID > MM> changed). > > >> So could it be that the notifications are "confused" between old > >> and new instances of the widget? > > MM> That is decidedly possible. I haven't played around with > MM> supporting multiple app widgets much, so I have no idea how > MM> stable those app widget IDs are. > > MM> If this is for your sunrise app widget from your other thread, > MM> unless you are supporting monitoring sunrise from multiple > MM> geographic locations, I would not worry about supporting multiple > MM> app widgets. Use the updateAppWidgets() that just takes a > MM> ComponentName and update the lot of 'em in one shot. > > So we have already discussed that we are talking about my sunrise > widget, that we have only a single widget instance, and that my code, in > any event, would have updated all instances. > > I have also confirmed that the widget is still receiving notification > broadcasts and starting the service accordingly, and that the service is > getting started. The "only" issue is that the widget is not painting an > update! > > So what about a UID mismatch? The docs say that the service can only > update the RemoteViews if the UID of the appwidget and the service are > the same. Can the UID change if I download a new version of the APK > while the app is still installed on my homescreen? If that happened, it > might explain why the widget remains blank - the service has a different > UID so it canot update the widget. If so, when the widget is disabled > and the services are stopped why wouldn't that clean things up? It > seems that once I am in this state, I have to kill the emulator and > start a new one. Furthermore, if this is, indeed the problem, how I > protect against it. I suppose I can tell the user to be sure to delete > the widget from the homescreen prior to updating but that is not a very > satisfactory solution. > > Thanks! > > -- > Jake Colman -- Android Tinkerer > > -- > 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
-- 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

