1

私のアプリケーションは2つの方法で起動できます。1.手動起動。(ランチャーメニューからランチャーアイコンをクリックすることにより)2。自動起動(USBケーブルをデバイスに接続することにより)

アプリケーションは2つの方法で終了できます。1.手動仕上げ(戻るボタンを押す)2。自動仕上げ(USBケーブルを外す)

放送受信機を作成しましたが、USBケーブルを接続するとアプリケーションが起動します。"android.intent.action.ACTION_POWER_DISCONNECTED"これで、アクティビティ自体にアクションを登録して、アクティビティを終了し ます。正常に動作しています。私の問題は、ロック状態のデバイスが終了していないときに、ユーザーがUSBケーブルを外した場合です。アクティビティに書き込まれたブロードキャストレシーバーはアクションを受信できませんが、ブロードキャストレシーバーでアクションを受信できます。放送受信機からの活動を終了できません。

私がやっていることは、ブロードキャストレシーバーでブール変数をtrueにし、アクティビティのonResume()をチェックインし、onResume()からアクティビティを終了しようとしています。また、動作していません。解決策はありますか?

4

1 に答える 1

1

現在修正されています。onResume()でレシーバーを登録し、onPause()で登録を解除していました。そのため、デバイスがロックされた状態のときにUSBケーブルを切断するアクションは発生しません。これは、ユーザーがデバイスをロックすると、アプリケーションがonPause()に移動するためです。今、私はそれをonCreate()に登録し、onDestroy()から登録を解除しているので、動作しています。乾杯!!!

于 2012-07-25T06:03:53.257 に答える