zoukankan      html  css  js  c++  java
  • Android 编程下如何获取有 Internet 访问权限的应用

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

    public void getInternetAppInfos() {
    
       /************************ 获取包管理器 *************************/
       PackageManager manager = getPackageManager();
    
       /** 获取未被卸载同时在清单文件中设置了 <uses-permission> 的包信息 **/
       List<PackageInfo> packageInfos = manager.getInstalledPackages(PackageManager.GET_UNINSTALLED_PACKAGES | PackageManager.GET_PERMISSIONS);
    
       /****** 遍历获取包信息及包信息中包含的 <uses-permission> 信息 *****/
       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);
                   }
               }
           }
       }
    }
  • 相关阅读:
    uva 147 Dollars
    hdu 2069 Coin Change(完全背包)
    hdu 1708 Fibonacci String
    hdu 1568 Fibonacci
    hdu 1316 How Many Fibs?
    poj 1958 Strange Towers of Hanoi
    poj 3601Tower of Hanoi
    poj 3572 Hanoi Tower
    poj 1920 Towers of Hanoi
    筛选法——素数打表
  • 原文地址:https://www.cnblogs.com/sunzn/p/2910264.html
Copyright © 2011-2022 走看看