调用系统安装程序,用户可能会取消,
如果要监听是否安装的话,你要在程序中监听程序安装广播
注册一下广播接收者,android系统安装和卸载都会发送广播的
这样,当你回来界面的时候,如果广播没有接收就表示用户取消了安装
判断手机已安装某程序的方法:
private boolean isAvilible(Context context, String packageName){
final PackageManager packageManager = contextgetPackageManager();//获取packagemanager
List< packageInfo> pinfo = packageManagergetInstalledPackages(0);//获取所有已安装程序的包信息
List<String> pName = new ArrayList<String>();//用于存储所有已安装程序的包名
//从pinfo中将包名字逐一取出,压入pName list中
if(pinfo != null){
for(int i = 0; i < pinfosize(); i++){
String pn = pinfoget(i)packageName;
pNameadd(pn);
}
}
return pNamecontains(packageName);//判断pName中是否有目标程序的包名,有TRUE,没有FALSE
}
判断后的逻辑:
//已安装,打开程序,需传入参数包名:"comskypeandroidverizon"
if(isAvilible(this, "comskypeandroidverizon")){
Intent i = new Intent();
ComponentName cn = new ComponentName("comskypeandroidverizon",
"comskypeandroidverizonSkypeActivity");
isetComponent(cn);
startActivityForResult(i, RESULT_OK);
}
//未安装,跳转至market下载该程序
else {
Uri uri = Uriparse("market://detailsid=comskypeandroidverizon");//id为包名
Intent it = new Intent(IntentACTION_VIEW, uri);
startActivity(it);
}
以上就是关于android 调用系统安装程序 怎样返回安装结果全部的内容,包括:android 调用系统安装程序 怎样返回安装结果、Android判断手机是否安装了某应用程序、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)