NativeiOS・AndroidWEBAWSその他0120-614-750資料請求ご相談はこちら03-4566-3070資料請求ご相談はこちらホームiOS・AndroidAndroid端末起動時にアプリを強制起動するサイト管理者iOS・AndroidAndroidKotlinAndroid端末起動時にアプリを強制起動するiOS・Android2022.01.26この記事は約5分で読めます。こんにちは!一般的なアプリでは使われないと思いますが、業務端末などでデバイスを再起動した後にホーム画面を開いたときに特定の業務アプリケーションが起動する設定について紹介します。Kotlin経験1ヶ月のペーペーのため、間違いがあれば優しくご指摘お願い致します。実装内容デバイスが起動されたことをアプリで検知するためには、2つのファイルの作成・変更が必要になります。BroadcastReceiverクラスを継承したクラスの作成AndroidManifestにパーミッションとreceiverの登録まずは1のクラスを作成します。}}解説するとIntentを受け取って、MainActivityを起動するだけのクラスを作成しました。intentやBroadcastReceiverについてはこちらの記事がわかりやすかったです。Recieverとは?BroadcastReceiver(ブロードキャストレシーバー)とは、ブロードキャストしたインテントを受け取る仕組みのことOSのAndroidシステム側...qiita.com次に2のAndroidManifestにパーミンションなどを追記します。</receiver>uses-permissionでアプリに権限を追加します。公式の説明を翻訳すると、システムの起動終了後にブロードキャストされて、ACTION_BOOT_COMPLETEDをアプリが受信できるようにすると書かれています。Developersdeveloper.android.comなので、アプリがシステム起動のアクションを受信できるようになるようです。receiverには先程定義したStartupReceiverクラスを指定して、どのアクションが行われたらStartupReceiverにintentを渡すかを定義しています。今回ですとactionにaction.BOOT_COMPLETEDを指定して、システム起動アクションが行われたらと言うふうに実装しています。ここまで行うとデバイスを再起動して、ホーム画面に遷移するとStartupReceiverクラスの定義したアプリが自動起動するかと思います。最後に以上でAndroidでデバイスの起動後にアプリを強制起動する方法についてです。receiverを使うことでsleep解除やロック画面解除時などのアクションをアプリで受信することができるかもしれないです。ちなみに暗黙的ブロードキャストと明示的ブロードキャストの2種類があり、今回の方法は前者に当たるかと思います。(詳しくは調べていないので違っていたらすみません。)暗黙的ブロードキャストはデバイスの電池寿命やパフォーマンスに影響するため、Android8から規制がかかっているようですが、例外も存在します。restrictions.developer.android.comここに書くと長くなりそうなので、また機会があれば別でまとめようかと思います。