私はAndroidで着信SMSを処理することが可能であり、私は初心者でもそれを行うことができると思います。しかし、私の質問です:デバイスがロックされているときにもアプリケーションが実行されますか?私は、デバイスがSMSを受信したときにテキストと送信者の電子メールを特定の電子メールアドレスに送信するアプリケーションに取り組んでいます。しかし、デバイスが数分後にロックされても動作する必要がありますか?それを行う最善の方法は何ですか?また、onRecieveメソッドを使用して既に動作していますか?任意のはちょっと役立つと私はプログラミングにはかなり新しいです親切にしてくださいため ありがとう:DAndroid SMSの受信と処理
0
A
答えて
1
それは複雑だ...
とすぐにアプリが一時停止しているよう(つまり、意味:画面に表示されていない)、それをバッテリーを節約したり、CPU/RAMの使用量を減らすためにAndroidシステムによって破壊される可能性があります。 いいえ、アプリがまだ生きているという保証はありません。
BroadcastReceiver
をAndroidManifest.xml
に設定し、アプリでBroadcastReceiver
クラスを作成できます。 onReceive()
メソッドが呼び出され、クラスで設定したコードが実行されます。アプリが現時点では実行されていない場合でも、SMSが受信されます。
しかし、別の問題があります。深い眠りです。バッテリーを節約するために、Androidを長時間使用しないと、バッテリーを必要とするシステムの電源がオフになります。バッテリを大量に消費するシステムには、Wi-Fiとデータがあります。 SMSはこのリストから除外されます(ただし、ディープスリープ時にSMS受信を無効にするオプションが含まれている場合があります。このオプションでは、Deep sleepでSMS受信を無効にしないよう警告します)。
これは、onReceive()
メソッドの実装が十分でないことを意味します。 Wi-Fiとデータを有効にするためにデバイスを起動して、電子メールを送信する必要があります。
この問題を回避するには、WakefulBroadcastReceiver
を延長してください。これは "通常の"ブロードキャストレシーバーと似ていますが、デバイスを起動し、コードが完全に実行されたときに再びスリープさせます。
関連する問題
- 1. wp7 sms受信とSMSインターセプタを送信
- 2. Androidの空のSMS受信トレイ(タブレット)
- 3. AndroidのSMS送信制限ポップアップを処理しますか?
- 4. Android:電話の再起動後のSMSメッセージの受信と受信
- 5. SMSが受信できない(Java android)
- 6. Android - 長いSMS(マルチパート)を受信
- 7. android - SMS受信ブロードキャスト受信者が中止されました
- 8. SOAPメッセージの受信と処理
- 9. PHP受信Webhook処理
- 10. パケット送信/受信の処理方法
- 11. Javaマルチキャスト受信データと並列処理
- 12. アプリがバックグラウンドのときにSMSを受信するAndroidサービス
- 13. コードネームワンSMSブロードキャスト受信者とサービス
- 14. 送信済みSMSメッセージのAndroid放送受信機?
- 15. 受信データのソケットを処理するためのandroid sulotion
- 16. SMSの受信時に返信SMSを送信するには?
- 17. SMSのアンドロイド受信機能
- 18. J2MEモバイルアプリケーションのSMS受信ポート
- 19. SMS受信トレイへのアクセス
- 20. 受信SMSを既読のSMSアプリケーションとしてマークする
- 21. アスタリスクをSMS受信センターとして
- 22. SMSを送受信する
- 23. SMSを受信する
- 24. SIMからSMSを受信
- 25. アスタリスクsipでSMSを受信
- 26. Arduino gsm SMSを受信
- 27. ポートからSMSを受信
- 28. BroadCastReceiver Force Close for SMS受信
- 29. SMSを受信するj2me
- 30. 電話機でのSMS受信形式
すべての情報をありがとう!私を助けてくれて、本当にありがとう!私は自分のビジネスのためだけにこのアプリが必要なので、私は電話で設定をすることができますが、私は必要でした。だから私は深い眠りのSMS受信を無効にしません。 WakefulBroadcastReceiverがこの作業を適切に行うためには、私はあなたにすべきことが正しいのですか? –
それは正しいです。 'WakefulBroadcastReceiver'を拡張して、あなたのコードを 'onReceive()'メソッドの中に入れてください。 – doubotis
素晴らしい、もう一度感謝:) –