以编程方式更新APK会每隔两次跳过应用安装

时间:2018-10-09 16:50:46

标签: java android apk

我有一个创建意图并要求用户更新APK的应用。

    // Fetch file from updates folder and install
    File directory = BreakfastApp.getConfigFile(BreakfastApp.APP_UPDATES_DIRECTORY);
    File installFile = new File(directory, BreakfastApp.APP_UPDATE_FILE);
    LOG.debug(installFile.getAbsolutePath());

    Intent intent = new Intent(Intent.ACTION_INSTALL_PACKAGE);
    intent.setData(FileProvider.getUriForFile(requireActivity(), getContext().getApplicationContext().getPackageName(), installFile));
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_GRANT_READ_URI_PERMISSION);
    startActivity(intent);
    requireActivity().finish();

现在,此代码可在其他所有安装中正常运行。这是可重复的。一旦我的代码发出调用,它将显示弹出窗口以安装该应用程序,然后显示“已安装应用程序”,并要求用户打开或单击“完成”。如果我再次降级该应用程序并重试,它将跳过安装弹出窗口,并直接转到“已安装应用程序”,然后单击“完成并打开”。如果我单击“打开”,然后重试,它将再次起作用。

想知道是否有人知道为什么会发生这种情况。 附言这适用于Nougat及更高版本,但在更新至Android 24+之前,我遇到了类似的问题。 P.S.S.我已授予以下权限,并向

添加了我想提供的内容

0 个答案:

没有答案