Android 在一个APP里打开另一个APP

news2024/11/25 18:56:08

前言

不知道你们有没有注意过,每次打开一些软件的时候都会有广告引导页,有时候手滑点到了,会有进入手机上的另一个APP,这有没有引起你的注意呢?

运行效果图

# 正文 为了测试这个功能,首先要创建两个项目,然后运行起来都安装在你的手机上,这里为了方便了解,取名就是应用A和应用B,流程就是A应用里面打开B应用。

首先当然是创建项目了

DemoA

DemoB

创建好之后,别的先不管,都在手机上安装一下再说

① 打开另一个APP

接下来在DemoA的MainActivity里面写一个按钮,用于点击之后打开DemoB应用

<Button 
android:id="@+id/btn_open_b" 
android:text="打开DemoB" 
android:textAllCaps="false" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content"/>

也在DemoB的布局文件改一下显示内容

<TextView 
android:textSize="18sp" 
android:textColor="#000" 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:text="DemoB" />

运行一下

这样就打开了。那假如我要传递数据到DemoB呢?

② 数据传递

传数据其实就跟平时单个APP内部不同页面传数据类似,也是用Intent

然后在另一个APP里面接收并显示出来。现在先修改一下DemoB的布局,增加一个TextView用来显示接收的内容。

 

css

复制代码

<TextView android:id="@+id/tv_info" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_marginTop="12dp" android:textColor="#000" android:textSize="16sp" />

DemoB的MainActivity里

一旦两个应用程序里面改动了代码你就要在手机上运行一下,否则你改动的代码就不会生效

然后运行一下:

传值的问题就解决了。

③ 打开指定页面

通过包名跳转APP是进入默认的启动页面,你可以打开你的AndroidManifest.xml文件查看

那个Activity下面有这个默认启动就是那个

 

css

复制代码

<intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter>

至于要打开指定的页面有两个方法

1.通过包名、类名

首先在DemoB的下面再创建一个TestActivity,简单加一个TextView

因为是要DemoB的TestActivity页面,所以这个activity在AndroidManifest.xml中需要配置

android:exported 属性,布尔类型,是否支持其他应用访问目标 Activity,默认值为 true;

 

css

复制代码

android:exported="true"

否则你跳转会报错的,现在运行DemoB,使改动的代码生效 然后修改DemoA里面MainActivity的代码

运行效果

这样就可以了。

2.通过Action

修改DemoB的AndroidManifest.xml

然后运行在手机上,再修改DemoA的MainActivity

运行效果

其实还有一种方式是通过URL打开另一个APP,但是我不推荐这样做,为什么?没有原因...

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/785137.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

019 - limit

limit&#xff1a;限制返回结果数量&#xff1b; 该LIMIT子句可用于约束SELECT语句返回的行数 。 LIMIT接受一个或两个数字参数&#xff0c;这些参数必须都是非负整数常量&#xff0c;但以下情况除外&#xff1a; 在准备好的语句中&#xff0c;LIMIT 可以使用? 占位符标记指…

双端队列(deque)与优先队列(priority_queue)

文章目录 一.双端队列——deque1.deque的优点与缺点2.deque的原理 二.优先队列——priority_queue1.什么是优先队列&#xff1f;2.优先队列的基本使用3.什么是仿函数&#xff1f;4.优先队列的模拟实现 一.双端队列——deque 在上一章stack、queue的模拟实现中&#xff0c;我们…

疲劳驾驶检测和识别2:Pytorch实现疲劳驾驶检测和识别(含疲劳驾驶数据集和训练代码)

疲劳驾驶检测和识别2&#xff1a;Pytorch实现疲劳驾驶检测和识别(含疲劳驾驶数据集和训练代码) 目录 疲劳驾驶检测和识别2&#xff1a;Pytorch实现疲劳驾驶检测和识别(含疲劳驾驶数据集和训练代码) 1.疲劳驾驶检测和识别方法 2.疲劳驾驶数据集 &#xff08;1&#xff09;疲…

whistle代理

安装whistle npm install whistle -g --registryhttps://registry.npm.taobao.org启动w2代理 w2 startchrome浏览器安装插件whistle&#xff0c;并启用代理状态 web端代理到本地 浏览器访问http://127.0.0.1:8899/ 配置代理url [参考] https://blog.csdn.net/u010106375/ar…

C语言:程序环境和预处理

编译一个C程序设计很多步骤,大致为预处理,编译,汇编和链接. 在讲解预处理阶段之前,先简单总述一下程序的编译和链接. 1. 程序的编译和链接 链接是将各种代码和数据片段收集并组合成为一个单一文件的过程,这个文件可被加载(复制)到内存并执行. 这里有两个源文件构成了一个程序…

计算机内存中的缓存Cache Memories

这篇写一下计算机系统中的缓存Cache应用场景和实现方式介绍。 Memory hierarchy 在讲缓存之前&#xff0c;首先要了解计算机中的内存结构层次Memory hierarchy。也就是下图金字塔形状的结构。 从上到下&#xff0c;内存层次结构如下&#xff1a; 寄存器&#xff1a;这是计算机…

自动化测试与手工测试比较

既然现在有了自动化测试&#xff0c;甚至现在许多团队在使用人工智能的方法&#xff0c;逐渐让机器来取代人的测试。那么作为测试工程师的人未来会不会消失?这是一个摆在许多人面前的一个严肃的问题。去年刚刚过世的著名的天体物理学家斯蒂芬威廉霍金(Stephen William Hawking…

Qt - macOS 安装配置

文章目录 一、关于 QT1.2 Qt的发展史1.3支持的平台1.4 Qt版本1.5 Qt 的优点1.6 成功案例 二、软件安装1、保证已 Xcode 和 Command Line Tools2、下载 QT3、下载 [qtcreator](http://download.qt.io/official_releases/qtcreator/)查看qt版本 三、创建工程Qt 常见用法 四、基础…

智能安全配电装置应用场景有哪些?

安科瑞 华楠 一、应用背景 电力作为一种清洁能源&#xff0c;给人们带来了舒适、便捷的电气化生活。与此同时&#xff0c;由于使用不当&#xff0c;维护不及时等原因引发的漏电触电和电气火灾事故&#xff0c;也给人们的生命和财产带来了巨大的威胁和损失。 为了防止低压配电…

音频转换工具怎么使用你了解吗?让我来跟你分享背后原理

相信小伙伴们平时都会听听喜欢的音乐放松心情吧&#xff0c;不过你是否遇到过&#xff0c;想在一个播放设备上放一首歌的时候&#xff0c;却发现不支持该格式&#xff1f;音频转换格式软件在我们的生活中扮演着越来越重要的角色。这些软件可以帮助我们将音频文件转换成不同的格…

炒股最好用的5个指标?_通达信公式

摘要: 炒股市场是一个充满挑战的领域&#xff0c;而找到可靠的指标来辅助投资决策是成功的关键之一。在众多的指标中&#xff0c;神奇指标网提供了五个被广泛认为是炒股最好用的指标。本文将详细介绍这五个指标&#xff0c;包括其原理和如何应用它们来辅助投资决策。 导言: …

蓝桥杯专题-真题版含答案-【图形排版】【包子凑数】【位反序数】【自守数】

点击跳转专栏>Unity3D特效百例点击跳转专栏>案例项目实战源码点击跳转专栏>游戏脚本-辅助自动化点击跳转专栏>Android控件全解手册点击跳转专栏>Scratch编程案例点击跳转>软考全系列点击跳转>蓝桥系列 &#x1f449;关于作者 专注于Android/Unity和各种游…

Java进阶 —— 多进程并发

前言 在系统学完Java的面向对象编程之后&#xff0c;我们需要认真地来学习Java并发编程&#xff0c;我们在学习计算机操作系统的时候也都了解过进程、线程和协程的概念。在这篇文章中荔枝主要会梳理有关线程创建、线程生命周期、同步锁和死锁、线程通信和线程池的知识&#xff…

android app控制ros机器人一

android开发app&#xff0c;进而通过控制ros机器人&#xff0c;记录开发过程 查阅资料&#xff1a; rosjava使用较多&#xff0c;已经开发好的app也有开源的案例 rosjava GitHub https://github.com/ros-autom/RobotCA https://github.com/ROS-Mobile/ROS-Mobile-Android…

因果推断(一)合成控制法(SCM)

因果推断&#xff08;一&#xff09;合成控制法&#xff08;SCM&#xff09; 在互联网时代&#xff0c;产品迭代速度越来越快&#xff0c;营销活动也越来越多。分析师因此需要快速的量化每次迭代或每次营销的效果&#xff0c;探索改变与结果之间的因果关系&#xff0c;并将优秀…

idea如何解决导入的项目不是Maven工程(文件下面没有蓝色的方格)二

简介&#xff1a; Maven项目导入&#xff0c;idea不识别项目 解决方法&#xff1a; 选中pom.xml -- 右键 -- Add as Maven Project

使用Python搭建代理服务器- 爬虫代理服务器详细指南

搭建一个Python爬虫代理服务器可以让你更方便地管理和使用代理IP。下面是一个详细的教程来帮助你搭建一个简单的Python爬虫代理服务器&#xff1a; 1. 首先&#xff0c;确保你已经安装了Python。你可以在官方网站(https://www.python.org/)下载并安装最新版本的Python。 2. 安…

Spring 中简单存取 Bean 的相关注解

目录 前言存储 Bean 对象五大类注解方法注解&#xff08;Bean&#xff09; 获取 Bean 对象 (Autowired)属性注入多个同类型 Bean 注入怎么办&#xff1f; Setter 注入构造方法注入&#xff08;官方推荐&#xff09; 前言 之前我们存储获取 Bean 的操作很繁琐&#xff0c;需要将…

在职硕士|2023级中国社科院-美国杜兰大学合办双证能源管理硕士(MME)

金融硕士 在职硕士|2023级中国社科院-美国杜兰大学合办双证能源管理硕士&#xff08;MME&#xff09; 中国社会科学院大学与美国杜兰大学合作举办的能源管理专业硕士学位教育项目&#xff08;UCASS-Tulane Master of Management in Energy&#xff0c;简称MME&#xff09;于2…