Android tips(五)-->android系统设置中的应用详情
来源:互联网 发布:安卓秒变iphone软件 编辑:程序博客网 时间:2024/06/10 20:22
转载请标明出处:一片枫叶的专栏
开发过Android的童鞋相比都知道 设置-》应用管理-》应用详情页面,这是android系统自身的应用“设置”的管理系统安装应用显示应用详情的页面,不同的手机该页面显示的内容不太一样,但也都是大同小异,这里简单介绍一下各个标签的不同含义。
这里暂定以小米3手机的应用详情页面为参考:
- 第一部分标题
主要显示App的Icon,名称版本号等信息;
顺带说一下android系统中获取应用名称和Icon的方式
/** * 获取应用名称 * @param mContext * @return */ public static String getApplicationName(final Activity mContext) { PackageManager packageManager = null; ApplicationInfo applicationInfo = null; try { packageManager = mContext.getApplicationContext().getPackageManager(); applicationInfo = packageManager.getApplicationInfo(mContext.getPackageName(), 0); } catch (PackageManager.NameNotFoundException e) { applicationInfo = null; } String applicationName = (String) packageManager.getApplicationLabel(applicationInfo); return applicationName; }
/** * 获取应用的Icon * @param mContext * @return */ public static PackageInfo[] getAppInfoByPackage(Activity mContext) { PackageInfo[] mPackageInfo = new PackageInfo[2]; List<PackageInfo> packages = mContext.getPackageManager().getInstalledPackages(0); L.i("packages Size:" + packages.size()); for (int i = 0; i < packages.size(); i ++) { // L.i("执行:" + i); if (packages.get(i).packageName.equals(BAIDU_PACKAGE)) { L.i("执行:" + i + " 获取百度地图应用信息..."); mPackageInfo[0] = packages.get(i); Drawable icon1 = mPackageInfo[0].applicationInfo.loadIcon(mContext.getPackageManager()); } else if (packages.get(i).packageName.equals(GAODE_PACKAGE)) { L.i("执行:" + i + " 获取高德地图应用信息..."); mPackageInfo[1] = packages.get(i); Drawable icon2 = mPackageInfo[1].applicationInfo.loadIcon(mContext.getPackageManager()); } if (mPackageInfo[0] != null && mPackageInfo[1] != null) { return mPackageInfo; } } return mPackageInfo; }
主要是通知栏和悬浮框的设置
小米3中有两个通知类的设置,分别是自定义通知和显示悬浮框;存储
1)总计 = 手机存储代码大小 + 手机存储数据大小 + SD卡存储代码大小 + SD卡存储数据大小
2)引用 = 手机储存代码大小 + SD卡存储代码大小
3)USB存储(应用) = SD卡存储的代码大小
4)数据 = 手机存储数据大小 + SD卡存储数据大小
5)USB存储(数据)= SD卡存储的数据大小
6)清除数据 = 清除SD卡存储中的数据 + 清除手机存储中的数据
对应目录参考:
1 、 codeSize : //apk 的大小,对应 apk 所在的目录。
2 、 dataSize; // 内部数据。 /data/data/
3 、 cacheSize; // 内部缓冲数据。 /data/data//cache
4 、 externalCodeSize; // 外部代码大小。对应 apk 所在的外部的目录。
5 、 externalDataSize; // 外部数据大小。
6 、 externalCacheSize; // 外部缓冲数据大小。如果此目录是 externalDataSize 的子目录,则此大小包含在 externalDataSize 中。
详细信息科参考:http://blog.csdn.net/qq_23547831/article/details/50517384
缓存
缓存大小 = cacheSize + externalCacheSize 。权限
1)查看权限详情:主要为App运行过程中需要哪些权限,可以分为:安全相关权限,隐私相关权限,其他相关权限等等
2)权限管理:可以手动更高App的权限,比如App安装时已经授权了可以使用定位权限,这里可以手动禁止改App拥有定位权限(但是一般不推荐这样操作,禁用相关权限可能会使App中一些相关的功能无法使用)
- 其他操作
1)结束运行:强制结束App的运行,退出App;
2)卸载:卸载app
其他问题:
打开手机设置-》应用管理-》某一应用-》清除数据,这个操作是清除某一个App的数据,那么到底会清除那些数据呢?
这里新建一个项目com.chao.ttext,我们在项目数据目录:data/data/com.chao.ttext目录下创建缓存数据目录
data/data/com.chao.ttext # lslib 存放使用的包files 存放应用程序自己保存的文件databases 存放数据库数据shared_prefs SP文件cache 存放缓存数据app_appcache H5缓存app_databases webview缓存app_geolocation 定位缓存
然后我们为每个目录添加一个新的空文件用于判断清除数据的结果:
/data/data/com.chao.ttext # touch lib/temp.txt/data/data/com.chao.ttext # touch files/temp.txt/data/data/com.chao.ttext # touch databases/temp.txt/data/data/com.chao.ttext # touch shared_prefs/temp.txt/data/data/com.chao.ttext # touch cache/temp.txt/data/data/com.chao.ttext # touch app_appcache/temp.txt/data/data/com.chao.ttext # touch app_databases/temp.txt/data/data/com.chao.ttext # touch app_geolocation/temp.txt
打开设置-》应用管理-》ttext-》清除数据
然后在查看ttext数据目录下的数据情况:
/data/data/com.chao.ttext # lslib
然后进入lib目录查看temp.txt文件是否还存在,结果还是存在的。
结论:清除数据会清除App数据目录下除lib文件以外的所有文件和目录。
参考:http://droidyue.com/blog/2014/06/15/what-will-be-removed-if-you-click-clear-data-button-in-system-application-item/
- Android tips(五)-->android系统设置中的应用详情
- android系统设置应用详情页存储项各种大小的意义
- Android进入设置中应用对应的详情界面
- Android获取应用详情页系统通知状态
- Android应用开发tips
- Android系统应用开发(五)android 输入法类说明
- Android开发中的Tips
- Android应用设置系统情景模式
- Android系统中iptables的应用(五)IdlertimerController
- Android仿最美应用详情页动画效果
- Android跳转到应用商店详情页面
- android开发过程中的tips
- android系统mount详情--vold.fstab (转载)
- Android XML文件中的属性详情
- Android系统设置settings应用学习(二)--源代码解析
- android的系统属性设置和应用
- Android通过应用来设置系统时间
- Android Tips: 如何判断所安装的应用是否为系统应用
- java特种兵读书笔记(3-6)——java程序员的OS之JAVA常用工具
- 正则表达式(简洁版)
- Qt5.5中OpenGL着色器程序编写
- (2)html学习笔记(粗略几笔)
- java 接口学习任务
- Android tips(五)-->android系统设置中的应用详情
- 1.15-学习概况
- iOS 开发 设置网络请求允许使用http
- bitmapfactory.options 优化内存小问题
- exe4j生成 根据jar包生成exe文件
- Cocos2dx个人笔记之屏幕适配
- 数据库删除重复数据
- zabbix使用外部邮箱账号发送报警邮件设置
- iOS8 以上版本的定位问题