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 小时前
Android中WebRTC通信
android
KevinWang_8 小时前
Android Hilt 依赖注入
android
古法安卓9 小时前
Android-深入理解 Android 回调(Callback)机制
android·性能优化·android studio
古法安卓9 小时前
Android-车机 GNSS 定位数据接收问题排查
android·java·android studio
FungLeo11 小时前
Flutter 吸顶分组列表实战:语义桶分组 + 点击头平滑滚动
android·flutter
阿巴斯甜11 小时前
Android 自定义权限
android
FungLeo12 小时前
Flutter 超长 StatefulWidget 拆分术:part of + extension on State 实战
android·flutter·dart
小王C语言13 小时前
MySQL 数据类型:数值类型、字符串类型、日期和时间类型、enum 和 set、find_in_set 查询
android·数据库·mysql
我命由我1234513 小时前
Android 控件 - CardView(快速实现圆角)
android·java·java-ee·kotlin·android studio·android-studio·android runtime
码云数智-园园14 小时前
Android 全方位性能优化合集
android·性能优化