基本的に、関連するアプリのファミリを更新および起動するためのカスタム アプリ ストアであるアプリを実装しました。また、それ自体を更新する必要がありますが、これは機能しますが、インストール プロセス中にアプリが警告なしに強制終了されます。この場合、ユーザーが更新後すぐに引き続き使用できるように、アプリを自動的に再起動したいと考えています。
そこで、最初のアプリのパッケージ名のパッケージ イベントをリッスンし、新しいアクティビティを開始するブロードキャスト レシーバーを 1 つだけ含む別のアプリケーションを作成しました。そのレシーバーは決して呼び出されません:
<application android:icon="@drawable/ic_launcher"
android:label="@string/app_name">
<receiver android:name=".AppUpdateReceiver">
<intent-filter>
<action android:name="android.intent.action.PACKAGE_REPLACED"/>
<action android:name="android.intent.action.PACKAGE_ADDED"/>
<action android:name="android.intent.action.PACKAGE_INSTALL"/>
<data android:scheme="package" />
</intent-filter>
</receiver>
同様の実装を探していると、レシーバーのみを持つアプリケーションが実行されるかどうか、およびアプリケーションがまだ実行されていない場合にレシーバーが呼び出されるかどうかについて、直接矛盾する情報を見てきました。レシーバーのみを含むアプリケーションのコード例に出くわしたこともあり、マニフェストは私のものと非常によく似ています。別のパッケージがインストールされるたびにレシーバーが呼び出されるようにするには、このアプリケーションで何が必要でしょうか?
より良い解決策があれば、それを聞いてうれしいです。