[基础]Android 应用的启动

Android 应用的启动模式分为两种,一种是通过启动器(Launcher)启动,另一种是通过Intent消息启动.

如果在通过Intent 消息启动前,希望判断欲启动的应用是否已经安装,

目前有两种方法可以检测相关的信息,一种是检测相关的UI组件是否存在,另一种是检测安装包是否存在.

检测组件是否存在的方法如下:

Intent intent = new Intent();
intent.setClassName(pluginPackgeName,pluginPackageName+".EngineSettings");
PackageManager pm = getPackageManager();
//检测Activity
ResolveInfo bestMatch = pm.resolveActivity(intent,PackageManage.MATH_DEFAULT_ONLY);

检测安装包是否存在的方法同样是基于PackageManage进行的, 具体如下:

public abstract PackageInfo getPackageInfo(String packageName,int flags)

如果安装的应用体验不佳,就要进行卸载操作,方法如下:

Uri uri = Uri.fromParts("package",packageName,null);
//packageName为包名,比如 com.xxx.apkInstaller
startActivity(it);

另外,通过adb 命令也能启动应用,方法如下:

#adb shell am start -n com.xxx.test/.MainActivity

摘自:<<深入Android应用开发>>核心技术解析与最佳实践

上一篇:MySQL数据库调优技巧


下一篇:android 开发设计模式---观察者模式