安卓怎样获得所有的APP缓存使用getPackageSizeInfo

安卓怎样获得所有的APP缓存使用getPackageSizeInfo,第1张

首先,需要获得所有已经安装的程序的基本信息通过packageManager来拿到

[java] view plain copy

List<PackageInfo> installedPackages = managergetInstalledPackages(0);

拿到所有的程序基本信息后,通过for循环来拿到程序的包名,然后通过查询android源码,在setting里面找到了拿到缓存大小的源码,通过packageManager的getPackageSizeInfo方法来拿到。

[java] view plain copy

public abstract void getPackageSizeInfo(String packageName, int userHandle,

IPackageStatsObserver observer);

然而这个方法是隐藏的,我们通过反射来拿到这个方法

[java] view plain copy

Class<> loadClass = getClassLoader()loadClass("androidcontentpmPackageManager");

Method method = loadClassgetDeclaredMethod("getPackageSizeInfo", Stringclass,intclass,IPackageStatsObserverclass);

1:AppSettings不是方法所以不适用(),[]是索引访问方式,可以参考C#中对象的“索引”的实现

2:之所以加“/”大概是因为使用这个fileString的地方,及变量FileString所在的目录与fileString所指向的目录处于同一父目录下,所以需要加上“/”来拼接访问fileString所指向目录的相对路径。换在其他位置的话,应该也会做这一类的路径拼接。

//查找msdn文档可以发现微软出于性能考虑,对ConfigurationManager采用了缓存策略,所以如果要读取新的值,应该使用ConfigurationManager的RefreshSection来进行

//刷新命名节,这样在下次检索它时将从磁盘重新读取它。

ConfigurationManagerRefreshSection("appSettings");

第三方类库扩展目录Extend/Vendor目录如果你直接使用的是第三方的类库包,或者是类名和后缀和ThinkPHP的默认规则不符合的,我们建议你放到第三方类库扩展目录Extend/Vendor目录下面,并使用vendor方法来导入。例如,我们把Zend的Filter\Dirphp 放到Vendor目录下面,这个时候Dir文件的路径就是Vendor\Zend\Filter\Dirphp,我们使用vendor方法导入就是:Vendor('ZendFilterDir');需要注意的是,vendor方法默认导入的类库后缀是php的而不是classphp的,如果你的第三方类库的后缀是classphp,可以使用:Vendor('ZendFilterDir','','classphp');或者使用:import('ZendFilterDir',VENDOR_PATH);通过使用第三方类库扩展,我们可以直接使用Zend、CI或者其他框架中的类库。

在系统盘appdata下面,不同 *** 作系统有一定差别,比如我的server03系统,某一个程序的setting放在下面:

C:\Documents and Settings\Administrator\Application Data\ruizhi\WindowsApplication1exe_Url_0l2pjhmtjiyqprtjqg2f1bexqrq1o3hr\1000\userconfig。

具体你可以下载一个Procmon来跟踪一下。

方法/步骤

1

首先打开mac中的ios虚拟机,开启ios虚拟机之后,直接点击界面中“setting”的应用选项。

2

进入到setting的设置界面中之后,在设置列表中可以看到为general的选项,点击进入。

3

进入到general的界面中之后,进行点击Accessibility该选项。

4

Accessibility的界面中,把Accessibility inspector的OFF改为on即可。

5

在顶端的位置中就d出一个Accessibility inspector的框。要进行获取元素就需要开关打开,点击Accessibility inspector的“×”的按钮。

6

然后需要进行获取到控件的中进行点击一些即可,元素获取到信息就会在Accessibility inspector中显示,根据这些就可以进行对app进行相应的自动化测试。

7

当前的页面获取元素完成之后,如果不在当前页面中元素,可以直接进行点击Accessibility inspector中“×”的按钮即可。

>

以上就是关于安卓怎样获得所有的APP缓存使用getPackageSizeInfo全部的内容,包括:安卓怎样获得所有的APP缓存使用getPackageSizeInfo、请教configurationmanger.appsetting的相关问题、怎么改掉配置文件里AppSetting的值等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/10072507.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存