转:Intent 操作常用URI代码示例
以下是常用到的Intent的URI及其示例,包含了大部分应用中用到的共用Intent
一、打开一个网页,类别是Intent.ACTION_VIEW
|
1
2
|
Uri uri = Uri.parse("http://www.android-study.com/");Intent intent = new Intent(Intent.ACTION_VIEW, uri); |
二、打开地图并定位到一个点
|
1
2
|
Uri uri = Uri.parse("geo:52.76,-79.0342");Intent intent = new Intent(Intent.ACTION_VIEW, uri); |
三、打开拨号界面,类型是Intent.ACTION_DIAL
|
1
2
|
Uri uri = Uri.parse("tel:10086");Intent intent = new Intent(Intent.ACTION_DIAL, uri); |
四、直接拨打电话,与三不同的是,这个直接拨打电话,而不是打开拨号界面
|
1
2
|
Uri uri = Uri.parse("tel:10086");Intent intent = new Intent(Intent.ACTION_CALL, uri); |
五、卸载一个应用,Intent的类别是Intent.ACTION_DELETE
|
1
2
|
Uri uri = Uri.fromParts("package", "xxx", null);Intent intent = new Intent(Intent.ACTION_DELETE, uri); |
六、安装应用程序,Intent的类别是Intent.ACTION_PACKAGE_ADDED
|
1
2
|
Uri uri = Uri.fromParts("package", "xxx", null);Intent intent = new Intent(Intent.ACTION_PACKAGE_ADDED, uri); |
七、播放音频文件
|
1
2
3
|
Uri uri = Uri.parse("file:///sdcard/download/everything.mp3");Intent intent = new Intent(Intent.ACTION_VIEW, uri);intent.setType("audio/mp3"); |
八、打开发邮件界面
|
1
2
|
Uri uri= Uri.parse("mailto:admin@android-study.com");Intent intent = new Intent(Intent.ACTION_SENDTO, uri); |
九、发邮件,与八不同这里是将邮件发送出去
|
1
2
3
4
5
6
7
8
|
Intent intent = new Intent(Intent.ACTION_SEND);String[] tos = { "admin@android-study.com" };String[] ccs = { "webmaster@android-study.com" };intent.putExtra(Intent.EXTRA_EMAIL, tos);intent.putExtra(Intent.EXTRA_CC, ccs);intent.putExtra(Intent.EXTRA_TEXT, "I come from http://www.android-study.com");intent.putExtra(Intent.EXTRA_SUBJECT, "http://www.android-study.com");intent.setType("message/rfc882");Intent.createChooser(intent, "Choose Email Client"); |
//发送带附件的邮件
|
1
2
3
4
5
|
Intent intent = new Intent(Intent.ACTION_SEND);intent.putExtra(Intent.EXTRA_SUBJECT, "The email subject text");intent.putExtra(Intent.EXTRA_STREAM, "file:///sdcard/mysong.mp3");intent.setType("audio/mp3");startActivity(Intent.createChooser(intent, "Choose Email Client")); |
十、发短信
|
1
2
3
4
|
Uri uri= Uri.parse("tel:10086");Intent intent = new Intent(Intent.ACTION_VIEW, uri);intent.putExtra("sms_body", "I come from http://www.android-study.com");intent.setType("vnd.Android-dir/mms-sms"); |
十一、直接发短信
|
1
2
3
|
Uri uri= Uri.parse("smsto://100861");Intent intent = new Intent(Intent.ACTION_SENDTO, uri);intent.putExtra("sms_body", "3g android http://www.android-study.com"); |
十二、发彩信
|
1
2
3
4
5
|
Uri uri= Uri.parse("content://media/external/images/media/23");Intent intent = new Intent(Intent.ACTION_SEND);intent.putExtra("sms_body", "3g android http://www.android-study.com");intent.putExtra(Intent.EXTRA_STREAM, uri);intent.setType("image/png"); |
十三、# Market 相关
|
1
2
3
4
5
6
7
8
9
10
11
12
13
|
1 //寻找某个应用Uri uri = Uri.parse("market://search?q=pname:pkg_name");Intent it = new Intent(Intent.ACTION_VIEW, uri);startActivity(it);//where pkg_name is the full package path for an application2 //显示某个应用的相关信息Uri uri = Uri.parse("market://details?id=app_id");Intent it = new Intent(Intent.ACTION_VIEW, uri);startActivity(it);//where app_id is the application ID, find the ID//by clicking on your application on Market home//page, and notice the ID from the address bar |
十四、路径规划
|
1
2
3
4
|
Uri uri = Uri.parse("http://maps.google.com/maps?f=d&saddr=startLat%20startLng&daddr=endLat%20endLng&hl=en");Intent it = new Intent(Intent.ACTION_VIEW, uri);startActivity(it);//where startLat, startLng, endLat, endLng are a long with 6 decimals like: 50.123456 |
十五、安装指定apk
|
1
2
3
4
5
6
|
public void setupAPK(String apkname){ String fileName = Environment.getExternalStorageDirectory() + "/" + apkname; Intent intent = new Intent(Intent.ACTION_VIEW); intent.setDataAndType(Uri.fromFile(new File(fileName)), "application/vnd.android.package-archive"); mService.startActivity(intent);} |
十六、进入联系人页面
|
1
2
3
4
|
Intent intent = new Intent();intent.setAction(Intent.ACTION_VIEW);intent.setData(People.CONTENT_URI);startActivity(intent); |
十七、查看指定联系人
|
1
2
3
4
5
|
Uri personUri = ContentUris.withAppendedId(People.CONTENT_URI, info.id);// info.id联系人IDIntent intent = new Intent();intent.setAction(Intent.ACTION_VIEW);intent.setData(personUri);startActivity(intent); |
十八、调用相册
|
1
2
3
4
5
6
|
public static final String MIME_TYPE_IMAGE_JPEG = "image/*";public static final int ACTIVITY_GET_IMAGE = 0;Intent getImage = new Intent(Intent.ACTION_GET_CONTENT);getImage.addCategory(Intent.CATEGORY_OPENABLE);getImage.setType(MIME_TYPE_IMAGE_JPEG);startActivityForResult(getImage, ACTIVITY_GET_IMAGE); |
十九、调用系统相机应用程序,并存储拍下来的照片
|
1
2
3
4
5
|
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);time = Calendar.getInstance().getTimeInMillis();intent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(new File(Environment.getExternalStorageDirectory().getAbsolutePath()+"/tucue", time + ".jpg")));startActivityForResult(intent, ACTIVITY_GET_CAMERA_IMAGE); |
转:Intent 操作常用URI代码示例的更多相关文章
- SELECT控件操作的JS代码示例
SELECT控件操作的JS代码示例 1 检测是否有选中 if(objSelect.selectedIndex > -1) { //说明选中 } else { //说明没有选中 } 2.动态创建s ...
- php操作redis常用方法代码示例
redis 的连接 描述:实例连接到一个Redis. 参数:host: string,port: int 返回值:BOOL 成功返回:TRUE;失败返回:FALSE $redis = new Red ...
- python---Numpy模块中创建数组的常用方式代码示例
要机器学习,这方面内容不可少. import numpy as np import time # 对比标准python实现和numpy实现的性能差异 def sum_trad(): start = t ...
- Python操作JSON数据代码示例
#!/usr/bin/env python import json import os def json_test(): return_dic = {} json_data = { 'appid':' ...
- Android开发常用的Intent的URI及示例
参考资料:http://www.oschina.net/code/snippet_166763_6502 //以下是常用到的Intent的URI及其示例,包含了大部分应用中用到的共用Intent. / ...
- Lambda表达式常用代码示例
Lambda表达式常用代码示例 2017-10-24 目录 1 Lambda表达式是什么2 Lambda表达式语法3 函数式接口是什么 3.1 常用函数式接口4 Lambdas和Streams结合使 ...
- 生活常用类API调用的代码示例合集:邮编查询、今日热门新闻查询、区号查询等
以下示例代码适用于 www.apishop.net 网站下的API,使用本文提及的接口调用代码示例前,您需要先申请相应的API服务. 邮编查询:通过邮编查询地名:通过地名查询邮编 今日热门新闻查询:提 ...
- 【嵌入式开发】裸机引导操作系统和ARM 内存操作 ( DRAM SRAM 类型 简介 | Logical Bank | 内存地址空间介绍 | 内存芯片连接方式 | 内存初始化 | 汇编代码示例 )
[嵌入式开发]ARM 内存操作 ( DRAM SRAM 类型 简介 | Logical Bank | 内存地址空间介绍 | 内存芯片连接方式 | 内存初始化 | 汇编代码示例 ) 一. 内存 ...
- Android总结篇——Intent机制详解及示例总结
最近在进行android开发过程中,在将 Intent传递给调用的组件并完成组件的调用时遇到点困难,并且之前对Intent的学习也是一知半解,最近特意为此拿出一些时间,对Intent部分进行 ...
随机推荐
- 分布式配置系统Apollo如何实时更新配置的?
引言 记得我们那时候刚开始学习Java的时候都只是一个单体项目,项目里面的配置基本都是写在项目里面的properties文件中,比如数据库配置啥的,各种逻辑开关,一旦这些配置修改了,还需要重启项目这修 ...
- Centos8 Docker部署ElasticSearch集群
ELK部署 部署ElasticSearch集群 1.拉取镜像及批量生成配置文件 # 拉取镜像 [root@VM-24-9-centos ~]# docker pull elasticsearch:7. ...
- Java的初始化过程
在刷题的过程中,时常会碰到关于Java中的类的初始化顺序的问题. 总结如下,便于以后复习: 初始化过程: 首先,初始化父类中的静态成员变量和静态代码块,按照在程序中出现的顺序初始化: 然后,初始化子类 ...
- [loj3347]有趣的旅途
考虑求出重心,以0为根建树,求出第 $i$个点的子树大小$sz[i]$($a(0,i)$),则满足$n-sz[i]\le \lfloor\frac{n}{2}\rfloor$的$sz[i]$中的最小值 ...
- 【Redis】(1)-- 关系型数据库与非关系型数据库
关系型数据库与非关系型数据库 2019-07-02 16:34:48 by冲冲 1. 关系型数据库 1.1 概念 关系型数据库,是指采用了关系模型来组织数据的数据库.关系模型指的就是二维表格模型, ...
- vue局部过滤器和全局过滤器
全局过滤器在main.js中写 //注册全局过滤器 Vue.filter('wholeMoneyFormat',(value)=>{ return '¥'+Number(value).toF ...
- 洛谷 P7163 - [COCI2020-2021#2] Svjetlo(树形 dp)
洛谷题面传送门 神仙级别的树形 dp. u1s1 这种代码很短但巨难理解的题简直是我的梦魇 首先这种题目一看就非常可以 DP 的样子,但直接一维状态的 DP 显然无法表示所有情况.注意到对于这类统计一 ...
- 洛谷 P5540 - [BalkanOI2011] timeismoney | 最小乘积生成树(最小生成树)
洛谷题面传送门 大概是一个比较 trivial 的小 trick?学过了就不要忘了哦( 莫名奇妙地想到了 yyq 的"hot tea 不常有,做过了就不能再错过了" 首先看到这种二 ...
- 洛谷 P7718 -「EZEC-10」Equalization(差分转化+状压 dp)
洛谷题面传送门 一道挺有意思的题,现场切掉还是挺有成就感的. 首先看到区间操作我们可以想到差分转换,将区间操作转化为差分序列上的一个或两个单点操作,具体来说我们设 \(b_i=a_{i+1}-a_i\ ...
- Perl 语言入门6-9
---- 第6章 哈希----------- 简介 键值对.键和值都是任意标量,但键总是会被转换成字符串. 键唯一,值可重复. 应用场景:一组数据对应到另一组数据时. 如找出重复/唯一/交叉引用/查表 ...