android中很多需要调用系统已安装好的应用程序,可以用PackageManager来获取应用程序的包名,然后通过包名启动该程序。具体实现如下
找到要启动的应用程序包名,通过包名获得Intent对象,如下
这样就调用了android系统中已安装的应用程序
提示:在android虚拟机上貌似不能用这种方法调用虚拟机自带的程序,比如调用自带的com.android.providers.settings包下的程序。
//获取PackageManager对象
PackageManager pckMan = XXActivity.this.getPackageManager();
//获取应用程序列表
List<PackageInfo> packs = pckMan.getInstalledPackages(0);
for (PackageInfo pin : packs) {
//打印包名
System.out.println(pin.packageName + " ============ ");
}
找到要启动的应用程序包名,通过包名获得Intent对象,如下
//com.android是包名
Intent in = pckMan.getLaunchIntentForPackage("com.android");
startActivity(in);
这样就调用了android系统中已安装的应用程序
提示:在android虚拟机上貌似不能用这种方法调用虚拟机自带的程序,比如调用自带的com.android.providers.settings包下的程序。