Android Intent 使用指南与常见操作

版权申诉
0 下载量 49 浏览量 更新于2024-07-08 收藏 56KB DOC 举报
"此文档是关于Android中Intent和Intent Action的全面总结,涵盖了各种常见的使用场景。" 在Android应用开发中,Intent是一个至关重要的组件,它用于启动其他组件、传递数据以及在应用程序之间建立通信桥梁。Intent可以分为显式Intent和隐式Intent两种类型。显式Intent明确指定要启动的目标组件,而隐式Intent则不指定具体组件,而是通过定义Action、Data、Category等属性来匹配能够处理该Intent的组件。 1. 从Google搜索内容 当你想在Google中搜索特定内容时,可以通过设置ACTION_WEB_SEARCH动作,并传递查询字符串(QUERY)来实现: ```java Intent intent = new Intent(); intent.setAction(Intent.ACTION_WEB_SEARCH); intent.putExtra(SearchManager.QUERY, "searchString"); startActivity(intent); ``` 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); ``` 4. 路径规划 路径规划可以跳转到Google Maps并设置起点和终点: ```java Uri uri = Uri.parse("http://maps.google.com/maps?f=d&daddr=endLat%20endLng&hl=en"); Intent it = new Intent(Intent.ACTION_VIEW, uri); startActivity(it); ``` 其中,startLat和startLng代表起点,endLat和endLng代表终点。 5. 拨打电话 拨打特定电话号码使用ACTION_DIAL动作和tel:协议的Uri: ```java Uri uri = Uri.parse("tel:xxxxxx"); Intent it = new Intent(Intent.ACTION_DIAL, uri); startActivity(it); ``` 6. 调用发短信程序 打开短信应用并预填短信内容,但不发送: ```java Intent it = new Intent(Intent.ACTION_VIEW); it.putExtra("sms_body", "The SMS text"); it.setType("vnd.android-dir/mms-sms"); startActivity(it); ``` 7. 发送短信 实际发送短信需要使用smsto:协议的Uri: ```java Uri uri = Uri.parse("smsto:0800000123"); Intent i = new Intent(Intent.ACTION_SENDTO, uri); i.putExtra("sms_body", "短信内容"); startActivity(i); ``` 这些例子展示了Intent在Android中的基本用法,包括启动Web浏览器、地图应用、拨打电话、发送短信等功能。在实际开发中,开发者可以根据需求灵活组合使用Intent的各种属性和动作,以实现更复杂的功能交互。理解并熟练掌握Intent的使用,对于编写高效、流畅的Android应用至关重要。