从一个APP启动另一个APP的activity的方式

这篇具有很好参考价值的文章主要介绍了从一个APP启动另一个APP的activity的方式。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

从一个APP启动另一个APP的Activity的方法

1、通过自定义action启动

这种方式只需要在代码中设置一个action即可, 系统会自动过滤去找到这个action所对应的Activity

当前APP的代码

Intent intent = new Intent();
//这里是采用的自定义action
intent.setAction("transBundle.app");
startActivity(intent);

待启动APP 的activity在AndroidManifest.xml中的配置

<!- 需要配置对应的自定义action->
<activity
        android:name=".MyActivity"
        android:label="@string/app_name" 
        android:exported="true">
        <intent-filter>
            <action android:name="transBundle.app"/>
            <category android:name="android.intent.category.DEFAULT"/>
        </intent-filter>
    </activity>

2、通过在Intent中通过指定包名和类名来查找

直接在当前APP中写以下代码,即可打开指定APP的activity

ComponentName componetName = new ComponentName(  
            "com.poynt.weibo",  //这个是另外一个应用程序的包名  
            "com.poynt.weibo.ui.IndexActivity");   //这个参数是要启动的Activity的全路径名

        try {  
            Intent intent = new Intent();  
            intent.setComponent(componetName);  
            startActivity(intent);  
        } catch (Exception e) {  
            Toast.makeText(getApplicationContext(), "可以在这里提示用户没有找到应用程序,或者是做其他的操作!", 0).show();  
        }

3、通过scheme启动

其实这个方法和方法1类似, 只是说增加了scheme参数, scheme更多的用于 在网页或者H5上来启动我们的APP, 比如在手机官网上通过scheme可以直接打开我们的app, 这里我们只是从APP用scheme启动另一个APP

当前应用的代码:

Uri uri = Uri.parse("app://my.test");
Intent intent = new Intent("transBundle.app", uri);
startActivity(intent);

待打开APP的AndroidManifest配置

 <activity
        android:name=".MyActivity"
        android:label="service" 
        android:exported="true">

        <intent-filter>
            <action android:name="transBundle.app"/>
            <action android:name="android.intent.action.VIEW"/>
            <category android:name="android.intent.category.DEFAULT"/>
            <data android:scheme="app" android:host="my.test"/>
        </intent-filter>
    </activity>

其中app类似于http://www.baidu.com中的 http, 表示传输协议; my.test类似于www.baidu.com, 表示主机名文章来源地址https://www.toymoban.com/news/detail-474665.html

到了这里,关于从一个APP启动另一个APP的activity的方式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • android_adb pm和adb am@启动Activity@杀死app进程@冻结或卸载系统更新和应用商店

    Android 调试桥 (adb) | Android 开发者 | Android Developers (google.cn) 这部分文档并不包含所有的指令功能的介绍 可以和命令行的 --help 选项的本地文档一同查阅 运行方式有两种 不进入shell直接运行 每次执行命令(issue command)需要带上adb shell开头的前缀 例如: adb shell pm list packages -s -d|nl

    2024年02月03日
    浏览(56)
  • iOS APP启动广告实现方式 与 APP唤端调用

    APP启动广告功能实现要从2个方面思考 一是UI方案,怎样处理广告页与主页之间的切换方式。 二是广告页展示时机,是使用后台实时广告数据还是使用本地缓存广告数据。后台数据方式获取广告最新但是用户要等待后台返回数据后才能展示,增加用户等待时间。使用本地缓存

    2024年02月01日
    浏览(38)
  • 安卓App自启动,两种不同的方式!!!支持到安卓4.4

    自己给车机买了CarPlay盒子,但是车机启动后需要点击App才能使用,十分拉闸!!!所以做了这个自启动器。 因为 它是apk文件 它是基于安卓4.4开发的 所以 它能安装到所有的安卓平台上 它只能安装到安卓4.4以后的机子上 开机程序自启代码【主要在AndroidManifest.xml】 主要的逻辑

    2024年02月12日
    浏览(84)
  • python flask生成被控服务端 开放接口 可以调用本地程序启动D盘的app.py文件,并生成一个前端文件,有一个启动按钮

    要创建一个使用 Flask 的被控服务端,开放接口以调用本地程序并启动 D 盘的  app.py  文件,以及生成一个带有启动按钮的前端文件,你需要做以下几个步骤: 设置 Flask 服务端 :创建一个 Flask 应用,并定义一个 API 接口来接收请求。 执行本地程序 :在 Flask 应用中,使用 

    2024年04月15日
    浏览(53)
  • adb 命令获取当前页面的Activity,启动某个Activity

    每次找来找去太麻烦,再次记录一下

    2024年01月18日
    浏览(49)
  • Android Activity启动流程一:从Intent到Activity创建

    关于作者:CSDN内容合伙人、技术专家, 从零开始做日活千万级APP。 专注于分享各领域原创系列文章 ,擅长java后端、移动开发、人工智能等,希望大家多多支持。 学习前,建议有相关知识储备: 【Android 基础】 应用(Application)启动流程 通过本文你可以学习到Activity启动流

    2024年02月10日
    浏览(44)
  • Activity启动流程概述

    Activity的启动过程,我们可以从 Context 的 startActivity 说起,其实现是 ContextImpl 的 startActivity (内部调用 startActivityForResult ),然后内部会通过 Instrumentation 来尝试启动 Activity ,这是一个 跨进程过程 ,它会调用ams的 startActivity 方法,当 ams校验完activity的合法性 后,会通过 Ap

    2024年02月11日
    浏览(33)
  • Activity启动流程分析

    点击桌面App图标,Launcher进程采用Binder IPC向system_server进程发起startActivity请求 system_server进程接收到请求后,向zygote进程发送创建进程的请求; Zygote进程fork出新的子进程,即App进程 App进程,通过Binder IPC向sytem_server进程发起attachApplication请求; system_server进程在收到请求后,进

    2024年02月09日
    浏览(55)
  • Android 后台启动Activity适配

    在Android 9及以下版本,后台启动Activity相对自由,但是如果在Activity上下文之外启动Activity会有限制。 所以此时需要给intent添加flag:FLAG_ACTIVITY_NEW_TASK。 在Android版本10及以后版本, 引入了后台执行限制,限制了应用在后台执行操作的能力。非核心任务的后台启动 Activity 可能会

    2024年02月10日
    浏览(42)
  • Android Activity启动过程详解

    1,《android系统启动流程简介》 2,《android init进程启动流程》 3,《android zygote进程启动流程》 4,《Android SystemServer进程启动流程》 5,《android launcher启动流程》 6,《Android Activity启动过程详解》 1,《Android 源码下载和编译》 2,《android 11源码编译和pixel3 刷机》 3,《Andro

    2024年02月09日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包