Android :: Handle Background Threads When Leaving An Activity?

Oct 10, 2010

I need my Android app to save it's state to disk when its activity is put in the background or killed. It's been suggested that I start a thread when onPause() is called and perform any expensive I/O procedures there (see http://stackoverflow.com/questions/3894668/saving-loading-document-state-quickly-and-robustly-for-image-editor).

In what situations will the OS kill the thread and how commonly do these situations occur?

I assume it will be like how Activities are dealt with where the OS can arbitrary decide to kill the thread but will mostly only do this when resources are extremely limited. It would be nice to find some specific documentation of this though.

From playing around, with some test code, a background thread started in onPause() will run indefinitely in the background on my device (I tried loading lots of apps and couldn't get it to be killed).

For my specific app, I'm writing a bitmap editor where I'm using the Command pattern and the Memento pattern to allow undo and redo of edits. I'd like the user to be able to undo/redo their edits even e.g. the user gets a phone call and the activity is killed when it is put in the background. The best solution I can think of is to use a background thread to constantly save my command and memento objects to disk during application use and to finish up saving any objects that are left in a background thread if onPause is called. In the worse case, if the thread is killed I'll only lose some edits.

Android :: handle background threads when leaving an Activity?


Android :: CursorAdapters - ListViews And Background Threads

Aug 26, 2009

This application I've been working on has databases with multiple megabytes of data to sift through. A lot of the activities are just ListViews descending through various levels of data within the databases until we reach "documents", which is just HTML to be pulled from the DB(s) and displayed on the phone. The issue I am having is that some of these activities need to have the ability to search through the databases by capturing keystrokes and re-running the query with a "like %blah%" in it. This works reasonably quickly except when the user is first loading the data and when the user first enters a keystroke. I am using a ResourceCursorAdapter and I am generating the cursor in a background thread, but in order to do a listAdapter.changeCursor(), I have to use a Handler to post it to the main UI thread. This particular call is then freezing the UI thread just long enough to bring up the dreaded ANR dialog. I'm curious how I can offload this to a background thread totally so the user interface remains responsive and we don't have ANR dialogs popping up.

Just for full disclosure, I was originally returning an ArrayList of custom model objects and using an ArrayAdapter, but (understandably) the customer pointed out it was bad memory-manangement and I wasn't happy with the performance anyways. I'd really like to avoid a solution where I'm generating huge lists of objects and then doing a listAdapter.notifyDataSetChanged/Invalidated()

Here is the code in question:

CODE:.....................

View 2 Replies View Related

Android :: Handle Screen Orientation Changes With An Activity Started Within A Tab's Activity

Nov 2, 2010

I have a TabActivity, and each Tab corresponds to its own Activity. In one of them, in the onCreate method, I use startActivityForResult to show a dialog (specifically, Bump's BumpAPI activity).

code:...............

The problem is that when the screen orientation changes, it tries to create the tab's activity again which makes another BumpAPI dialog, resulting in multiple stacked on top of each other. Do I have a hook into the started activity to cancel the previous one when the orientation changes?

A workaround seems to be to add a button that when clicked, starts the second activity, but that adds an unnecessary step.

Also, I can't fix the screen orientation for the entire tabActivity because some of them require typing and users may want to use their physical keyboards.

View 1 Replies View Related

Android :: Avoid Restarting Background Threads On Orientation Change

May 19, 2010

I start a number of background threads in my Activity onCreate that do work to keep the UI free. I was originally destroying these threads in onDestroy. However, the idea of shutting down and restarting these background threads every time there is an orientation change seems like a waste of time to me. What is the preferred way of avoiding the shutdown of my background threads on an orientation change? I supposed I could set a flag in onSaveInstanceState and then not destroy my threads if this flag is set. Is this a valid approach or is there a more standard framework approach that I am overlooking?

View 6 Replies View Related

Android :: Handle Existing Instance Root Activity Launching Root Activity From Intent Filter

Apr 3, 2010

I'm having difficulties handling multiple instances of my root (main) activity for my application. My app in question has an intent filter in place to launch my application when opening an email attatchment from the "Email" app. My problem is if I launch my application first through the the android applications screen and then launch my application via opening the Email attachment it creates two instances of my root activity. steps: Launch root activity A, press home Open email attachment, intent filter triggers launches root activity A Is it possible when opening the Email attachment that when the OS tries to launch my application it detects there is already an instance of it running and use that or remove/clear that instance?

View 1 Replies View Related

Android :: Handle Imaged Background And Buttons On Different Size/proportion Displays

Mar 27, 2010

IŽm working on the UI of my first app and IŽd like it to work on as many different devices as possible. IŽve read on the net about AndroidŽs rule not to resize bitmaps on views (background, buttons, etc), is it true? Does android rescale skinned views sizes the same way it resizes the default ones? Also, if not, how can I handle the more than 5 display sizes using a background image and skinned buttons and scrollers (horizontal bar)?

View 2 Replies View Related

Android :: Need To Stop All Threads When My Main Activity Closes

Nov 3, 2010

Im wanting to stop all threads when my main activity closes as some are still running afterwards and are giving NullPointerException as they try to access Array Lists which no longer exist. however none of the obvious methods are working and they are also deprecated. is it possible as im currently using a try/catch statement as a workaround but would prefer a fix.

View 1 Replies View Related

Android :: How To Handle Screen Orientation Change / When Progress Dialog And Background Thread Active?

Jul 10, 2009

My program does some network activity in a background thread. Before starting, it pops up a progress dialog. The dialog is dismissed on the handler.This all works fine, except when screen orientation changes while the dialog is up (and the background thread is going). At this point the app either crashes, or deadlocks, or gets into a weird stage where the app does not work at all until all the threads have been killed.How can I handle the screen orientation change gracefully?

View 9 Replies View Related

Android :: How To Handle Activity When Orientation Changes?

Aug 9, 2010

I am writing an activity, that loads data from a server and displays it as a list using ArrayAdapter. For that I'm showing a progress dialog i.e loading, while it loads all data from the server. Then i dismiss the dialog in a handler. My problem is that when ever i change the orientation, the progress dialog is again shown, which is not needed, because all the data is displayed already?

View 1 Replies View Related

Android :: How To Handle Home Key In Our Activity

Sep 8, 2010

How to handle Home key....Plzz Help me out.We can handle Home button.if you have seen the Nexus One device...when u reset the phone ..and switch it on again some tutorials kind of thng comes..at that time wen u press the home button its not taking u to the Launche Activity...if its not possible then how they are handling over there.I want the Answer..No one in this Blog has any idea how to handle it....or no one has tried on this..sum are sayng that we can handle it by PhoneWindowManager.java class,some r sayng we can handle it by Using onNewINtent() method.But the Question is how we can handle it by these two ways...Just provide me the sample code..where we are handling the HomeKey.

View 9 Replies View Related

Android :: How To Handle Notifications In An Activity

Sep 13, 2010

I have an Activity that will query a RESTful API every x seconds (polls using a handler). The results of the GET are used to update a ListView. This is done using an AsyncTask.

I want to put a Notification in the Notification bar when certain criteria are met in the new data. Everything I have read up to this point has suggested that notifications should be created and updated using a service so that the notifications can be made even when the application isn't in focus. I see the positive aspects of this.

However, I'm unsure if I should just create a service from within my activity or if I need to do something more complex than that. I'm undecided on if I should scrap my AsyncTask model in favor of using the Service to update my list view.

So, my questions are:

1) Is there a good tutorial showing how to make a local service from an activity?

The tutorial doesn't need to show how to make them communicate, the service could be isolated from the main activity.

2) Will #1 provide me with the notification benefits I'm looking for? (Notifications are generated even when the main app isn't visible)

3) Should I use this same service to update my listview?

The service would basically be making the same query that the AsyncTasks are, just doing different things with the results. The app would seem to make more sense to have the Service query, do notification processing, then give the results to the activity, but I haven't found a good resource that clearly demonstrates how to do something like this.

View 1 Replies View Related

Android :: Activity Found To Handle Intent?

Aug 4, 2010

I am tring to invote internal media player of android from my activity. Seems there is some problem in menifest file .

Please look into this issue .

CODE:...........................

View 2 Replies View Related

Android :: Activity Not Found To Handle Intent?

Nov 24, 2010

I have a problem regarding my intent. It seems that my app crashes when i select the intent. I found the line of error code due to the stack trace. But i couldn't find anything wrong with it. Hope anyone can help me with this.

This is the java code in line 121:

CODE:..............

This is the stack trace:

CODE:....................................

View 2 Replies View Related

Android :: Start Activity When Main Activity Is Running In Background

Jan 10, 2010

I created an application which enables the user to set whether he wants to receive notification while the application runs in background mode. If the notifications are enabled an activity should be started (the dialog should appear on the screen).

I tried to enabled it the following way:

CODE:...........

This is the method from main activity. When onPause() is executed isRunningInBackground is set true.
When I tried to debug it when the main application was running in the background the line

startActivity(intent) had no effect (the activity didn't appear).

Does anyone know how to midify the logic in order to start an activity from the main activity when the main activity is running in the background (after onPause() is called)?

View 1 Replies View Related

Android :: How To Handle Activity Lifecycle On Wake Up - Alarm App

Oct 4, 2010

I'm having a couple of problems with an alarm app I am developing.

The first thing that I think is a bit weird is that when an alarm goes of and wakes the phone up. These things happend.

oncreate
onresume
onpause
onresume

Why are they run in that order? The last two should not be called? And this is what's causes me big trouble, because when i press home or back on the phone, onPause is run, which I want to call finish() from. And that part works as it should, but that does not work when the phone wakes upp from sleep bacause of the onPause call...

View 2 Replies View Related

Android :: ActivityNotFoundException: No Activity Found To Handle Intent

Nov 2, 2010

test.class type is right? How to? What should I do?

CODE:...............

View 2 Replies View Related

Android :: Handle Activity Life Cycle Involving Sockets?

May 30, 2010

I have an Android activity which in turn starts a thread. In the thread I open a persistent TCP socket connection. When the socket connects to the server dynamic data is downloaded. The thread sends messages using Handler-class to the activity when data has been received. Now if the user happens to switch from portrait to landscape mode the activity gets an onDestroy call. At this moment I close the socket and stop the thread. When Android has switched landscape mode it calls onCreate yet again and I have to do a socket re-connect. Also, all of the data the activity received needs to be downloaded once more because the server does not have the ability to know what has been sent before, i.e. there is no "resume" feature.

Thus the problem is that there is alot of data which is resent all the time when landscape mode is changed. What are my options here? Should I create a service which handles the socket traffic towards the server thus I always got all the data which the server has sent in the service. Or should I disable landscape mode all together perhaps? Or would my best bet be to rewrite my server which is a VERY BIG job

View 1 Replies View Related

Android :: Handle Lock Screen Button Input For Droid Activity?

Nov 12, 2010

Suppose I have something like an alarm activity which launches the alarm through the lock screen, accomplished via

getWindow().addFlags(WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED);
getWindow().addFlags(WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON);

Now, from here I could press the back button to kill the activity, but I also want a press of the lock button to silence the alarm. How would I go about creating a handler for presses of the lock screen button?

View 2 Replies View Related

Android :: Why Return Null When Using FindViewById In Activity To Find And Handle CustomView?

Dec 4, 2009

I wrote CustomView Class, and load it in layout. so i trid to find CustomView using findViewById() in activiy to get handle. but findViewById() was return null.

Written Code is like below:

CODE:.........

MapCanvas.java:

CODE:...............

View 2 Replies View Related

Android :: Application Threads Vs Service Threads

Apr 13, 2010

What are the advantages/disadvantages in placing a lengthy network access code in a thread in an activity or a thread in a service? How would it affect the application? I am writing a streaming audio player and from what I've read so far putting the code in a service will still end up blocking the application so a new thread is needed, does anyone know if it makes more sense to put this piece of code in a service.

View 1 Replies View Related

Android :: No Activity Found To Handle Intent - Act - Android.accounts.AccountAuthenticator

Jun 28, 2010

I'm trying to have my app display my login activity when a user selects add account in accounts&sync or wants to use the app and isn't logged in yet. I've followed the example SampleSyncAdapter fairly closely, but can't get it to work.

In my auth service:

CODE:........

In my manifest:

CODE:........

In my main activity:

CODE:.......

I've tried doing both

CODE:.......

And

CODE:............

Before the startActivity() call, but it still can't find an activity for that intent. If I try to add an account via accounts&sync the app crashes with the same ActivityNotFoundException.

I've examined c99's last.fm app, which defines a custom action and uses intents based on that action rather than android.accounts.AccountManager.ACTION_AUTHENTICATOR_INTENT. Is that a better approach? Is there a way to make it work with Accounts & Sync?

View 1 Replies View Related

Android :: Adding To LinearLayout Another Layout And Handle This Layout In Separate Activity

May 6, 2010

I have an Activity which uses a layout with a LinearLayout in it. Now I want to create in runtime a subactivity which loads some other layout and add this layout as item of my LinearLatout.

View 1 Replies View Related

Android :: Activity In Background ?

Nov 19, 2010

Is there a way to 'preload' a user interfaces but to not display it until I am ready?

I have a service which has a receiver to listen for action_screen_on to occur. When that occurs, I would like to load an activity. However, as it is now, it takes about 1 second to load. I would like to preload the layout in advance so that when the screen is turned on the layout loads as soon as possible.

View 2 Replies View Related

Android :: Want To Change Background Of Activity

Jun 23, 2010

How to change background of activity and background of the application name at the top of your activity?

View 2 Replies View Related

Android :: Activity Background Becoming Black

Nov 19, 2010

i have set the background of an activity with a green gradient png image.This working fine almost always but some times during navigating to an activity its background is becoming black! i am not able to reproduce it with any specific operation, also not getting how to debug or fix it.

View 3 Replies View Related

Android :: Activity Background Processing

Apr 17, 2010

"Note that when you write an activity, you can make it stop or continue running when it is moved to the background (see onStop() in Activity Lifecycle). For activities that download data from the network, it's recommended to let them continue downloading so the user can multi-task." As far as I was aware I had to create a service if I wanted to have a background activity such as a media player, internet download, or processing of data in files on the SD card continue when the activity was no longer in the foreground.I went and reread the onStop information on the "Activity Lifecycle" page, which was referred to. But I didn't find any mention of how an activity might continue to run in the background after onStop was called.

View 3 Replies View Related

Android :: How To Detect An Activity Goes Into Background

Aug 5, 2010

I need a way for my Activity to known that it's going into the background, and not when it's getting killed. I thought about hooking at onStop(), but onStop() is called for both cases. In other words, is there a way to tell if when my Activity is moving into the background and not getting killed?

View 2 Replies View Related

Android :: Background Tasks And Activity

Jul 14, 2010

Has anyone any idea on how to solve the generic problems related to starting a task in background from an activity and when the task is finished posting the result to the activity that created ? (the activity might get destroyed in the meantime due to a orientation change ,or receiving a call , or might be in the process of destroying and recreation)

View 2 Replies View Related

Android :: Start An Activity In The Background?

Aug 4, 2010

Is it possible to start an Activity in the background? I need such an Activity that can operate in the background and spawn other Activities as needed in response to user commands issued to my Home Screen widget.

View 1 Replies View Related

Android : Add Background Image To Activity?

Jul 22, 2010

Using theme or ImageView ?

View 2 Replies View Related







Copyrights 2005-15 www.BigResource.com, All rights reserved