Android:启动其他应用程序的完整指南

5星 · 超过95%的资源 需积分: 20 52 下载量 18 浏览量 更新于2024-09-16 收藏 19KB DOCX 举报
"这篇资料主要介绍了在Android平台上如何通过Intent对象实现从当前应用跳转到其他应用的功能,包括搜索引擎查询、浏览网页、显示地图、路径规划、拨打电话、启动短信编辑器以及发送短信等操作。" 在Android开发中,Intent是连接各个组件的重要桥梁,它用于启动其他应用程序组件或启动系统服务。以下将详细解析如何使用Intent进行各种类型的跳转: 1. 搜索引擎查询: 当你想让用户在系统默认的搜索引擎中进行特定内容的搜索时,可以创建一个Intent,设置ACTION_WEB_SEARCH行动,并使用`putExtra()`方法添加查询字符串。例如: ```java Intent intent = new Intent(); intent.setAction(Intent.ACTION_WEB_SEARCH); intent.putExtra(SearchManager.QUERY, "searchString"); startActivity(intent); ``` 这行代码会启动设备上的搜索引擎,并将"searchString"作为搜索关键词。 2. 浏览网页: 如果要打开一个网页,你可以使用ACTION_VIEW行动和一个Uri对象来指定网页URL: ```java Uri uri = Uri.parse("http://www.google.com"); Intent it = new Intent(Intent.ACTION_VIEW, uri); startActivity(it); ``` 这会启动浏览器并加载指定的网页。 3. 显示地图: 显示地图通常需要ACTION_VIEW行动和Geo URI。下面的代码会展示地图应用中的特定位置: ```java Uri uri = Uri.parse("geo:38.899533,-77.036476"); Intent it = new Intent(Intent.ACTION_VIEW, uri); startActivity(it); ``` 这里坐标(38.899533,-77.036476)表示华盛顿特区的位置。 4. 路径规划: 要在地图应用中规划路径,你需要构建一个指向Google Maps的URL,包含起点和终点的经纬度,然后用ACTION_VIEW启动: ```java String url = "http://maps.google.com/maps?"+ "f=d&source=s_q&" + "hl=en&geocode=&q=startLat,startLng&" + "daddr=endLat,endLng"; Uri uri = Uri.parse(url); Intent it = new Intent(Intent.ACTION_VIEW, uri); startActivity(it); ``` 替换startLat、startLng、endLat和endLng为实际的坐标值。 5. 拨打电话: 拨打电话可以使用ACTION_DIAL行动和电话号码的Uri,但不会自动拨打,用户需要确认: ```java Uri uri = Uri.parse("tel:xxxxxx"); Intent it = new Intent(Intent.ACTION_DIAL, uri); startActivity(it); ``` 请将"xxxxxx"替换为实际电话号码。 6. 启动短信编辑器: 若要启动短信编辑界面,创建ACTION_VIEW Intent,并指定短信内容: ```java Intent it = new Intent(Intent.ACTION_VIEW); it.putExtra("sms_body", "TheSMStext"); it.setType("vnd.android-dir/mms-sms"); startActivity(it); ``` 用户可以在此基础上编辑并发送短信。 7. 发送短信: 直接发送短信则需要ACTION_SENDTO行动,指定接收方号码和短信内容: ```java Uri uri = Uri.parse("smsto:0800000123"); Intent it = new Intent(Intent.ACTION_SENDTO, uri); it.putExtra("sms_body", "TheSMStext"); startActivity(it); ``` 请将"0800000123"替换为目标号码,"TheSMStext"为要发送的文本。 以上代码示例展示了Android应用中通过Intent实现不同功能的跳转,这些功能覆盖了日常应用间交互的基本需求。在实际开发中,记得处理可能的异常,并确保目标应用已安装,以避免因缺少应用导致的崩溃。