备注:之前Android入门学习的书籍使用的是杨丰盛的《Android应用开发揭秘》,这本书是基于Android 2.2API的,目前Android已经到4.4了,更新了很多的API,也增加了很多的新组件,一直没有系统的学习过。现在开始这个“完善Android学习”系列,将2.2以后的新知识做一个概览。概览来自:http://developer.android.com/about/versions/android-4.0.3.html

Android4.0.3(ICE_CREAM_SANDWICH_MR1)是Android4.0的一个增发版本,这一版增加了一些新的特性以及修复了一些BUGS。

API OverView

Social stream API in Contacts Provider

使用社交流数据作为状态更细和检查的应用现在已经允许使用用户的联系人进行数据同步了,并且为每一个联系人提供照片和相关的数据项。

包含联系人的社交流的数据库表室友ContactsContract.StreamItems定义的。每个社交流表都包含了关于每个流项的元数据的列,比如一个图标,一个标签,原始的文字内容,以及评论等等。有关流的照片会存储在由ContractsContract.StreamItemPhotos定义的另外一张表中,可以由ContactsContract.StreamItems Uri的子目录得到。

为了从一个联系人中读写社交流项,应用必须要求权限:<uses-permission android:name="android.permission.READ_SOCIAL_STREAM"> 和 <uses-permission android:name="android.permission.WRITE_SOCIAL_STREAM">

Calendar Provicer

1)添加了CalendarContract.Colors来表示Calendar Provider中的一个颜色表。这个类为每一个账户的可访问的颜色提供了属性。颜色由账户的名字/类型的唯一的COLOR_KEY引用得到,这些值只能被同步适配器更新。(不是很明白)

2)为交互/同步支持提供ALLOWED_AVAILABLITY和ALLOWED_AATENDEE_TYPES;

3)Adds TYPE_RESOURCE (such as conference rooms) for attendees and AVAILABILITY_TENTATIVE, as well asEVENT_COLOR_KEY for events.

Home screen widgets

从Android4.0开始,home screen上的widget不能再有自己的padding,系统会依据当前屏幕的特征自动为每一个widget添加padding。这可以使得在一个grid中展示的widget更加统一一致。为了协助拥有home screen widget的应用,平台提供了一个新的方法叫做getDefaultPaddingForWidget()。应用可以调用这个方法获取系统定义的padding,然后用于计算每如何防止cell。

UItoolkit

新的方法setUserVisibleHint()和getUserVisibleHint()允许fragment设置一个fragment当前是否可见的提示。系统延迟用户不可见的fragments的启动知道可见的fragment的加载器运行起来,可见的提示默认为"true"。

Graphics

1)SurfaceTexture新的方法setDefaultBufferSize(int, int)可以设置图片缓存的默认大小,这个方法在Canvas上或者OpenGL ES上生产图片的时候,可以用来设置图片的尺寸。

2)为OpenGL ES 扩展GL_OES_EGL_image_external添加了更多的枚举值定义:GL_REQUIRED_TEXTURE_IMAGE_UNITS_OES, GL_SAMPLER_EXTERNAL_OES, GL_TEXTURE_BINDING_EXTERNAL_OES, and GL_TEXTURE_EXTERNAL_OES;

Database

1)新的类CrossProcessCursorWrapper让content provider查询从一个cross-process的查询中获取结果更加高效。这个类是cursor的有效封装,可以被发送到远程的进程中去,它也可以将一个普通的cursor对象透明的转化成CrossProcessorCursor对象;

2)CursorWindow构造器现在需要一个name字符串作为输入,系统不再区分本地和远程的cursor windows,所以CursorWindow(boolean)现在被废弃了。

Intents

增添了针对设备上基础应用访问的类别,比如deferCATEGORY_APP_BROWSER, CATEGORY_APP_CALENDAR, CATEGORY_APP_MAPS等。

Camera

1)MediaMetadataRetriever增添了新的常量METADATA_KEY_LOCATION来让应用获得照片或者视频的位置信息;

2)CamcorderProfile添加了QVGA(320*240)分辨率,质量等级表示为QUALITY_QVGA和QUALITY_TIME_LAPSE_QVGA常量。

3)新的方法 setVideoStabilization(), setVideoStabilization(), and isVideoStabilizationSupported()当开发者可以检测个管理Camear的稳定性;

Permissions

两个新的权限:

READ_SOCIAL_STREAM和WRITE_SOCIAL_STREAM

最新文章

  1. Java Web总结
  2. WPF学习之路(十一)布局(续)
  3. java实战之解析xml
  4. C++复数四则运算的实现
  5. 2016最全的web前端面试题及答案整理
  6. JavaScript对象就是一组属性(方法)的集合
  7. OD: Kernel Vulnerabilities Analyze
  8. [原创作品]一个实用的js倒计时器 postby:zhutty.cnblogs.com
  9. jQuery中wrap、wrapAll和wrapInner用法以及区别
  10. Java良葛格 学习笔记
  11. CentOS6.5yum配置本地源
  12. Python列表的三种遍历(序号和值)的方法
  13. android 手机拍照返回 Intent==null 以及intent.getData==null
  14. java中使用jdbc配置连接串时mysql 5.6与5.7版本“编码”参数有区别!
  15. Unity shader学习之Alpha Test
  16. 手打struts知识点
  17. 如何在Twitter开发者平台上注册自己的应用
  18. python的print
  19. VS2012 Nuget 安装 AutoMapper时报错的解决方法
  20. 《快学Scala》第一章 基础

热门文章

  1. Scrum立会报告+燃尽图(十月三十日总第二十一次)
  2. 2018-2019-20172321 《Java软件结构与数据结构》第五周学习总结
  3. 《C》数据类型
  4. Scala快速入门-函数组合
  5. Qt下Doxygen使用
  6. POI操作Excel异常Cannot get a text value from a numeric cell
  7. 有一个集合,判断集合里有没有“world”这个元素,如果有,添加“javaee”
  8. Hibernate 中 load() 方法导致的 noSession 异常
  9. SQLSERVER数据集合的交、并、差集运算(intersect,union,except)
  10. ADB抓取日志和日志过滤