您的位置:首页 > 移动开发 > Android开发

Android取得程序包名及Activity信息

2013-09-03 08:24 204 查看
//取得 已安装apk的包名
List<ApplicationInfo> applicationInfos = pm.getInstalledApplications(0);
Iterator<ApplicationInfo> iterator = applicationInfos.iterator();
while(iterator.hasNext()){
ApplicationInfo applicationInfo = iterator.next();
String packageName = applicationInfo.packageName;// 包名
String packageLabel = pm.getApplicationLabel(applicationInfo).toString();//获取label
System.out.println("packageName:" + packageName + "," + packageLabel);
}


// 判断包是否存在,并遍历包中所有的activity
String pkgName = "com.google.zxing.client.android";
String aiName = "com.google.zxing.client.android.CaptureActivity";
PackageInfo pi = pm.getPackageInfo(pkgName, PackageManager.GET_ACTIVITIES);
if(pi!=null){
ActivityInfo ai = null;
for(int i=0; i < pi.activities.length; i++){
ai=pi.activities[i];
if(ai.name.equals(aiName))
break;
}
if(ai!=null){
Intent intent = new Intent();
intent.setClassName(pkgName,aiName);
startActivityForResult(intent, 1000);
}
else
Toast.makeText(this, "未找到要引用的类", Toast.LENGTH_SHORT).show();
}
else
Toast.makeText(this, "请先安装ZXing条码扫描", Toast.LENGTH_SHORT).show();
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: