我正在努力为我的应用程序提供自动更新。我能够连接到我们的 FTP 服务器,下载 apk 并调用 Android 软件包安装程序。我在安装过程之后列出了其他步骤,例如删除下载的 apk..etc。但是,一旦我调用 Android Package 安装程序,我当前的线程就会退出并抛出以下消息:
“不授予权限 android:permission.INSTALL_PACKAGES 到 package.com.csg.android (protectionLevel =3 flags=0x8be46)”
我需要帮助来解决我遇到的这个问题。发生这种情况的原因以及处理它们的方法?
任何帮助是极大的赞赏。
谢谢,纳文
编辑:
在阅读了我为我的帖子获得的初步评论后,我想我会再次澄清这个问题并添加我正在使用的代码。
这是代码`
File file = new File(getFilesDir(), filename);
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setDataAndType(Uri.fromFile(file),
"application/vnd.android.package-archive");
startActivity(intent);
deleteFiles();
`
是的,我还为 INSTALL_PACKAGES 添加了使用权限标签。
正如我在原始帖子中所说,我能够调用 Package 安装程序,并且我得到了安装提示,并且安装过程成功完成。但是我遇到的问题是我编码的安装后的步骤..即函数deleteFiles()的执行;
我的线程在执行startActivity(intent)时终止,我想它处理控件以打包 Installer 并调用安装过程。当我检查 logcat 日志文件以查看导致线程终止的原因时,我发现了我在上面发布的关于protectionLevel的消息。我希望我现在很清楚。帮助表示赞赏。
是的,我确实在其他帖子中搜索过这个protectionLevel问题,但没有找到任何相关信息。
谢谢, NavinC