Android 通过Intent打开第三方App

Android 使用 Intent 打开第三方应用或调用制定 Activity

Intent intent = new Intent();
intent.setClassName("package name", "activity name");
// 内部调用 intent.setComponent(new ComponentName("package name", "activity name"));
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); // 可选
// 知道 App 的包名和 Activity 的全路径及其名称
// 启动的目标 Activity 在 AndroidManifest.xml 中的属性 Export="true"
// 也可以不判断
if (intent.resolveActivityInfo(getPackageManager(), PackageManager.MATCH_DEFAULT_ONLY) != null) {
  startActivity(intent);
}


String packageName="package name";
PackageManager packageManager = context.getPackageManager();
Intent it = packageManager.getLaunchIntentForPackage(packageName);
if (it != null){
  startActivity(it);
}

// 隐式调用
Uri uri = Uri.parse("http://www.abc.xyz");
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
if (intent.resolveActivity(getPackageManager()) != null) {
  startActivity(intent);
}

Ps: activity <intent-filter>

android.intent.action.MAIN 决定应用程序最先启动的Activity

android.intent.category.LAUNCHER 决定应用程序是否显示在程序列表里

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值