安装未知应用权限界面只显示当前应用

小弟初入Android开发,第一个Android项目中遇到一个问题:跳转“安装未知应用权限界面”时,发现不知如何才能做到只显示当前应用的选项,其他应用的设置项不要显示出来,不然太多了用户都很难找,

以下这张图是目前跳转到“安装未知应用权限界面”,跳转后显示了所有的应用设置项,都不好找当前应用的设置项

以下是小弟跳转“未知应用权限界面”的代码

/**
* 开启设置安装未知来源应用权限界面
*
* @param context
*/

public static void startInstallPermissionSettingActivity(Context context) {

if (context == ) {

return;

}

Intent intent = new Intent();

if (Build.VERSION.SDK_INT >= 26) {

intent.setAction(android.provider.Settings.ACTION_MANAGE_UNKNOWN_APP_SOURCES);

}else {

intent.setAction(android.provider.Settings.ACTION_SECURITY_SETTINGS);

}

((Activity) context).startActivityForResult(intent, REQUEST_CODE_INSTALL_SETTING_UNKNOW_APP);

ToastUtils.showLong("请开启未知应用安装权限");

}
以下是小弟后来在度娘上找到的解决方案:

先贴出答案来源,感谢以下那位助我找到答案的大神,也分享给各位可能跟我一样遇到问题的朋友:

https://blog.csdn.net/feibendexiaoma/article/details/80093354

以下便是本人的修改后的效果图和代码

效果图:

修改后的代码:

/**
* 开启设置安装未知来源应用权限界面
*
* @param context
*/
public static void startInstallPermissionSettingActivity(Context context) {
if (context == ) {
return;
}
Intent intent = new Intent();
//获取当前apk包URI,并设置到intent中(这一步设置,可让“未知应用权限设置界面”只显示当前应用的设置项)
Uri packageURI = Uri.parse("package:"+context.getPackageName());
intent.setData(packageURI);
//设置不同版本跳转未知应用的动作
if (Build.VERSION.SDK_INT >= 26) {
//intent = new Intent(android.provider.Settings.ACTION_MANAGE_UNKNOWN_APP_SOURCES,packageURI);
intent.setAction(android.provider.Settings.ACTION_MANAGE_UNKNOWN_APP_SOURCES);
}else {
intent.setAction(android.provider.Settings.ACTION_SECURITY_SETTINGS);
}
((Activity) context).startActivityForResult(intent, REQUEST_CODE_INSTALL_SETTING_UNKNOW_APP);
ToastUtils.showLong("请开启未知应用安装权限");
}

---------------------
作者:qq_37491165
来源:CSDN
原文:https://blog.csdn.net/qq_37491165/article/details/86749108
版权声明:本文为博主原创文章,转载请附上博文链接!转载请注明出处:

转载自http://lxfamn.cn/blog

未经允许不得转载:lxfamn » 安装未知应用权限界面只显示当前应用

赞 (0) 打赏

置顶推荐

评论 0

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏