androidブート自動起動APP及びadb命令テスト方法


Androidブート自動運転APPの実現方式は実はとても簡単です。Androidシステムを実行すると、「android.intent.action.BOOT_」が発行されます。COMPLETED」というシステム放送は、それをモニターして、アプリを開く操作をすればいいです。現在ほとんどのAndroid携帯システムは第三者がインストールしたAPPの起動を黙認しています。システムAPP(system/app)だけがこの権限を黙認しています。ですから、普通は安全センターや携帯電話の執事に行って許可を設定します。ここで余談を言いますが、携帯ソフトは特別な状況を除いて、起動してから起動しないほうがいいです。起動してから、普通はAndroidシステムの端末機に適用されます。起動したらすぐに該当項目を実行します。このマシンにもこの項目しかないです。以下のコードをつけます。
新しいクラスのAutoStartBroadcastReceiverはBroadcastReceiverから集められます。

public class AutoStartBroadcastReceiver extends BroadcastReceiver {

 private static final String ACTION = "android.intent.action.BOOT_COMPLETED";

 @Override
 public void onReceive(Context context, Intent intent) {
  //    
  if (ACTION.equals(intent.getAction())) {
   Intent mainIntent = new Intent(context, MainActivity.class);//MainActivity.calss        ,          service  
   //  BroadcastReceiver   Activity,     FLAG_ACTIVITY_NEW_TASK  
   mainIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
   context.startActivity(mainIntent);
  }
 }
}
Android Manifest.xmlファイルに権限と登録放送を設定します。

<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />

 <receiver android:name=".AutoStartBroadcastReceiver" >
   <intent-filter>
    <action android:name="android.intent.action.BOOT_COMPLETED" />
    <category android:name="android.intent.category.HOME" />
   </intent-filter>
 </receiver>
このようにコードの部分は完成して、テストを行うことができます。私はAndroid 7.0のシミュレータとAndroid 6.0の本物のマシン(妖怪族)でテストしました。予想される機能を実現しました。
次はadbを通じて二つの送信を提供します。COMPLETED"システム放送のコマンド:
1、adb shell am broadcast-a android.intent.action.BOOT_COMPLETED
adb送信システムは、androidデバイスにブロードキャストされる。
2、adb shell am broadcast-a android.intent.action.BOOT_COMPLETED-c android.intent.ctgory.HOME-n component
adb送信システムがandroidデバイスに指定されたコンポーネントにブロードキャストされました。-nの後に接続されているのは、あなたが指定したプロジェクトを受信するために必要なブロードキャストの種類のフルパスです。ほとんどのオンラインで言っているpackagenameではなく、例えば、私のプロジェクトの中では、「comp.android.qrcode/.AustartBroadcastReceiver」です。
以上の二つの命令も全部自分で測って有効です。
このAndroidは起動してからAPPを起動して、adb命令を使ってテスト方法をテストします。つまり、小編集は皆さんに全部の内容を共有します。参考にしてもらいたいです。