Tuesday, March 12, 2013

[android-developers] Re: Broadcast receiver in foreground activity - not reliable?

Not sure what's going on then... i suggest you add some logging to your activity and receiver and try to see what goes wrong... i'm guessing that when the app is in the foreground a different intent is being sent (maybe because they exit the car mode differently). Not familiar with these situations,.sorry :)

On Tuesday, March 12, 2013 2:37:35 AM UTC+2, lbendlin wrote:
It is registered in onCreate and unregistered in onDestroy of that activity.

On Monday, March 11, 2013 4:02:36 AM UTC-4, Piren wrote:
in what lifecycle events do you register/unregister this receiver?



On Sunday, March 10, 2013 4:25:37 PM UTC+2, lbendlin wrote:
I got a user reporting that our app does correctly terminate when the user's device exits car mode, but only when the activity that contains the receiver is not active. If the activity is in the foreground then more often than not our app does not terminate.

The activity is defined as

       <activity

            android:name=".MainScreen"

            android:alwaysRetainTaskState="true"

            android:configChanges="orientation"

            android:label="@string/app_name"

            android:launchMode="singleTask" >

            <intent-filter>

                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />

                <category android:name="android.intent.category.CAR_DOCK" />

                <category android:name="android.intent.category.CAR_MODE" />

            </intent-filter>

        </activity>



The receiver is very simple


private BroadcastReceiver undockReceiver = new BroadcastReceiver() {

@Override

public void onReceive(Context context, Intent intent) {

    if (intent.getAction().equals("android.app.action.EXIT_CAR_MODE")) {

    finish();

    }

}

    };


Is there a reason that the receiver does not work reliably?  Is it bad practice to put a receiver inside the main activity? or does it have to do with the activity flags?

--
--
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+unsubscribe@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 unsubscribe from this group and stop receiving emails from it, send an email to android-developers+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.
 
 

No comments:

Post a Comment