Android 2.3 API改变大全
Android 2.3的API Level为9,有关所有的API改变,Android123帮助大家总结如下:
新增包
android.media.audiofx混响音效
android.net.sipVOIP支持
android.nfcNFC支付支持
android.os.storage存储管理类
详细的请查看Android2.3新特性及改进列表,已正式发布一文
移除类
VMDebug
VMRuntime
VMStack
Zygote
更多改进
ExtraLargeScreens
目前Android2.3将支持更大的屏幕尺寸定义,开发者可以通过<supportsscreens...android:xlargeScreens="true">元素在你的manifestfiles中定义,新增的xlarge标记将支持更多的屏幕尺寸,有关具体的使用方法,Android开发网将在今后的文章中讲到。.
Graphics
添加保留了OpenGLES2.0中的glDrawElements()和glVertexAttribPointer()方法在android.opengl.GLES20类中.
新增YV12pixel格式和4:2:0YCrCb格式的支持。
ContentProviders
NewAlarmClockproviderclassforsettinganalarmorhandlinganalarm.TheprovidercontainsaACTION_SET_ALARMIntentactionandextrasthatcanbeusedtostartanActivitytosetanewalarminanalarmclockapplication.ApplicationsthatwishtoreceivetheSET_ALARMIntentshouldcreateanactivitythatrequiresthetheSET_ALARMpermission.ApplicationsthatwishtocreateanewalarmshoulduseContext.startActivity(),sothattheuserhastheoptionofchoosingwhichalarmclockapplicationtouse.
MediaStoresupportsanewIntentaction,PLAY_FROM_SEARCH,thatletsanapplicationsearchformusicmediaandautomaticallyplaycontentfromtheresultwhenpossible.Forexample,anapplicationcouldfirethisIntentastheresultofavoicerecognitioncommandtolistentomusic.
MediaStorealsoaddsanewMEDIA_IGNORE_FILENAMEflagthattellsthemediascannertoignoremediainthecontainingdirectoryanditssubdirectories.DeveloperscanusethistoavoidhavinggraphicsappearintheGalleryandlikewisepreventapplicationsoundsandmusicfromshowingupintheMusicapp.
TheSettingsprovideraddsthenewActivityactionsAPPLICATION_DETAILS_SETTINGSandMANAGE_ALL_APPLICATIONS_SETTINGS,whichletanapplicationshowthedetailsscreenforaspecificapplicationorshowtheManageApplicationsscreen.
TheContactsContractprovideraddstheContactsContract.CommonDataKinds.SipAddressdatakind,forstoringacontact'sSIP(Internettelephony)address.
Location
LocationManager类可以跟踪程序请求wakelocks或wifilocks的结果通过toWorkSource类,让系统管理指定的程序.
TheLocationManagerkeepstrackofallclientsrequestingperiodicupdates,andtellsitsprovidersaboutthemasaWorkSourceparameter,whensettingtheirminimumupdatetimes.ThenetworklocationproviderusesWorkSourcetotrackthewakeandwifilocksinitiatedbyanapplicationandaddsittotheapplication'sbatteryusagereportedinManageApplications.
TheLocationManageraddsseveralnewmethodsthatletanActivityregistertoreceiveperiodicorone-timelocationupdatesbasedonspecifiedcriteria(seebelow).
AnewCriteriaclassletsanapplicationspecifyasetofcriteriaforselectingalocationprovider.Forexample,providersmaybeorderedaccordingtoaccuracy,powerusage,abilitytoreportaltitude,speed,andbearing,andmonetarycost.
Storage
Android2.3新增StorageManager类支持OBB(OpaqueBinaryBlob)文件在Android2.3上开发恐惧创建和管理OBB文件将在2011年早期无法使用。
加入一些判断虚拟SD分区,Android123提示大家,类似三星i9000可能存在虚拟的SD路径,所以isExternalStorageRemovable()可以知道是否是一个物理的SD卡.
PackageManager
PackageInfo新增firstInstallTime和lastUpdateTime可以查看一个软件的安装和上次更新时间,这比直接获取APK路径查看文件时间更可靠,对于付费的私有路径未root的机型无权限获取的。
新增getProviderInfo()方法获取contentprovider类相关信息.
Telephony
TelephonyManager增加了对CDMAEVDORevB网络类型的定义NETWORK_TYPE_EVDO_B.
新的getPsc()返回私有混合码从UMTS网络.
Android2.3可以让应用本地访问声明周期和窗口
NativeActivity是一个新的Activity类整个声明周期的方法可以通过本地C/C++代码直接访问,使用AndroidNDKr5或更高版本即可支持。
新增InputQueue类提供本地管理事件队列的回调接口
新增SurfaceHolder.Callback2接口可以让C/C++代码管理SurfaceHolder.
新增takeInputQueue和takeSurface()让本地代码管理一个窗口事件.
有关最新版的NDK下载和NDK参考文档可以在Android开发包下载中找到。
有关Dalvik运行时库
dalvik.system移除了很多类,在上一版本这些类已经标记为将放弃使用包含以下
Dalvik核心库:
新增collections:ArrayDeque,NavigableMap,ConcurrentSkipListMap,LinkedBlockingDeque数据类型
新增Arrays辅助方法:binarySearch(),copyOf(),copyOfRange(),andothers.
新增CookieManager针对HttpURLConnection.
更完整的网络API支持比如InterfaceAddress,NetworkInterface和IDN
文件读写控制
String.isEmpty()
Normalizer和Normalizer.Form
改进了javax.net.sslserversockets.
新增manifest元素和属性
新增xlargeScreens属性针对<supports-screens>元素,可以支持更大设备比如说Android平板的定义。
新的屏幕方向属性android:screenOrientation在<activity>中
"reverseLandscape"—TheActivitywouldliketohavethescreeninlandscapeorientation,turnedintheoppositedirectionfromnormallandscape.
"reversePortait"—TheActivitywouldliketohavethescreeninportraitorientation,turnedintheoppositedirectionfromnormalportrait.
"sensorLandscape"—TheActivitywouldliketohavethescreeninlandscapeorientation,butcanusethesensortochangewhichdirectionthescreenisfacing.
"sensorPortrait"—TheActivitywouldliketohavethescreeninportraitorientation,butcanusethesensortochangewhichdirectionthescreenisfacing.
"fullSensor"—Orientationisdeterminedbyaphysicalorientationsensor:thedisplaywillrotatebasedonhowtheusermovesthedevice.Thisallowsanyofthe4possiblerotations,regardlessofwhatthedevicewillnormallydo(forexamplesomedeviceswon'tnormallyuse180degreerotation).
新增Permissions
com.android.permission.SET_ALARM—设置一个提醒权限.
android.permission.USE_SIP—使用SIP接收一个VOIP.
android.permission.NFC—允许程序使用NFC支持
有关硬件的改进如下
android.hardware.audio.low_latency—允许使用low-latency音频管道在设备和可以提供敏感的延迟在声音输出输出上。
android.hardware.camera.front—前置摄像头控制类.
android.hardware.nfc—NFC近距无线设备管理.
android.hardware.sensor.barometer—气压计感应器支持类Theapplicationusesthedevice'sbarometer.
android.hardware.sensor.gyroscope—陀螺仪感应器支持类Theapplicationusesthedevice'sgyroscopesensor.
android.software.sip—SIPVoIP类.
android.software.sip.voip—使用基于SIP的VoIP服务.
android.hardware.touchscreen.multitouch.jazzhand—增强的多点触控类,可以实现跟踪5个或更多的点.