在这个例子中将展示如何获取Application的几个基本属性信息:名字、Package标签、版本信息和图标信息。
创建一个用于存储基本信息的Class:
02 | private String appname = "" ; |
03 | private String pname = "" ; |
04 | private String versionName = "" ; |
05 | private int versionCode = 0 ; |
06 | private Drawable icon; |
07 | private void prettyPrint() { |
08 | log(appname + "t" + pname + "t" + versionName + "t" + versionCode + "t" ); |
接下来是获取信息的主体:
01 | private ArrayList < PInfo > getInstalledApps( boolean getSysPackages) { |
02 | ArrayList < PInfo > res = new ArrayList < PInfo > (); |
03 | List < PackageInfo > packs = getPackageManager().getInstalledPackages( 0 ); |
04 | for ( int i= 0 ;i < packs.size();i++) { |
05 | PackageInfo p = packs.get(i); |
06 | if ((!getSysPackages) && (p.versionName == null )) { |
09 | PInfo newInfo = new PInfo(); |
10 | newInfo.appname = p.applicationInfo.loadLabel(getPackageManager()).toString(); |
11 | newInfo.pname = p.packageName; |
12 | newInfo.versionName = p.versionName; |
13 | newInfo.versionCode = p.versionCode; |
14 | newInfo.icon = p.applicationInfo.loadIcon(getPackageManager()); |
用这个方法来获取系统内所包含的Applications信息:
1 | private void listPackages() { |
2 | ArrayList < PInfo > apps = getInstalledApps( false ); |
3 | final int max = apps.size(); |
4 | for ( int i= 0 ; i < max; i++) { |
5 | apps.get(i).prettyPrint(); |
还有一个相对比较简单的应用,借由PackageManager来获取Application信息:
01 | PackageManager manager = this .getPackageManager(); |
04 | PackageInfo info = manager.getPackageInfo( this .getPackageName(), 0 ); |
05 | String packageName = info.packageName; |
06 | int versionCode = info.versionCode; |
07 | String versionName = info.versionName; |
09 | } catch (NameNotFoundException e) { |
一般情况并不太需要这样的应用,但是可以借鉴这样的方法来处理类似的问题,多看一些总是好的!
资源引用 androidsnippets.org
This entry was posted on Tuesday, August 25th, 2009 at 12:58 am and is filed underResource, Tips. You can follow any responses to this entry through the comments feed. You can leave a response, or trackback from your own site.
Tags: ArrayList, Drawable, Icon, PackageInfo, PackageManager
Posted in Resource, Tips |
Related Posts