Android App之间通过Intent交互

Android 最重要的功能之一是应用能够基于它要执行的“操作”向另一个应用发送用户。 例如,如果您的应用有您要在地图上显示的公司地址,您无需在显示地图的应用中构建 Activity。 而是可以创建使用 Intent 查看地址的请求。Android 系统之后启动可以在地图上显示该地址的应用。

用 Intent 在自己应用中的 Activity 之间进行导航。 您通常使用显式 Intent 执行此操作,该 Intent 定义您希望启动的组件的确切类名称。 但是,当您希望另一应用执行操作时,比如“查看地图”,您必须使用隐含 Intent。

展示如何针对特定操作创建隐含 Intent,以及如何使用该 Intent 启动在另一个应用中执行操作的 Activity。

构建隐含 Intent

隐含 Intent 不声明要启动的组件的类名称,而是声明要执行的操作。 该操作指定您要执行的操作,比如查看、编辑、发送或 获取 某项。 Intent 通常还包含与操作关联的数据,比如您要查看的地址或您要发送的电子邮件消息。根据要创建的 Intent,数据可能是 Uri、多种其他数据类型之一,或 Intent 可能根本就不需要数据。

如果您的数据是 Uri,您可以使用一个简单的 Intent() 构造函数来定义操作和数据。

例如,此处显示如何使用指定电话号码的 Uri 数据创建发起电话呼叫的 Intent:

Uri number = Uri.parse(“tel:5551234”);
Intent callIntent = new Intent(Intent.ACTION_DIAL, number);
当您的应用通过调用 startActivity() 调用此 Intent 时,“电话”应用会发起向指定电话号码的呼叫。

这里有一些其他 Intent 及其操作和 Uri 数据对:

查看地图:

// Map point based on address
Uri location = Uri.parse(“geo:0,0?q=1600+Amphitheatre+Parkway,+Mountain+View,+California”);
// Or map point based on latitude/longitude
// Uri location = Uri.parse(“geo:37.422219,-122.08

  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值