application (non-wanted) behavior -
BUT - instead of the original instance, new instance is started (e.g. in the newest instance is missing the original text; when the latest instance is closed there is still the original instance with original text ) .
the code of the notification method
Context context = getApplicationContext(); CharSequence contentTitle = "someText1"; CharSequence contentText = "someText2"; Intent notifyIntent = new Intent(Intent.ACTION_MAIN); notifyIntent.setClass(getApplicationContext(), RadioStream.class); PendingIntent intent = PendingIntent.getActivity(RadioStream.this, 0, notifyIntent, 0); notifyDetails.setLatestEventInfo(context, contentTitle, contentText, intent); mNotificationManager.notify(SIMPLE_NOTFICATION_ID, notifyDetails);
i have also in the manifest xml file following tag
android:launchMode="singleTask"
but it is still the same... The main problem is double/triple initialization of the application, i know that there are other means to preserve the values in resumed applications. Also it is needed that the applications stays running in background as the main functionality is the streaming of internet radio.
What is missing in the code ? What kind of information from my side is missing for to troubleshoot the issue ?
Thanks!
Dav
Build and issue the notification: Create an Intent that starts the Activity . Set the Activity to start in a new, empty task by calling setFlags() with the flags FLAG_ACTIVITY_NEW_TASK and FLAG_ACTIVITY_CLEAR_TASK . Create a PendingIntent by calling getActivity() .
Activity instances are always created by the Android system. This is because a lot of initializations have to be done for the activity to work. To create a new activity you call startActivity with an Intent describing the activity to start. To add more to this answer.
An Activity represents a single screen in an app. You can start a new instance of an Activity by passing an Intent to startActivity() .
What you refer as "application" is most probably an Activity. To avoid re-crating it when bringing up to front, use
android:launchMode="singleTop"
To have some code running background, you need to realize it as Service
Another option is to use setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP)
on your Intent
.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With