gpt4 book ai didi

android - 我们可以从 ContentProvider 安装 APK 吗?

转载 作者:IT王子 更新时间:2023-10-28 23:54:57 32 4
gpt4 key购买 nike

我正在处理 a library to allow apps to self-update ,适用于那些在 Android Market 之外分发的产品。

我最初的计划是包含将 APK 文件下载到内部存储的代码,然后通过 ContentProvider 从那里安装它和 content:// Uri .但是,当我尝试这样做时,安装程​​序系统向 LogCat 转储了“Skipping dir:”警告并且未能实际安装它。一旦我切换到将 APK 下载到外部存储并使用 file:// UriACTION_VIEW安装程序 Intent ,成功了。

“跳过目录:”消息似乎是由 parsePackage() 记录的在 PackageParser ,这似乎假设它正在使用 File .这表明我们不能使用 content:// Uri值(value)观。

有没有人成功使用过ACTION_VIEWapplication/vnd.android.package-archive Intentcontent:// Uri ?如果是这样,在设置 ContentProvider 时是否有一些特定的技巧?这让它工作了吗?

谢谢!

最佳答案

ACTION_INSTALL_PACKAGE 的文档不正确。它也只会接受文件。

因此,我唯一的建议是在应用程序文件区域中创建该文件的副本,使其全局可读,并在以后清理所有剩余文件。

Previous incorrect answer: In 4.0 and above there is a ACTION_INSTALL_PACKAGE which will accept a content:// URI (JavaDoc), but, prior to that, you're limited to installing via ACTION_VIEW which does assume the URI passed is a file:// URI.

关于android - 我们可以从 ContentProvider 安装 APK 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9637629/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com