android检查intent是否可用

最近做一个功能要传递intent到第三方应用。
自己测试的时候好好的,
别人测试app就崩溃了,
发现原来对方没有安装第三方app,
导致爆出 ActivityNotFoundException。
让对方安装好第三方app是个办法,但是崩溃仍然是不能忍的。
有什么办法可以确保 startActivity() startActivityForResult() 运行的时候有对应的Activity 让它处理呢?

这就贴代码

private boolean isIntentAvaileble(Context context, Intent intent){
    List<> resolves = context.getPackageManager().queryIntentActivities(intent,0);
return resolves.size()>0;
}

只要 resolves 数组长度大于零,证明有可以处理该intent的activity,可以放心发出去了

    原文作者:devYOUK
    原文地址: https://www.jianshu.com/p/ef3d15bace41
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞