デバイスの再起動時にアプリケーションが SMS を送信します。バックグラウンド サービスで SMS を介してデバイスの現在位置を送信します。バックグラウンド アプリケーションを有効または無効にする選択肢をユーザーに提供したいと考えています。その方法は?
4 に答える
これについては、次の 2 つの簡単な方法を考えることができます。
1) 受信機がブロードキャストを無視または受け入れるようにチェックできるフラグを設定します。フラグの有効化/無効化についてはまったく心配する必要はありません。
2)BroadcastReceiverをプログラムで作成し(内部クラスにすることができます)、アプリケーションの特定の部分で必要に応じて登録および登録解除します。
一般に、BroadcastReceivers を XML ではなくコードで定義すると、柔軟性が大幅に向上し、一般的に管理が容易になることがわかりました。
よろしく-サティア
共有優先プリザーバーの有効化および無効化状態を使用します。
ブート レシーバー (ブート完了イベントをリッスンするブロードキャスト レシーバー) を登録/登録解除するか、ブート レシーバーの共有優先値を読み取り、それに応じて何も送信/実行しません。
if をサービスに入れる 有効な場合はサービスを実行する 無効にした場合はサービスを実行する サービスを有効または無効にするボタンをアプリに配置する 共有設定を使用して、ブール値でユーザーの選択を記憶することができます
サービスクラスを開発する必要があると思います。ユーザーが有効を選択した場合にのみ開始します。
ユーザーが enable を選択した場合:(サービス開始のサンプル コード) {
intent = new Intent(TrackActivity.this, TrackService.class);
intent.putExtra("IN_TRACKID", currentTrackId);
intent.putExtra("IN_TRACK_TYPE",IN_TRACK_TYPE);
startService(intent);
}