当前位置: 首页 > 知识库问答 >
问题:

无法在Eclipse项目中的Android10上从uri安装apk

钮勇
2023-03-14

我们正在从文件uri安装apk,它工作到Android Pie(9),在Android10移动中它显示“在解析时出现问题”(There was problem while parsing)。我们只在应用程序存储中存储了文件,构建版本为4.4

我已经分享了下面的代码。多谢好处。

String PATH = Objects.requireNonNull(this.myActivity.getExternalFilesDir(null)).getAbsolutePath();
                 File file = new File(PATH + "/"+Utils.apk_name);
                 intent = new Intent("android.intent.action.VIEW");
                 intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
                 intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
                 Uri uri = FileProvider.getUriForFile(this.myActivity, this.myActivity.getApplicationContext().getPackageName() + ".provider", file);
                 //Intrinsics.checkExpressionValueIsNotNull(uri, "FileProvider.getUriForFi…eProvider.install\", file)");
                 intent.setDataAndType(uri, "application/vnd.android.package-archive");
startActivity(intent);

清单中的提供程序

<provider
        android:name="com.kirubha.helpers.ESEProvider"          
        android:authorities="com.kirubha.provider" 
        android:exported="false"
        android:grantUriPermissions="true">
            <meta-data
            android:name="android.support.FILE_PROVIDER_PATHS"
            android:resource="@xml/provider_paths" />
    </provider>

Provider_Paths

<?xml version="1.0" encoding="utf-8"?>
<paths>
<external-path
    name="external_storage_root"
    path="."/>
</paths>

共有1个答案

殳智志
2023-03-14

我发现我的大多数文件提供商的忧虑消除了当我添加

StrictMode.VmPolicy.Builder buildervm = new StrictMode.VmPolicy.Builder();
StrictMode.setVmPolicy(buildervm.build());

我的主要活动。

以上内容在这个答案中找到,可能对你有用。

Android.os.FileUriExposedException:file:///storage/emulated/0/test.txt通过Intent.GetData()在应用程序之外公开

 类似资料:
  • 我是新的和开始工作的基于项目,但面临一个问题时安装在项目级别(我使用Ide)。 composer安装--无交互--ansi 使用包信息加载composer存储库 从锁文件安装依赖项(包括需要开发) 没有要安装或更新的内容 生成优化的自动加载文件  过程:- 安装composer和wamp服务器 作曲家创建项目laravel/laravel 和项目创建与此错误和没有供应商文件夹创建 安装larave

  • 我想启动一个新的React原生项目,包括SQLite Storagee。 我以前已经做过了,所以我知道它应该能用,但今天不行。。。 因此,我启动了一个新项目,在该项目中,我按照本教程的步骤安装了react原生sqlite存储(https://www.npmjs.com/package/react-native-sqlite-storage),android部分。 一切都很好,直到我运行我的项目反应

  • 我正在尝试使用以下更新站点在新的Eclipse Luna实例(4.4.2)上安装RadRails插件:http://download.aptana.com/tools/radrails/plugin/install/radrails-bundle 但它总是失败,错误如下: 无法完成安装,因为找不到一个或多个必需项。正在安装的软件:Aptana RadRails 2.0.5.1278709071-7

  • 1)错误消息- 无法完成安装,因为找不到一个或多个必需的项目。正在安装的软件:M2e-WTP-Maven Integration for WTP 1.0.1.20130911-1545(org.Eclipse.m2e.WTP.feature.feature.group 1.0.1.20130911-1545)缺少要求:Maven Integration for Eclipse WTP 1.0.1.

  • 我打算在eclipse上安装BIRT 我正在从http://download.eclipse.org/birt/update-site/4.2下载 无法完成安装,因为找不到一个或多个必需的项目。正在安装的软件:Eclipse BIRT示例4.2.2.V201210101433-7T7D7DDZRDKRKELIKJED(org.Eclipse.BIRT.Example.feature.group 4

  • 当我试图在我的VM(虚拟机)上安装TestNG时,出现了一个错误“无法读取http://beust.com/eclipse/content.xml的存储库”。“对等体未通过身份验证” 我尝试了很多解决方案在网上都没有成功。有谁能帮我解决这个问题吗。 Eclipse版本:Kepler Service Release 1构建ID:20130919-0819