之前的打开方式:
Intent intent = new Intent();
intent.setAction(android.content.Intent.ACTION_VIEW);
String type = getMIMEType(myTempFile);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setDataAndType(Uri.fromFile(myTempFile), type);
activity.startActivityForResult(intent, 1);
dialog.dismiss();
activity.finish();现在的打开方式:
Intent intent = new Intent();
intent.setAction(android.content.Intent.ACTION_VIEW);
String type = getMIMEType(myTempFile);
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setDataAndType(Uri.fromFile(myTempFile), type);
intent.setClassName("com.android.packageinstaller", "com.android.packageinstaller.PackageInstallerActivity");
activity.startActivityForResult(intent, 1);
dialog.dismiss();
activity.finish();只加了一条intent.setClassName("com.android.packageinstaller", "com.android.packageinstaller.PackageInstallerActivity");
用户中可以打开.apk文件的有很多应用,你不能让傻逼的用户知道这时候该怎么处理,所以就在代码中指定由系统安装器打开就好。
其实只要在startActivity之前设置一下,直接指定用什么安装就好,如果那些手机连系统安装器都没有了,我觉得太奇葩就不用管了
后续把更新直接定义到蒲公英的链接,更新时调用浏览器打开,规避了在自己app中下载的问题.即省代码,又少了上线的操作.以及各种问题.完美
本文介绍了两种在Android系统中打开APK文件的方法,并对比了它们的区别。通过直接指定使用系统安装器进行安装,可以避免让用户选择应用的问题,简化安装流程。
765

被折叠的 条评论
为什么被折叠?



