android intent filter action,Android - 判断intent-filter的特定的action

判断intent-filter的特定的action

本文地址:http://blog.csdn.net/caroline_wendy

如果使用startIntent()启动Activity时,如果intent-filter中未包含此action,则会异常崩溃;

在使用时,可以先进行检查:

// 判断是否安装【健康工具】

private boolean isInstallChunyuTools() {

Intent cardioFaceIntent = new Intent(EtonConstants.CHUNYU_CARDIO_FACE_ACTION);

Intent pedometerIntent = new Intent(EtonConstants.CHUNYU_PEDOMETER_ACTION);

PackageManager pm = getPackageManager();

List cardioFaceInfos =

pm.queryIntentActivities(cardioFaceIntent, PackageManager.GET_RESOLVED_FILTER);

List pedometerInfos =

pm.queryIntentActivities(pedometerIntent, PackageManager.GET_RESOLVED_FILTER);

return cardioFaceInfos.isEmpty() || pedometerInfos.isEmpty();

}

heck out queryIntentActivities()

So you create an intent with the correct filter matching discriminators on it.

Intent intent = new Intent("my_awesome.package.hasa.custom.ACTION!");

intent.addCategory("typingisfunfunfun");

intent.setData(Uri.parse("data://foo/bar"));

PackageManager pm = getPackageManager();

List resolveInfos = pm.queryIntentActivities(intent, PackageManager.GET_RESOLVED_FILTER);

if(resolveInfo.isEmpty()) {

Log.i("NoneResolved", "No Activities");

} else {

Log.i("Resolved!", "There are activities" + resolveInfos);

}

原文:http://blog.csdn.net/caroline_wendy/article/details/42671939

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值