博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android 编程下如何获取有 Internet 访问权限的应用
阅读量:6858 次
发布时间:2019-06-26

本文共 1229 字,大约阅读时间需要 4 分钟。

应用程序在运行过程中所需要的权限是被写在应用的 AndroidManifest.xml 下的,在 Android 中这些信息是被封装在 PackageInfo 中的,所以要获取权限的信息,我们就需要先获取到 PackageManager ,再通过 PackageManager  获取指定条件的 PackageInfo  信息,通过比对 PackageInfo 所携带的权限信息来判断对应的应用是否具有 Internet 的权限,判断应用是否具有其他权限同理。实现代码如下:

public void getInternetAppInfos() {   /************************ 获取包管理器 *************************/   PackageManager manager = getPackageManager();   /** 获取未被卸载同时在清单文件中设置了 
的包信息 **/ List
packageInfos = manager.getInstalledPackages(PackageManager.GET_UNINSTALLED_PACKAGES | PackageManager.GET_PERMISSIONS); /****** 遍历获取包信息及包信息中包含的
信息 *****/ for (PackageInfo info : packageInfos) { String[] permissions = info.requestedPermissions; if (permissions != null) { for (String permission : permissions) { if (permission.equals(Manifest.permission.INTERNET)) { ApplicationInfo appInfo = info.applicationInfo; String appname = appInfo.loadLabel(manager).toString(); String packageName = appInfo.packageName; int uid = appInfo.uid; System.out.println(appname + ":" + packageName + ":" + uid); } } } }}

 

转载地址:http://lvjyl.baihongyu.com/

你可能感兴趣的文章
【转】微软教学:三种方法屏蔽Win7/Win8.1升级Win10推送
查看>>
【原创】pads layout 画多边形copper,出现Self-Intersecting Polygon,解决办法
查看>>
使用docker打造spark集群
查看>>
在rem布局下使用背景图片以及sprite
查看>>
JAVA设计模式之【抽象工厂模式】
查看>>
数字电视的电子节目指南(EPG)及其系统
查看>>
11 复用与多址
查看>>
附录A 编译安装Hadoop
查看>>
android studio building project info 错误
查看>>
【Scala】Scala之Control Structures
查看>>
vue学习笔记(一)——why Vue
查看>>
在Linux里环境变量设置的方法(export PATH)
查看>>
三星手机拍照,从图库选择照片旋转问题完美解决
查看>>
算法笔记_173:历届试题 斐波那契(Java)
查看>>
菜鸟版JAVA设计模式—外观模式
查看>>
EasyUI----动态拼接EasyUI控件
查看>>
PHP session 跨子域问题总结 ini_set('session.cookie_domain', ".domain.com")
查看>>
Office WPS如何在页眉页脚添加一条横线
查看>>
珠海鼎芯(D-Chip)IMX6读取CPU的UID的方法【转】
查看>>
站在 Android 开发的角度,聊聊 Airbnb 的 Lottie!!!
查看>>