从设备中删除任何应用后,我需要我的应用做出反应。按照documentation
ACTION_PACKAGE_FULLY_REMOVED 某些应用可能需要在删除另一个软件包后更新其存储的数据;对于这些应用,没有什么好办法可以注册此广播。
我正在按照那里的请求进行操作,但从未要求接收方执行此操作。请参见下面的代码:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
BroadcastReceiver testeReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
Toast.makeText(context,"App Uninstalled",Toast.LENGTH_LONG).show();
}
};
registerReceiver(testeReceiver,new IntentFilter(Intent.ACTION_PACKAGE_FULLY_REMOVED));
}
任何想法为什么还是更好的方法?
谢谢你们! =)
答案 0 :(得分:0)
您必须将您的接收器注册到manifiedt文件中,因为当该时间卸载任何应用程序时,并不能保证您的接收器已注册并且可以正常工作。
您可以使用元素在清单文件中注册接收器:
<receiver
android:name="YOUR_Receiver_CLASS">
<intent-filter>
<action android:name="YOUR_ACTION"
</intent-filter>
</receiver>