すべての着信 SMS メッセージを読み取る必要があるアプリがあります。私は a を書くことによってそれを書きBroadcastReceiver
、インテントをリッスンするように登録しました - android.provider.Telephony.SMS_RECEIVED
。後で、プロセスがフォアグラウンドにある間のみブロードキャストを受信できることに気付きました。
BroadcastReceiver
の Javadoc の提案に従って、私はServicesを見ました。これは有望に見えましたが、メモリが少ない場合はこれでも殺される可能性があります。ユーザーがバックグラウンド プロセスを強制終了できるようにするアプリも見たことがあります。
では、バンドルされた SMS クライアントはどのようにして SMS メッセージを常に受信して保存するのでしょうか?