インストールされた特定のパッケージから、レシーバーに対するインテントフィルターのアクション名を取得する必要があります。のブロードキャストインテントを受信していandroid.intent.action.PACKAGE_INSTALL
ます。
私はuuid
そのパッケージのを取得しています。しかし、どうすればそのパッケージに配線された受信機の詳細を取得できますか?おそらくPackageManager
またはからPackageInfo
?
インストールされた特定のパッケージから、レシーバーに対するインテントフィルターのアクション名を取得する必要があります。のブロードキャストインテントを受信していandroid.intent.action.PACKAGE_INSTALL
ます。
私はuuid
そのパッケージのを取得しています。しかし、どうすればそのパッケージに配線された受信機の詳細を取得できますか?おそらくPackageManager
またはからPackageInfo
?
パッケージ情報を取得したい場合は、apk をインストールした後。次に、これを使用できます-
<receiver android:name="PackageChangeReceiver">
<intent-filter>
<action android:name="android.intent.action.PACKAGE_ADDED"/>
<data android:scheme="package"/>
</intent-filter>
</receiver>
今あなたの受信機で -
@Override
public void onReceive(Context ctx, Intent intent) {
Log.d(TAG, "The Package Name is " + getPackageName(intent);
}
String getPackageName(Intent intent) {
Uri uri = intent.getData();
String pkg = uri != null ? uri.getSchemeSpecificPart() : null;
return pkg;
}