0

アクティビティを開くのが仕事のブロードキャストレシーバーがあります。(具体的には、特定の SMS を受信したとき)。電話の電源を入れて使用すると、うまく機能します。
しかし、私の電話がスリープモードになっているときは何も起こりません。
電話を WAKEUP し、SCREEN LOCK (ある場合) を解除して Activity を開くには、放送受信機にコードを追加する必要がありますか?
または、より良い解決策はありますか?

これは、ブロードキャスト レシーバーの onReceive 関数に関連するコードです。

    //Create a new PendingIntent and add it to the AlarmManager
Intent intent = new Intent(context, Alarm.class);
intent.putExtra("coordinates", coordinates);
PendingIntent pendingIntent = PendingIntent.getActivity(context,
    0, intent, PendingIntent.FLAG_ONE_SHOT);
AlarmManager am = (AlarmManager)context.getSystemService(Activity.ALARM_SERVICE);
am.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis() + 100, pendingIntent);
4

1 に答える 1

1

これを行うには、WakeLock を使用する必要があります。

この特定のチュートリアルはこれで私を助けました: http://it-ride.blogspot.com/2010/10/android-implementing-notification.html

特にウェイクロックに関する別のより良いチュートリアル: https://github.com/commonsguy/cwac-wakeful

于 2012-10-21T13:12:09.573 に答える