Android 从API 21开始,安装非市场应用程序已被弃用,有什么替代方案?
我需要在API 23和API 24上检查选项INSTALL_NON_MARKET_应用程序。那么,这些API的替代方案是什么呢 当前正在使用此Android 从API 21开始,安装非市场应用程序已被弃用,有什么替代方案?,android,settings,android-settings,Android,Settings,Android Settings,我需要在API 23和API 24上检查选项INSTALL_NON_MARKET_应用程序。那么,这些API的替代方案是什么呢 当前正在使用此 boolean isNonPlayAppAllowed = false; try { isNonPlayAppAllowed = Settings.Global.getInt(null, Settings.Global.INSTALL_NON_MARKET_APPS, 0) == 1;
boolean isNonPlayAppAllowed = false;
try {
isNonPlayAppAllowed = Settings.Global.getInt(null, Settings.Global.INSTALL_NON_MARKET_APPS, 0) == 1;
} catch (Exception e) {
e.printStackTrace();
}
在Karan Mer回答后编辑:
使用canRequestPackageInstalls()我收到消息“调用需要API级别26”,我需要API 23和API 24。您需要使用
PackageManager
中的canRequestPackageInstalls()
而不是文档中提到的安装非市场应用程序
公共抽象布尔canRequestPackageInstalls()
检查是否允许调用包请求包
通过软件包安装程序安装。我们鼓励应用程序称之为
API,然后通过intent启动包安装程序
Intent.ACTION\u安装程序包。从Android O开始,用户可以
明确选择他们信任哪些外部源来安装应用程序
这个装置。如果此API返回false,则安装请求将被删除
被软件包安装程序阻止,将向用户显示一个对话框
用户可以选择启动设置以更改其首选项。一
应用程序必须以Android O或更高版本为目标,并声明权限
Manifest.permission.REQUEST_安装_包以使用此API
可能重复:可能重复使用canRequestPackageInstalls()我收到一条消息“调用需要API级别26”,我需要API 23和API 24。从API 21到24,您可以使用设置。安全。安装非市场应用程序
看起来它在24年前是未经预测和弃用的。