Android Intent:调用系统组件实例大全
需积分: 9 43 浏览量
更新于2024-09-12
收藏 15KB DOCX 举报
"这篇文档主要介绍了如何在Android中使用Intent来调用常见的系统组件,包括进行网络搜索、浏览网页、显示地图、路径规划、拨打电话和发送短信等操作。通过设置不同的Action、Category和Data,Intent可以实现不同功能的跳转和数据传递。"
在Android开发中,Intent是一个非常关键的组件,它用于在应用程序的不同组件之间进行通信,也可以用来启动系统服务或启动其他应用的组件。在以下示例中,我们将详细探讨如何使用Intent来调用常见的系统组件:
1. 网络搜索
- Intent的Action设为`ACTION_WEB_SEARCH`
- 使用`putExtra`方法添加参数`QUERY`,传入搜索关键词
- 启动Intent以打开搜索引擎
```java
Intent intent = new Intent();
intent.setAction(Intent.ACTION_WEB_SEARCH);
intent.putExtra(SearchManager.QUERY, "searchString");
startActivity(intent);
```
2. 浏览网页
- Intent的Action设为`ACTION_VIEW`
- 使用`Uri.parse`创建网页URL的Uri对象
- 将Uri与Intent关联
- 启动Intent以打开浏览器
```java
Uri uri = Uri.parse("http://www.google.com");
Intent it = new Intent(Intent.ACTION_VIEW, uri);
startActivity(it);
```
3. 显示地图
- Intent的Action同样设为`ACTION_VIEW`
- 创建表示地理位置的Uri,如`geo:latitude,longitude`
- 启动Intent以打开地图应用
```java
Uri uri = Uri.parse("geo:38.899533,-77.036476");
Intent it = new Intent(Intent.ACTION_VIEW, uri);
startActivity(it);
```
4. 路径规划
- 创建包含起始和目的地的URL,如`http://maps.google.com/maps?f=d&source=s_q&hl=en&geocode&q=startAddress&ie=UTF8&t=h&z=14&sll=...`
- Intent的Action设为`ACTION_VIEW`
- 设置Uri并启动Intent
```java
Uri uri = Uri.parse("http://maps.google.com/maps?f=dsaddr=startLat%20startLng&daddr=endLat%20endLng&hl=en");
Intent it = new Intent(Intent.ACTION_VIEW, uri);
startActivity(it);
```
5. 拨打电话
- 使用`ACTION_DIAL` Action拨打电话
- 创建表示电话号码的Uri
- 启动Intent
```java
Uri uri = Uri.parse("tel:xxxxxx");
Intent it = new Intent(Intent.ACTION_DIAL, uri);
startActivity(it);
```
6. 发送短信
- Intent的Action设为`ACTION_VIEW`
- 设置短信内容作为`sms_body`的额外数据
- 指定Intent类型为`"vnd.android-dir/mms-sms"`
- 启动Intent以打开短信应用
```java
Intent it = new Intent(Intent.ACTION_VIEW);
it.putExtra("sms_body", "TheSMStext");
it.setType("vnd.android-dir/mms-sms");
startActivity(it);
```
以上就是使用Intent调用Android系统组件的一些基本操作。Intent不仅可以用于启动这些系统组件,还可以用于启动自定义的Activity,传递数据,或者触发BroadcastReceiver等。理解Intent的工作原理对于Android开发至关重要,因为它几乎贯穿于应用程序的各个层面。记住,Intent的灵活性使得它可以适应各种场景,但同时也需要注意权限问题,例如拨打电话和发送短信可能需要请求相应的权限。在实际开发中,开发者应根据需求灵活运用Intent,并确保符合安全性和用户体验的最佳实践。
点击了解资源详情
165 浏览量
284 浏览量
117 浏览量
636 浏览量
2013-08-04 上传
634 浏览量
智欣悦
- 粉丝: 82
- 资源: 8