Re: [android-developers] Re: Home screed Widget crash

2012-02-03 Thread Farhan Tariq
Thank you guys.

I fixed it without using the alarm manager :) . What i was doing wrong is
that i was creating bitmaps and sending them off to be displayed on the
remote widget, thinking that it's memory would be reclaimed when the next
image takes its place. Apparently, this wasn't happening. So i limited the
scope of creation of the remoteViews to the function in which the widget
was updated each time, downloaded images within the same scope and it works
like a charm :) no memory issues now.

On Thu, Feb 2, 2012 at 8:49 AM, David Ross grand...@vacuumpunk.com wrote:

 I would suggest using AlarmManager for your repeating 15s update.
 Handle the Intent in a private BroadcastReceiver inside your
 AppWidgetProvider. Forget the Service as the scheduling mechanism but
 use it for the download of the next image from within your
 BroadcastReceiver. In BroadcastReceiver also (re)set the next alarm in
 AlarmManager to give the forever 15s repeat. Services can be killed
 basically at any time unless they are bound to a Notification but who
 wants a Notification if the Widget is on the screen already? Check
 your log, you might find the system is killing the Service.

 Then, handle Screen On/Off Intents so you only do your downloads when
 the screen is on.


 On Feb 1, 5:27 am, String sterling.ud...@googlemail.com wrote:
  The failed binder transaction issue basically happens whenever you send
  data too fast to an AppWidget, where too fast is loosely defined. You
  can definitely cause it by sending 1MB at once, but you can also get it
 by
  sending much smaller quantities at too fast a rate. Which is what it
 sounds
  like you're doing.
 
  Your best solution is probably to create a content provider and have your
  widget access that directly for the images, which will avoid the
  RemoteViews (and thus the binder which is causing the problem). A Google
  search for *image content provider* should get you started.
 
  Having said all that, updating an AppWidget with an image every 15
 seconds
  sounds like a recipe for battery drain. You might want to test that
  hypothesis, see how bad the power drain is before you go to the trouble
 of
  re-implementing the image delivery mechanism. You may need to rethink
 your
  concept at a deeper level instead.
 
  String

 --
 You received this message because you are subscribed to the Google
 Groups Android Developers group.
 To post to this group, send email to android-developers@googlegroups.com
 To unsubscribe from this group, send email to
 android-developers+unsubscr...@googlegroups.com
 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 android-developers@googlegroups.com
To unsubscribe from this group, send email to
android-developers+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

[android-developers] Re: Home screed Widget crash

2012-02-01 Thread David Ross
I would suggest using AlarmManager for your repeating 15s update.
Handle the Intent in a private BroadcastReceiver inside your
AppWidgetProvider. Forget the Service as the scheduling mechanism but
use it for the download of the next image from within your
BroadcastReceiver. In BroadcastReceiver also (re)set the next alarm in
AlarmManager to give the forever 15s repeat. Services can be killed
basically at any time unless they are bound to a Notification but who
wants a Notification if the Widget is on the screen already? Check
your log, you might find the system is killing the Service.

Then, handle Screen On/Off Intents so you only do your downloads when
the screen is on.


On Feb 1, 5:27 am, String sterling.ud...@googlemail.com wrote:
 The failed binder transaction issue basically happens whenever you send
 data too fast to an AppWidget, where too fast is loosely defined. You
 can definitely cause it by sending 1MB at once, but you can also get it by
 sending much smaller quantities at too fast a rate. Which is what it sounds
 like you're doing.

 Your best solution is probably to create a content provider and have your
 widget access that directly for the images, which will avoid the
 RemoteViews (and thus the binder which is causing the problem). A Google
 search for *image content provider* should get you started.

 Having said all that, updating an AppWidget with an image every 15 seconds
 sounds like a recipe for battery drain. You might want to test that
 hypothesis, see how bad the power drain is before you go to the trouble of
 re-implementing the image delivery mechanism. You may need to rethink your
 concept at a deeper level instead.

 String

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


[android-developers] Re: Home screed Widget crash

2012-01-31 Thread String
The failed binder transaction issue basically happens whenever you send 
data too fast to an AppWidget, where too fast is loosely defined. You 
can definitely cause it by sending 1MB at once, but you can also get it by 
sending much smaller quantities at too fast a rate. Which is what it sounds 
like you're doing.

Your best solution is probably to create a content provider and have your 
widget access that directly for the images, which will avoid the 
RemoteViews (and thus the binder which is causing the problem). A Google 
search for *image content provider* should get you started.

Having said all that, updating an AppWidget with an image every 15 seconds 
sounds like a recipe for battery drain. You might want to test that 
hypothesis, see how bad the power drain is before you go to the trouble of 
re-implementing the image delivery mechanism. You may need to rethink your 
concept at a deeper level instead.

String

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