私が持っているハニカムまたはICS(サムスン)デバイス上で受信されませんあたりとしてマニフェストファイルにandroid.intent.action.USER_PRESENT
を受信するように設定BackgroundReceiver
:Intent.ACTION_USER_PRESENTは
<receiver android:name="com.demo.MyBroadcastReceiver">
<intent-filter>
<action android:name="android.intent.action.USER_PRESENT" />
</intent-filter>
</receiver>
マイ上書きonReceive(Context, Intent)
方法は非常に簡単です:
@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);
}
}
}
- これは2.1、2.2 & 2に完全にテストされています。 3デバイス(HTC Desire、HTC WildFire、Motorola Razr)
- これはHoneyComb(Samsung Galaxy Tab 10.1)またはICS(Samsung Galaxy Nexus)デバイスでは機能していないようです。
- このバグ(USER_PRESENT never fires on honeycomb and ICS when keyguard is disabled)によると、私は失敗したデバイスにキーガードを設定しました。それは助けになりませんでした。
質問:
- のAndroid 3.xの& 4.xの上にこれらの目的のアクションを使用するいくつかのトリックはありますか?
- おそらくこれはSamsungのよく知られた問題ですか?
- これらのデバイスで無視されているデバイス設定がありますか?
この質問は次のことを意味しています:[front to android.intent.action.USER_PRESENTにタスクを持ち込む](http://stackoverflow.com/questions/8750854/bring-task-to-front-on-android- intent-action-user-present) –