Intent.ACTION_USER_PRESENT not received on HoneyComb or ICS devices (Samsung)

I have BackgroundReceiverto get android.intent.action.USER_PRESENTin the manifest file according to:

    <receiver android:name="com.demo.MyBroadcastReceiver">
        <intent-filter>
            <action android:name="android.intent.action.USER_PRESENT" />
        </intent-filter>
    </receiver>

My overridden method is onReceive(Context, Intent)very simple:

@Override
public void onReceive(Context context, Intent intent)
{
    if (intent != null)
    {

        if (Intent.ACTION_USER_PRESENT.equals(intent.getAction())
        {
            // wrapper for Log.d(String, String)
            Dbug.log("MyBroadcastReceiver: [" + intent.getAction() + "]");

            // this calls a service
            serviceExample(context, intent);
        }
    }
}

  • This has been well tested on devices 2.1, 2.2 and 2.3 (HTC Desire, HTC Wildfire, Motorola Razr).
  • This does not seem to work on HoneyComb (Samsung Galaxy Tab 10.1) or ICS (Samsung Galaxy Nexus) devices.
  • In accordance with this error ( USER_PRESENT never works on cells and ICS when the key lock is disabled ), I set the key lock on the failed devices. It did not help.

Questions:

  • Is there any trick to using these intentional actions on Android 3.x and 4.x?
  • , Samsung?
  • , , , ?
+5
1

ubuntudroid ( Android ), , , .

, Android 3.0.

, , .

+2

All Articles