Android 2.2平台API变化概述

API 变化概述

应用在外部存储介质的安装

Android平台现在支持应用主动要求安装在外部存储设备(如SD卡),以取代将其安装在设备的内部存储区。

应用开发者可以通过manifest文件里一个新的<menifest>属性来说明更希望将应用安装在哪里,即Android:installLocation。这个属性支持三个值:”internalOnly”,”preferExternal”,”auto”。可能的话在安装时,系统会检查android:installLocation的值,根据倾向的位置安装应用的.apk。如果应用要求安装在外部,系统会将其安装在外部存储介质的一个私有加密的分区上。一旦应用的.apk被安装在外部,系统会通过用户设定里的应用管理(Manage Applications)来使用户可以在需要的时候将其移动到内部存储区域,反之也是一样。

默认情况下,系统将所有应用安装在设备的内部存储区,那些明确要求安装在外部的除外。这意味着系统总是将先前的应用安装在内部存储区,因为它们没有android:installLocation属性。不过必要的时候,仍然可以通过编译和配置来控制先前的应用,针对旧版本的平台将其安装在内部,针对Android2.2及以后的版本将其安装在外部。

更多的关于设置应用的安装位置的信息,包括什么类型的应用应当安装在外部,什么类型应用应当安装在内部,请参考App Install Location 文档。

备份管理(Backup Manager)

平台现在提供一个通用的备份服务,应用可以用来备份和恢复用户数据,使得用户可以在更换设备或者重新安装应用时保留他们的数据。Backup Manager负责应用的数据在云端备份存储区域的传输。Backup Manager可以存储任何类型的数据,从二进制数据到文件,并且备份和恢复的操作是以原子操作的方式进行的。更多信息请参考Data Backup。

图像(Graphics)

新增加OpenGL ES2.0 API 在android.opengl.GLES20。

新增加ETC1,ETC1Util和ETC1Util.ETC1Texture类,增加了一些ETC1纹理压缩使用的设备方法。

新增加ImageFormat类。

新增加YUV图像格式API,支持从YUV到JPEG的压缩,以及相关YUV数据的操作。

媒体(Media)

新增了一些android.media.AudioManager里的接口,用来管理audio focus,传输控制,音频focus的瞬间丢失和闪烁。

新增音频和SCO的通信用的广播intent—ACTION_SCO_AUDIO_STATE_CHANGED及额外的新指示状态。

新增了一些SoundPool里的接口,用来检测声音加载是否完成。

新增了一些SoundPool里的接口,用来暂停和恢复音频。

新增了一些MediaRecorder里的接口,用来指定音频设置,包括:channel数,编解码率,取样率。

新增了针对媒体数据库添加文件的接口,这样这些文件可以自动被扫描到。参考:MediaScannerConnection.scanFile和MediaScannerConnection.OnScanCompletedListener。

api

相关推荐