我正在尝试触发一个深链接,如:
yelp://
应该是yelp:///
,但我想验证链接失败,并告诉用户输入正确的地址或安装应用程序。这是我的try块:
try{
startActivity(new Intent("android.intent.action.VIEW",
Uri.parse(message)));
} catch (android.content.ActivityNotFoundException e){
throw new RunTimeException("Please install the application you are trying to trigger." + e.toString());**
}
RunTimeException没有显示。任何关于如何显示对话框或这样的用户对此例外的建议。TIA。
你可以这样写
public static boolean canLaunchIntent(Context ctx, Intent intent) {
final PackageManager mgr = ctx.getPackageManager();
List<ResolveInfo> list = mgr.queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY);
return list.size() > 0;
}
与包管理器检查,并确定是否有一个活动可以处理你发送的意图