史上最全Intent调用指南:Android开发必备
需积分: 0 74 浏览量
更新于2024-09-15
收藏 64KB PDF 举报
"史上最全的 Android开发网"
在Android开发中,Intent是一种强大的工具,用于在应用程序之间、组件之间传递意图消息。这篇Android开发网的文章详细介绍了Intent的各种使用方法,包括调用不同的系统服务和功能。以下是一些关键知识点:
1. 启动浏览器:
使用`ACTION_VIEW`和`Uri.parse()`可以启动设备上的浏览器并打开指定的URL。例如:
```java
Uri uri = Uri.parse("http://example.com");
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);
```
2. 显示地图:
通过`ACTION_VIEW`和特定的Geo URI,可以在地图应用中显示指定的地理位置:
```java
Uri uri = Uri.parse("geo:38.899533,-77.036476");
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);
```
3. 规划路线:
使用Google Maps的URL格式,可以规划起点到终点的路线,并在地图应用中显示:
```java
Uri uri = Uri.parse("http://maps.google.com/maps?f=d&saddr=startLat%20startLng&daddr=endLat%20endLng&hl=en");
Intent intent = new Intent(Intent.ACTION_VIEW, uri);
startActivity(intent);
```
4. 拨打电话:
`ACTION_DIAL`用于启动拨号界面,而`ACTION_CALL`可以直接拨打电话。前者不需要权限,后者需要`CALL_PHONE`权限:
```java
Uri uri = Uri.parse("tel:10086");
Intent dialIntent = new Intent(Intent.ACTION_DIAL, uri);
startActivity(dialIntent);
// 需要在AndroidManifest.xml中添加权限
<uses-permission android:name="android.permission.CALL_PHONE" />
Intent callIntent = new Intent(Intent.ACTION_CALL, uri);
startActivity(callIntent);
```
5. 发送短信/彩信:
发送短信通常使用`ACTION_VIEW`,设置额外的短信正文和类型:
```java
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.putExtra("sms_body", "The SMS text");
intent.setType("vnd.android-dir/mms-sms");
startActivity(intent);
```
直接发送到指定号码可以使用`ACTION_SENDTO`:
```java
Uri smsUri = Uri.parse("smsto:10086");
Intent sendIntent = new Intent(Intent.ACTION_SENDTO, smsUri);
startActivity(sendIntent);
```
这些示例展示了Intent在Android开发中的基本用法,开发者可以通过Intent来实现应用程序之间的交互和用户操作的触发。了解和熟练掌握Intent的使用是每个Android开发者必备的技能。
2013-06-07 上传
2016-03-20 上传
2021-08-10 上传
2015-11-05 上传
191 浏览量
2011-11-20 上传
2017-02-22 上传
点击了解资源详情
点击了解资源详情
MrSea2010
- 粉丝: 1
- 资源: 23
最新资源
- 探索数据转换实验平台在设备装置中的应用
- 使用git-log-to-tikz.py将Git日志转换为TIKZ图形
- 小栗子源码2.9.3版本发布
- 使用Tinder-Hack-Client实现Tinder API交互
- Android Studio新模板:个性化Material Design导航抽屉
- React API分页模块:数据获取与页面管理
- C语言实现顺序表的动态分配方法
- 光催化分解水产氢固溶体催化剂制备技术揭秘
- VS2013环境下tinyxml库的32位与64位编译指南
- 网易云歌词情感分析系统实现与架构
- React应用展示GitHub用户详细信息及项目分析
- LayUI2.1.6帮助文档API功能详解
- 全栈开发实现的chatgpt应用可打包小程序/H5/App
- C++实现顺序表的动态内存分配技术
- Java制作水果格斗游戏:策略与随机性的结合
- 基于若依框架的后台管理系统开发实例解析