要启动Android应用程序,我使用下面的代码,适用于每个应用程序 安装在手机上,但“手机”应用程序本身除外。当我尝试推出“手机”时 应用程序不是launced并且没有错误消息或显示或抛出异常。
这是我用来启动应用程序的代码:
launchApp(context, packageManager,
"com.android.phone");
/*
* Launch an application
*
* @param c Context of application
*
* @param pm the related package manager of the context
*
* @param pkgName Name of the package to run
*/
public static boolean launchApp(Context c, PackageManager pm, String pkgName) {
// query the intent for lauching
Intent intent = pm.getLaunchIntentForPackage(pkgName);
// if intent is available
if (intent != null) {
try {
// launch application
c.startActivity(intent);
// if succeed
return true;
// if fail
} catch (ActivityNotFoundException ex) {
// quick message notification
Toast toast = Toast.makeText(c, "Application Not Found",
Toast.LENGTH_LONG);
// display message
toast.show();
}
}
// by default, fail to launch
return false;
}
这是用于启动Android应用程序的正确方法和/或是“电话” 应用特殊情况,不允许其他应用程序启动/使用它?
答案 0 :(得分:3)
尝试使用此代码:
Intent intent = new Intent(Intent.ACTION_DIAL);
startActivity(intent);