-1
特定のSMSの受信時に何かを行うアプリケーションを作成しています。すべてが問題ありませんが、キーガードロックやその他のロックがある場合、SMS送信サービスは機能していません。すべてのロックを無効にしてからSMSを送信してから、再度電話をロックする必要があります。それはどうやって行なわれるのですか?私は電話がロックされていたり、キーガードされていても、アクティビティからSMSを送信する方法
mKeyGuardManager = (KeyguardManager) getSystemService(KEYGUARD_SERVICE);
mLock = mKeyGuardManager.newKeyguardLock("Locationlistener");
mLock.disableKeyguard();
で試してみましたし、その後
mKeyGuardManager = (KeyguardManager) getSystemService(KEYGUARD_SERVICE);
mLock = mKeyGuardManager.newKeyguardLock("Locationlistener");
mLock.reenableKeyguard();
を再度有効にすることを試みたが、そのは、キーガードのロックを解除してからキーガードが再び現れることはなかったです。パターンロックのためにも機能しません。
実際には、電話機がロックされていて特定のSMSが受信されたとき、最初のアクティビティは正しく呼び出されますが、(結果として)呼び出される2番目のアクティビティはonPause()のケースでコードを実行するため、SMSが送信されないのはこのためです。 –
問題は、場所を検出する作業を行うサービスの代わりにアクティビティを使用していると思います。この問題を克服する方法はありますか?アプリケーションを使用しないで、アプリケーションを削除したり、サービスを使用したりするのは難しい作業です。 –
IntentServiceを使用する必要があります。 – PravinCG