Android系统中标准Intent的使用

Android系统用于Activity的标准Intent
1.根据联系人ID显示联系人信息=

Intent intent=new Intent();
intent.setAction(Intent.ACTION_VIEW);//显示联系人信息
intent.setData(Uri.parse("content://contaccts/people/492"));
startActivity(intent);

2.根据联系人ID显示拨号面板

Intent intent=new Intent();
intent.setAction(Intent.ACTION_DIAL);//显示拨号面板
intent.setData(Uri.parse("content://contacts/people/462"));
startActivity(intent); 

3.显示拨号面板,并在拨号面板上将号码显示出来

Intent intent=new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setData(Uri.parse("tel://15216448315"));
startActivity(intent);

4.显示拨号面板,并在拨号面板上将号码显示出来

Intent intent=new Intent();
intent.setAction(Intent.ACTION_DIAL);//显示拨号面板, 并在拨号面板上将号码显示出来
intent.setData(Uri.parse("tel://15216449315"));
startActivity(intent);

5.根据联系人的ID编辑联系人

Intent intent=new Intent();
intent.setAction(Intent.ACTION_EDIT);
intent.setData(Uri.parse("content://contacts/people/492"));
startActivity(intent);

6.显示通讯录联系人和其他账号联系人的列表

Intent intent=new Intent();
intent.setAction(Intent.ACTION_VIEW);
intent.setData(Uri.parse("content://contacts/people"));
startActivity(intent);

7.启动HomeScreen

Intent intent=new Intent();
intent.setAction(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_HOME);
startActivity(intent);

8.选择某个联系人的号码,返回一个代表这个号码的uri,如:content://contacts/phones/982

Intent intent=new Intent();
intent.setAction(Intent.ACTION_GET_CONTENT);
intent.setType("vnd.android,cursor.item/phone");
startActivityForResult(intent,1);

9.打开多个应用选取各种类型的数据,以uri返回。返回的uri可使用ContentResolver.openInputStream(Uri)打开该功能可用在邮件中附件的选取
举例如下:
选取一张图片,返回的uri为content://media/external/images/media/47
选取一首歌,返回的uri为content://media/external/audio/media/51

Intent intent=new Intent();
intent.setAction(Intent.ACTION_GET_CONTENT);
intent.setType("*/*");
intent.addCategory(Intent.CATEGORY_OPENABLE);
startActivityForResult(intent,2);

10.自定义一个chooser,不使用系统的chooser,该chooser可以有自己的标题(Title)并且不必让用户指定偏好

Intent intent=new Intent();
intent.setAction(Intent.ACTION_CHOOSER);
intent.putExtra(Intent.EXTRE_TITLE,"my chooser");
intent.putExtra(Intent.EXTRA_INTENT,new Intent(Intent.ACTION_GET_CONTENT).setType("*/*").addCategory(Intent.CATEGORY_OPENABLE));
startActivityForResult(intent,2);

11.选取activity,返回activity可在返回的intent.getComponent()中得到

Intent intent=new Intent();
intent.setAction(Intent.ACTION_PICK_ACTIVITY);
intent.putExtra(Intent.EXTRA_INTENT,new Intent(Intent.ACTION_GET_CONTENT).setType("*/*").addCategory(Intent.CATEGORY_OPENABLE));
startActivityForResult(intent,3);

12.启动搜索,在以下示例代码中,“ANDROID”为搜索的字符串,当执行这段代码后,会在系统的chooser中显示可以用于搜索的程序列表

Intent intent=new Intent();
intent.setAction(Intent.ACTION_SEARCH);
intent.putExtra(SearchManager.QUERY,"ANDROID");
startActivity(intent);

13.启动WEB搜索,在以下示例代码中,“ANDROID”为要搜索的字符串,当执行这段代码后,会在系统的chooser中显示可以用于搜索的程序列表,一般情况下系统中安装的浏览器都会显示出来

Intent intent=new Intent();
intent.setAction(Intent.ACTION_WEB_SEARCH);
intent.putExtra(SearchManager.QUERY,"ANDROID");
startActivity(intent);

Android系统用于BroadcastReceiver的标准Intent
1.ACTION_TIME_TICK,系统时钟广播,系统每分钟都会发送一个这样的广播,如果在应用开发中,有些逻辑依赖于系统时钟,可以注册一个广播接收者,这是一个受保护的action,只有系统才能发送这个广播,并且,在Manifest文件中注册的广播接收者不能接受到该广播,若要接收该广播,必须在代码中注册广播接收者

registerReceiver(new BroadcastReceiver(){@overridepublic void onReceiver(Context context,Intent intent){Log.i("XXXX","TIME_TICK");}
},new IntentFilter(Intent,ACTION_TIME_TICK));

在官方文档中,列出了以下标准的广播action

ACTION_TIME_TICK               系统时钟广播
ACTION_TIME_CHANGED            时间被重新设置
ACTION_TIMEZONE_CHANGED        时区改变
ACTION_BOOT_COMPLETED          系统启动完成
ACTION_PACKAGE_ADDED           系统中安装了新的应用
ACTION_PACKAGE_CHANGED         系统中已存在的app包被更改
ACTION_PACKAGE_REMOVED         系统中已存在的app被移除
ACTION_PACKAGE_RESTARTED       用户重启了一个app,这个app的所有进程被杀死
ACTION_PACKAGE_DATA_CLEARED    用户清除了一个app的数据
ACTION_UID_REMOVED             系统中的一个user ID被移除
ACTION_BATTERY_CHANGED         电池状态改变,这是一个sticky广播
ACTION_POWER_CONNECTED         设备连接了外部电源
ACTION_POWER_DISCONNECTED      外部电源被移除
ACTION_SHUTDOWN                设备正在关机

Android中的标准类别(category)
类别(category)一般配合action使用,以下系统中的标准类别,由于数量过多,只能在使用到时再详细研究

CATEGORY_DEFAULT
CATEGORY_BROWSABLE
CATEGORY_TAB
CATEGORY_ALTERNATIVE
CATEGORY_SELECTED_ALTERNATIVE
CATEGORY_LAUNCHER
CATEGORY_INFO
CATEGORY_HOME
CATEGORY_PREFERENCE
CATEGORY_TEST
CATEGORY_CAR_DOCK
CATEGORY_DESK_DOCK
CATEGORY_LE_DESK_DOCK
CATEGORY_HE_DESK_DOCK
CATEGORY_CAR_MODE
CATEGORY_APP_MARKET

Android中的标准Extra键值
这些常量用于在调用Intent.putExtra(String,Bundle)时作为键值传递数据,同样由于数量较多,在此只列出索引

EXTRA_ALARM_COUNT
EXTRA_BCC
EXTRA_CC
EXTRA_CHANGED_COMPONENT_NAME
EXTRA_DATA_REMOVED
EXTRA_DOCK_STATE
EXTRA_DOCK_STATE_HE_DESK
EXTRA_DOCK_STATE_LE_DESK
EXTRA_DOCK_STATE_CAR
EXTRA_DOCK_STATE_DESK
EXTRA_DOCK_STATE_UNDOCKED
EXTRA_DONT_KILL_APP
EXTRA_EMAIL
EXTRA_INITIAL_INTENTS
EXTRA_INTENT
EXTRA_KEY_EVENT
EXTRA_ORIGINATING_URI
EXTRA_PHONE_NUMBER
EXTRA_REFERRER
EXTRA_REMOTE_INTENT_TOKEN
EXTRA_REPLACING
EXTRA_SHORTCUT_ICON
EXTRA_SHORTCUT_ICON_RESOURCE
EXTRA_SHORTCUT_INTENT
EXTRA_STREAM
EXTRA_SHORTCUT_NAME
EXTRA_SUBJECT
EXTRA_TEMPLATE
EXTRA_TEXT
EXTRA_TITLE
EXTRA_UID

Intent中的标志(FLAG)
Intent类中定义了一些 以FLAG_开头的标志位,这些标志位中有的非常重要,会影响APP的Activity和BroadcastReceiver等的行为。这里写图片描述

转自:http://blog.csdn.net/zhangjg_blog/article/details/10901293

转载于:https://www.cnblogs.com/Mayny/p/9374193.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/253209.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

开关电源简介

1. 基本分类 DC-DC BULK电源 DC-DC BOOST电源 DC-DC BULK/BOOST电源 DC-DC BOOST/BYPASS电源 2. 典型拓扑结构 BULK电路拓扑 降压型电源 串联关系在开关管S导通时,二极管VD负极电压高于正极反偏截止,此时电流经过电感L向电容和负载供电&#x…

Office 2016中Excel的部分快捷方式

【Ctrl下箭头】 拉到最后一行 【Alt 】一秒求和 【CtrlEnter】 一秒输入相同数据 【Ctrld】 一秒竖向填充不连续区域 【Ctrlr】 一秒向右填充数据 【Ctrle】 批量提取字符 【Ctrl1】 调出 设置单元格格式窗口 【Ctrlz】 撤销上一步操作 【Ctrly】 恢复上一步 【F4】 重复上一步…

基于Spring开发的DUBBO服务接口测试

基于Spring开发的DUBBO服务接口测试 知识共享主要内容: 1、 Dubbo相关概念和架构,以及dubbo服务程序开发步骤。 2、 基于Spring开发框架的dubbo服务接口测试相关配置。 3、 spring testjunit和spring testTestNG两种测试框架脚本编写方法。 一、 …

ioctl之FIONREAD

在学习ioctl 时常常跟 read, write 混淆。其实 ioctl 是用来设置硬件控制寄存器,或者读取硬件状态寄存器的数值之类的。 而read,write 是把数据丢入缓冲区,硬件的驱动从缓冲区读取数据一个个发送或者把接收的数据送入缓冲区。 ioctl(keyFd, FIONREAD, &a…

电感基础与选型介绍

电感是一种常见的被动元件,常用在LC振荡电路、中低频的滤波电路,DCDC能量转换电路中,其应用频率一般不超过50MHz。 1.电感的主要作用 通直流,阻交流阻交流变化,保持电流稳定----楞次定律滤波 2.电感的主要分类 3.电…

[题解]Codeforces Round #519 - B. Lost Array

【题目】 B. Lost Array 【描述】 Bajtek有一个数组x[0],x[1],...,x[k-1]但被搞丢了,但他知道另一个n1长的数组a,有a[0]0,对i1,2,...,n。由此可以找到数组x[0],x[1],...,x[k-1]的一些可能情况,即满足这个关系的数组x[0],x[1],...,…

Python正则替换字符串函数re.sub用法示例(1)

本文实例讲述了Python正则替换字符串函数re.sub用法。分享给大家供大家参考,具体如下: python re.sub属于python正则的标准库,主要是的功能是用正则匹配要替换的字符串然后把它替换成自己想要的字符串的方法re.sub 函数进行以正则表达式为基础的替换工作…

LeetCode 24 Swap Nodes in Pairs (交换相邻节点)

题目链接: https://leetcode.com/problems/swap-nodes-in-pairs/?tabDescriptionProblem: 交换相邻的两个节点如上图所示,递归进行交换。从最尾端开始,当最尾端只有一个节点时,停止交换否则执行 swap(head.next) 参考代码&#x…

Netra基于Rdk平台的软件框架设计

Netra(DM8168)处理器是个多核处理器,每个核之间相互独立却又相互关联,如何高效简洁地利用每个核完成一套系统功能是非常关键的,RDK这套软件平台就是针对这种多核平台设计的一套多通道视频应用方案,主要用于…

电感啸叫原因与应对措施

大部分硬件工程师应该都遇到过,PCBA上电后出现“滋滋滋”的叫声,其声响或大或小,或时有时无,或深沉或刺耳,或变化无常者皆有。该现象我们称为“啸叫”,一般分为电感啸叫和电容啸叫。 其中电感啸叫最为常见,尤其在DCDC电路中,大部分是因为 器件参数选择不合理 导致的。…

ASP.NET Web API 记录请求响应数据到日志的一个方法

原文:ASP.NET Web API 记录请求响应数据到日志的一个方法原文:http://blog.bossma.cn/dotnet/asp-net-web-api-log-request-response/ ASP.NET Web API 记录请求响应数据到日志的一个方法 REST风格的服务架构已经成为越来越多人的选择,之前我用过WCF来实…

Nginx + php

Nginx php 目前有两种方式1.nginx apache nginx 负责静态内容、反向代理和保持连接,apache则负责处理动态内容。 2.nginx fastcgi php-fpm一、nginx apache 采用Nginx前端Apache后端的服务器架构,这样可以很好地结合了Nginx高并发和静态页面高效率以…

Android Fragment完全解析,关于碎片你所需知道的一切

我们都知道,Android上的界面展示都是通过Activity实现的,Activity实在是太常用了,我相信大家都已经非常熟悉了,这里就不再赘述。 但是Activity也有它的局限性,同样的界面在手机上显示可能很好看,在平板上就…

图像--摄像头组成与基本参数

基本组成 Sensor: 图象传感器 FPC: 电路板 IR:红外滤波片 Holder:基座 Lens:镜头 其他 核心部件:1- SENSOR 2- LENS Sensor参数 类别 指标 参考 备注 Sensor 厂家 sony 三星 OV 格科微由原厂提供完整规格书和型号 低像素需要注意 分辨率 0.3MP (VGA)模组…

1.I2C协议

1.I2C协议2条双向串行线,一条数据线SDA,一条时钟线SCL。SDA传输数据是大端传输,每次传输8bit,即一字节。支持多主控(multimastering),任何时间点只能有一个主控。总线上每个设备都有自己的一个addr,共7个bi…

联想启天M715E安装硬盘保护系统和网络同传

现还是学生,虽然大四课上的少,实验室去的也不勤了,但指导老师有事吩咐,还是要办好的。 沈老师荣升软件实验室主任,学校给了2个机房,一个70台联想启天M715E,一个30台新的70台新主机(配…

图像--摄像头数据输出格式与传输接口

一、 数据输出格式 RAW data 格式: CMOS 在将光信号转换为电信号时的电平高低的原始记录,单纯地将没有进行任何处理的图像数据,即摄像元件直接得到的电信号进行数字化处理而得到的。 每个pixel只能感光R光或者B光或者G光&am…

计算机入门与学习回忆(一)

这个回忆,不是记录什么成功,而记录一些失败的经历。 大约初中还是高中的时候,就玩过计算机。那是一个很冷的冬天的晚上,一台华南计算机所造的仿APPLE II的计算机。 这台计算机很简陋,只有一个主机,没有屏幕…

怎么建立微信生态用户增长模型?

微信最新数据及中国网民最新数据概述截止到2018年,移动网民用户增长放缓,接近人口大盘。微信作为全国移动网民的一款超级应用,在移动网民的***率超过90%。微信最近一年的新增用户主要来自中老年用户群体和乡镇用户群体***。易观最新发布的8月…

数据库设计的三大范式

三大范式是为了了更好的设计数据库 1. 所谓第一范式(1NF)是指在关系模型中,对列添加的一个规范要求,所有的列都应该是原子性的,即数据库表的每一列都是不可分割的原子数据项,而不能是集合,数组&…