Java 移除应用程序时未调用onReceive方法,并且我以正确的方式编写代码
我将android.intent.action.PACKAGE作为action添加到 这是我的听筒Java 移除应用程序时未调用onReceive方法,并且我以正确的方式编写代码,java,android,Java,Android,我将android.intent.action.PACKAGE作为action添加到 这是我的听筒 <receiver android:name=".MyBroadcastReceiver" android:enabled="true" android:exported="true"> <intent-filter> <action android:name="android.intent.action.PAC
<receiver android:name=".MyBroadcastReceiver" android:enabled="true" android:exported="true">
<intent-filter>
<action android:name="android.intent.action.PACKAGE_FULLY_REMOVED"/>
<data android:scheme="package"/>
</intent-filter>
</receiver>
因此,我想通知您,当应用程序从设备上删除但不工作时,您无法在您的所有软件包上收听android.intent.action.PACKAGE\u完全删除/android.intent.action.PACKAGE\u删除,因为当您的软件包被删除时,您自己的
BroadcastReceiver
将被删除。此接收器是否在您的软件包中正在删除?当app removed@TKKA receiver在一个已删除的包中时必须调用yes,显然永远不会调用它。此事件用于在删除包时通知其他应用程序,例如,启动器可以删除图标。噢,谢谢,因此此接收器不支持删除我的应用程序,所以我必须添加什么操作才能知道我的应用程序将被删除?您不能。这可以做到这一点,但它被认为是一个安全风险,据报道谷歌正在努力修复它早在2012年。所以没有其他方法可以做到这一点?
public class MyBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(context,"app Removed",Toast.LENGTH_LONG).show();
Log.e("MyBroadcastReceiver","app Removed");
}
}