我的A应用,依靠B应用,我想在卸载A应用的时候,连B一块卸载掉,怎么实现 ?(B应用最好是静默卸载)、我目前的做法是,B应用注册一个广播,当A被卸载时,B接受到系统广播,通过B的包名,调用系统卸载模块 Intent intent2 = new Intent(Intent.ACTION_DELETE, Uri.parse("package:" + packageName));
context.startActivity(intent2);
调用系统卸载模块以后,后台总会有Packageinstaller应用在跑,单击图标,将这个应用掉到前台,则提示找不到B应用。
正常卸载应用程序时,PackageInstaller应用图标不会出现在后台,同样的代码在acitivity执行时,也正常。为什么在receiver中却有这个bug呢?求指点,求解决方案。 谢谢!
context.startActivity(intent2);
调用系统卸载模块以后,后台总会有Packageinstaller应用在跑,单击图标,将这个应用掉到前台,则提示找不到B应用。
正常卸载应用程序时,PackageInstaller应用图标不会出现在后台,同样的代码在acitivity执行时,也正常。为什么在receiver中却有这个bug呢?求指点,求解决方案。 谢谢!
解决方案 »
- 共同学习,对invalidate和postInvalidate的理解和理解上的一些问题??
- iMX53 QSB板怎么使用fastboot功能下载镜像到SD卡,我的老是不行!
- android icon 系统图标文件集锦打包,还有其它电子书,源码资源,绝对超值。。。。。。【自己推荐】
- 类似于桌面那样的屏幕切换叫什么效果?
- inPurgeable cannot be resolved or is not a field
- android如何实现多线程
- 请问《光辉之城》里面这样的地图是如何实现的?
- 为什么我的gridview的setOnLongClickListener监听不到呢
- 进入fastboot模式后,电脑连不上手机怎么办
- 请问,应用发了这个广播后,android系统是不是会重启?
- rokon 用LineSprite画直线,不显示
- sqlite类型转换
@Override
public void onCreate(Bundle icicle) {
super.onCreate(icicle);
//get intent information
final Intent intent = getIntent();
Uri packageURI = intent.getData();
String packageName = packageURI.getEncodedSchemeSpecificPart();
if(packageName == null) {
Log.e(TAG, "Invalid package name:"+packageName);
showDialog(DLG_APP_NOT_FOUND);
return;
}packageInstaller源代码的卸载入口activity有这段代码,
你看看log是不是打了Invalid package name:
PackageInstaller应用图标不会出现在后台 不知道你说的啥意思