安卓是否正在安装apk?

时间:2018-10-19 13:40:04

标签: android

我的应用程序必须重新安装自己。我设法做到了。但是,我有一个无法解决的问题。

当用户点击安装弹出窗口之外的某个位置并且安装仍在进行时,安装弹出窗口将关闭。问题在于用户可以使用应用程序一段时间,直到由于安装完成而突然关闭应用程序。我想以某种方式避免这种情况。

所以,主要问题是如何检测是否正在进行安装?

为了使事情变得更困难,应用程序是用Qt编写的,设备无法植根。

这是我用来安装应用程序的一段代码。

public static void installApk( Context context )
{
    File file = new File( Environment.getExternalStorageDirectory().toString() + "/myApk.apk" );
    Uri fileUri = FileProvider.getUriForFile( context, context.getPackageName() + ".provider", file );
    Intent intent = new Intent( Intent.ACTION_VIEW, fileUri );
    intent.putExtra( Intent.EXTRA_NOT_UNKNOWN_SOURCE, true );
    intent.setDataAndType( fileUri, "application/vnd.android.package-archive" );
    intent.setFlags( Intent.FLAG_ACTIVITY_CLEAR_TASK | Intent.FLAG_ACTIVITY_NEW_TASK );
    intent.addFlags( Intent.FLAG_GRANT_READ_URI_PERMISSION );
    context.startActivity(intent);
}

1 个答案:

答案 0 :(得分:0)

安装APK意味着卸载您的应用程序,然后再次安装它,这就是您的应用程序关闭的原因。您无法阻止这种行为