zoukankan      html  css  js  c++  java
  • Android_反射技术_调用类中私有的方法

    为了使用私有方法:getPackageSizeInfo

    Method method = PackageManager.class.getMethod("getPackageSizeInfo", new Class[]{String.class,

    public class DemoActivity extends Activity {
        private PackageManager pm;
    
        /** Called when the activity is first created. */
        @Override
        public void onCreate(Bundle savedInstanceState) {
            super.onCreate(savedInstanceState);
            setContentView(R.layout.main);
            pm = getPackageManager();
    
             try {
                Method method = PackageManager.class.getMethod("getPackageSizeInfo", new Class[]{String.class,IPackageStatsObserver.class});
                
                method.invoke(pm, new Object[]{"cn.itcast.mobilesafe",new IPackageStatsObserver.Stub() {
                    
                    public void onGetStatsCompleted(PackageStats pStats, boolean succeeded)
                            throws RemoteException {
                        System.out.println("----------------");
                        long cachesize = pStats.cacheSize;
                        long codesize = pStats.codeSize;
                        long datasize = pStats.dataSize;
                        System.out.println("datasize"+datasize);
                        System.out.println("codesize"+codesize);
                        System.out.println("cachesize"+cachesize);
                        
                    }
                }});
             
             
             
             } catch (Exception e) {
                e.printStackTrace();
            }
    
    /*        Method[] methods = PackageManager.class.getMethods();
            for (int i = 0; i < methods.length; i++) {
                if ("getPackageSizeInfo".equals(methods[i].getName())) {
                    Class<?>[]  paras = methods[i].getParameterTypes();
                    for(int j=0;j<paras.length;j++){
                        System.out.println(paras[j]);
                    }
                }
            }*/
        }
    }

    IPackageStatsObserver.class});

  • 相关阅读:
    c# 之 事务
    Asp.Net 之 js/jquery获取服务器端控件
    产品能力框架图
    软件测试职业发展规划图
    Loadrunner 工作原理图
    Linux内核性能测试工具全景图
    Linux 性能监控分析
    软件藏宝图
    Haproxy 8种算法+Session共享
    Keepalived+Haproxy实现高可用负载均衡
  • 原文地址:https://www.cnblogs.com/avrilliu/p/3223394.html
Copyright © 2011-2022 走看看