0

受信者コードを持っています

    BroadcastReceiver pkgRemoveReceiver = new BroadcastReceiver() {
        @Override
        public void onReceive(Context context, Intent intent) {
            // do my stuff
        }
    };
    IntentFilter filter = new IntentFilter();
    filter.addAction(Intent.ACTION_PACKAGE_REMOVED);
    registerReceiver(pkgRemoveReceiver, filter);

そのため、アプリがデバイスから削除されるたびに、私は帳簿をつけなければなりません。ただし、ブロードキャストを受信できません。上記のコードに問題はありますか?

どうも!ラフル。

4

1 に答える 1

4

次のように試してください:

   IntentFilter filter = new IntentFilter();
   filter.addAction(Intent.ACTION_PACKAGE_REMOVED);
   filter.addDataScheme("package"); // add addDataScheme
   registerReceiver(pkgRemoveReceiver, filter);

   BroadcastReceiver pkgRemoveReceiver = new BroadcastReceiver() {
    @Override
    public void onReceive(Context context, Intent intent) {
        // do my stuff
        if (Intent.ACTION_PACKAGE_REMOVED.equals(action)) {
             Toast.makeText(context, "ACTION_PACKAGE_REMOVED", Toast.LENGTH_LONG).show();
           }
    }
};
于 2012-08-29T16:42:05.283 に答える