Android Intent调用 Uri的方法总结
Android Intent调用 Uri的方法总结 //调用浏览器 Uri uri = Uri.parse(); Intent it = new Intent(Intent.ACTION_VIEW,uri); startActivity(it); //显示某个坐标在地图上 Uri uri = Uri.parse(geo:38.899533,-77.036476); Intent it = new Intent(Intent.Action_VIEW,uri); startActivity(it); //显示路径 Uri uri = Uri.parse(http://ma 在Android开发中,Intent是应用之间通信的重要工具,它可以用于启动其他活动、服务或者广播接收器。本篇文章将深入探讨如何使用Intent与Uri相结合来实现各种功能。 调用浏览器是一个常见的操作。通过以下代码,你可以打开指定的网页: ```java Uri uri = Uri.parse("http://www.example.com"); Intent it = new Intent(Intent.ACTION_VIEW, uri); startActivity(it); ``` 显示特定坐标在地图上,如美国白宫的位置,可以这样实现: ```java Uri geoUri = Uri.parse("geo:38.899533,-77.036476"); Intent mapIntent = new Intent(Intent.ACTION_VIEW, geoUri); startActivity(mapIntent); ``` 显示路径则需要构造一个指向Google Maps的Uri,如下所示: ```java Uri routeUri = Uri.parse("http://maps.google.com/maps?f=d&saddr=startLat%20startLng&daddr=endLat%20endLng&hl=en"); Intent routeIntent = new Intent(Intent.ACTION_VIEW, routeUri); startActivity(routeIntent); ``` 其中,`startLat`和`startLng`是起点坐标,`endLat`和`endLng`是终点坐标。 拨打电话,可以通过ACTION_DIAL或者ACTION_CALL来实现,前者只打开拨号界面,后者直接拨打电话。ACTION_CALL需要在AndroidManifest.xml中添加`<uses-permission android:name="android.permission.CALL_PHONE" />`权限: ```java Uri callUri = Uri.parse("tel:10086"); Intent dialIntent = new Intent(Intent.ACTION_DIAL, callUri); startActivity(dialIntent); Uri callUri = Uri.parse("tel:10086"); Intent callIntent = new Intent(Intent.ACTION_CALL, callUri); callIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); startActivity(callIntent); ``` 发送短信,可以使用ACTION_VIEW或ACTION_SENDTO,ACTION_SENDTO可以指定收件人: ```java Uri smsUri = Uri.parse("smsto:10086"); Intent sendSmsIntent = new Intent(Intent.ACTION_SENDTO, smsUri); sendSmsIntent.putExtra("sms_body", "The SMS text"); startActivity(sendSmsIntent); ``` 发送彩信,需要附加一个多媒体资源,并指定类型为图像: ```java Uri imageUri = Uri.parse("content://media/external/images/media/23"); Intent sendMmsIntent = new Intent(Intent.ACTION_SEND); sendMmsIntent.putExtra("sms_body", "some text"); sendMmsIntent.putExtra(Intent.EXTRA_STREAM, imageUri); sendMmsIntent.setType("image/png"); startActivity(sendMmsIntent); ``` 发送邮件,ACTION_SENDTO可指定收件人邮箱,ACTION_SEND则可以设置多个收件人、抄送人,主题和正文: ```java Uri emailUri = Uri.parse("mailto:android123@163.com"); Intent sendEmailIntent = new Intent(Intent.ACTION_SENDTO, emailUri); startActivity(sendEmailIntent); Intent sendEmailIntent = new Intent(Intent.ACTION_SEND); String[] tos = {"me@abc.com"}; String[] ccs = {"you@abc.com"}; sendEmailIntent.putExtra(Intent.EXTRA_EMAIL, tos); sendEmailIntent.putExtra(Intent.EXTRA_CC, ccs); sendEmailIntent.putExtra(Intent.EXTRA_TEXT, "The email body text"); sendEmailIntent.putExtra(Intent.EXTRA_SUBJECT, "The email subject text"); sendEmailIntent.setType("message/rfc822"); startActivity(Intent.createChooser(sendEmailIntent, "Choose Email Client")); ``` 播放媒体文件,例如音频或视频,可以使用ACTION_VIEW并指定媒体内容的Uri: ```java Uri mediaUri = Uri.parse("file:///path/to/your/media/file.mp4"); Intent playMediaIntent = new Intent(Intent.ACTION_VIEW); playMediaIntent.setDataAndType(mediaUri, "video/mp4"); startActivity(playMediaIntent); ``` 以上就是Android Intent调用Uri的各种方法,涵盖了浏览网页、查看地图、拨打电话、发送短信、彩信、邮件以及播放媒体文件等常见功能。了解这些方法,开发者可以更灵活地在Android应用间进行数据共享和交互。
- 粉丝: 6
- 资源: 988
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
- 1
- 2
前往页