Android从一个APP跳转到另外一个APP

1、从当前APP去全新启动另外一个目标APP(非覆盖同一个进程):

  • 启动另外一个目标APP(非覆盖原来APP的方式)

1、当前APP加入获取权限声明:(不加人权限检查,没法启动目标app)

XML 复制代码
 <uses-permission android:name="android.permission.QUERY_ALL_PACKAGES"
        tools:ignore="QueryAllPackagesPermission" />
 <uses-permission android:name="android.permission.LAUNCH_APP" />

2、执行跳转代码:

java 复制代码
String packageName = "com.target.package"; // 目标应用的包名
PackageManager packageManager = getPackageManager();
Intent intent=new Intent();
intent =packageManager.getLaunchIntentForPackage(packageName);
 if(intent==null){
     Toast.makeText(MainActivity.this, "未安装", Toast.LENGTH_LONG).show();
 }else{
     startActivity(intent);
 }

2、从当前APP去跳转到另外一个目标APP的某个页面时:

1、目标APP的对应Activity中加入action

XML 复制代码
 <activity
    android:name="com.xxx.package.TargetXXActivity"
    android:exported="true">
     <intent-filter>
       <action android:name="jp" />  <!--标志-->
       <category android:name="android.intent.category.DEFAULT" />  <!--这是一个普通页面-->
      </intent-filter>
 </activity>

2、当前应用执行跳转到目标APP

java 复制代码
 Intent intent = new Intent("jp");  // 标志(要和目标APP的清单文件中的标志一样)
 startActivity(intent);
相关推荐
蜘蛛侠不会飞6 分钟前
基于安卓14 的ANR dump信息原理
android·java·framework·安卓源码
阿岳31634 分钟前
MySQL使用触发器进行备份
android·数据库·mysql
zhangjiaofa12 小时前
Android中的LoadedApk:使用指南与核心代码解析
android
m0_7482522314 小时前
万字详解 MySQL MGR 高可用集群搭建
android·mysql·adb
SoulKuyan14 小时前
Android系统默认开启adb root模式
android·adb
0wioiw016 小时前
逆向安卓抓包
android·linux·运维
zhangjiaofa16 小时前
深入理解 Android 中的 KeyguardManager
android
-代号952717 小时前
云计算中的可用性SLA
android·java·云计算
m0_7482304418 小时前
眼见不一定为实之MySQL中的不可见字符
android·数据库·mysql
_可乐无糖19 小时前
深入理解 pytest_runtest_makereport:如何在 pytest 中自定义测试报告
android·ui·ios·自动化·pytest