zoukankan      html  css  js  c++  java
  • Android 4.2 获取应用缓存接口变化

            PackageManager.getPackageSizeInfo(String packageName, IPackageStatsObserver observer)不可用,改为PackageManager.getPackageSizeInfo(String packageName, int userHandle, IPackageStatsObserver observer), 至于增加的参数userHandle的解释是:The user whose size information should be retrieved。下面是PackageManager内部的用法:

     

    public void getPackageSizeInfo(String packageName, IPackageStatsObserver observer) { 
    getPackageSizeInfo(packageName, UserHandle.myUserId(), observer);

    }
            因此,把UserHandle.myUserId()的实作部分整合进来就可用了:
    private void getPacakgeStats(String pkgName) {  
        if (pkgName != null) {  
            try {  
                Method getPackageSizeInfo = mPm.getClass().getDeclaredMethod("getPackageSizeInfo", String.class,  
                        int.class, IPackageStatsObserver.class);  
                /** 
                 * after invoking, PkgSizeObserver.onGetStatsCompleted() will be called as callback function. <br> 
                 * About the third parameter ‘Process.myUid() / 100000’,please check: 
                 * <android_source>/frameworks/base/core/java/android/content/pm/PackageManager.java: 
                 * getPackageSizeInfo(packageName, UserHandle.myUserId(), observer); 
                 */  
                getPackageSizeInfo.invoke(mPm, pkgName, Process.myUid() / 100000, new PkgSizeObserver());  
            } catch (Exception e) {  
                Log.e(TAG, e.toString());  
            }  
        }  
    }  
  • 相关阅读:
    七.贪心算法
    六。二叉树
    从git指定commit拉分支
    二分法
    mysql 解决生僻字,特殊字符插入失败
    MYSQL性能优化以及建议
    PDF快捷键
    GC 核心关注点都在这里
    R语言载入包时报错:Error: 程辑包‘survival’没有名字空间
    Centos buff/cache过高
  • 原文地址:https://www.cnblogs.com/zhouliweiblog/p/3389550.html
Copyright © 2011-2022 走看看