博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android 2.0 --- 2.3 API变更概要:
阅读量:6000 次
发布时间:2019-06-20

本文共 6970 字,大约阅读时间需要 23 分钟。

Android 2.0 API变更概要:

 1、Bluetooth
  · 开启关闭蓝牙
  · 设备和服务发现
  · 使用 RFCOMM连接一个可插拔的设备收发数据
  · 公布RFCOMM 服务和监听接收 RFCOMM 连接
 2、Sync adapters
  · 新的APIs, 同步桥接器连接任何backend
 3、Account Manager
  · 集中的帐户管理器 API ,安全的储存和使用可信的tokens/passwords
 4、Contacts
  · 新的通信APIs 允许获取多个账户的数据.
  · 新的快速通信framework APIs 允许开发者在他们的应用中创建通信标记, 一键点击标记打开一个新的窗口展示一个如何联系当前人的列表.
 5、WebView
  · 不赞成使用的类: UrlInterceptHandler, Plugin, PluginData, PluginList, UrlInterceptRegistry.
 6、Camera
  · 颜色模式, 场景模式 闪光模式, 焦点模式, 白平衡 旋转和其他设置的新的特征.
  · 当缩放级别改变的时候,会回调新的缩放回调接口.
 7、Media
  · MediaScanner现在为所有图片生成缩微图when they are inserted into MediaStore.
  · 新的缩微图 API : 检索需要的图片和视频的缩微图.
 8、Other Framework
  · android.R.style 中新的系统主题,能够更加简单的显示当前acitivities的系统壁纸或者保持之前的activity在后台.新的壁纸管理器API 取代并且增加了wallpaper APIs ,我们可以允许我们的应用要求设置系统壁纸.
  · 新的Service APIs帮助应用准确的处理Service 生命周期 ,在指定的低内存状态下service将会被关闭.
  o Service.setForeground() 不推荐使用,并且现在这个方法并没有实际执行. .他被一个新的API所取代, startForeground(), that helps (and requires) associating an ongoing notification with the foreground state.
  · MotionEvent 如果设备允许的话,MotionEvent 会返回多点触摸信息.最多可同时获取3点
  · KeyEvent 现在有了新的按键发送 APIs,去帮助实现 action-on-up 和长按键行为, 一个新的机制取消按键 (虚拟按键).
  · WindowManager.LayoutParams 现在有了新的常量允许窗口能够在被锁或者其他的状况中唤醒屏幕,这个允许程序能够让例如闹钟等的应用实现唤醒设备.
·New Intent APIs 广播设备的对接状态,当这个设备放在桌面或者停车场,允许程序启动特殊的activity.
 9、Key events executed on key-up
  Android 2.0能够使用虚拟按键HOME, MENU, BACK和SEARCH,而非物理按键,为了让用户在他们的设备中获得最好的用户体验,android平台现在把这些按键执行加入到了key-up,做了 key-down/key-up 配对,而非只有key-down.,这有助于防止意外按钮事件,并让使用者按下按钮区域,然后拖动而不生成一个事件出来。
  这种改变只会影响你的应用程序一点,如果它是拦截按钮事件,最好用key-down,而不是key-up.。特例,如果您的应用程序拦截BACK 键,你应该确保你的应用妥善处理按键事件。

Android 2.0.1 API变更概要:

  · 新的快速联系人标记风格(quickContactBadgeStyle)* 属性,让应用的QuickContactBadge 组件接收必要的风格.
  · 当在manifest里面宣布了filter,取消了支持 ACTION_CONFIGURATION_CHANGED 广播 ,如果想要去接收这个广播, 这个应用必须注册 registerReceiver(BroadcastReceiver, IntentFilter).
  性能上的改变:
1、Bluetooth
  改变了 ACTION_REQUEST_ENABLE 和ACTION_REQUEST_DISCOVERABLE的返回值
  · ACTION_REQUEST_ENABLE 如果蓝牙是成功开启的,现在返回RESULT_OK .如果使用者拒绝开启蓝牙的请求,则会返回RESULT_CANCELED .
  · ACTION_REQUEST_DISCOVERABLE 如果使用者拒绝启动蓝牙或者蓝牙的可发现功能,则返回 RESULT_CANCELED .
  2、通讯
  The ACTION_INSERT Intent returns RESULT_CANCELED in cases where the contact was not persisted (例如剪切保存到一个空的操作里面).
  修复错误:
  3、资源
  现在framework可以正选择应用资源的根据API等级划分的文件夹(drawable-v4是API level4版本用的资源).现在的版本这个功能不能正常工作的问题已经修复.
  4、Contacts
  The ACTION_INSERT Intent now returns the appropriate kind of URI when the request is made using the (now deprecated) Contacts APIs.
  5、Other Framework fixes
  · getCallingPackage() 现在正确的报告包名, 而不是进程名.

Android 2.1 API变更概要:

 1、?Live Wallpapers 动态桌面
? 以下增加的API可以提供你开发动态的桌面:
  · 新android.service.wallpaper 包.
  · 新WallpaperInfo 类.
  · 升级的WallpaperManager.
  附加说明, 如果你的应用相提供Live Wallpapers的功能, 你必须记得增加一个 元素到你的应用manifest里面. 宣布这个属性android:name="android.software.live_wallpaper". 举例:
 2、电话
  · 新的SignalStrength 类提供当前网络信号的一些信息这些信息可以从onSignalStrengthsChanged(SignalStrength) 回调.
  · 新的onDataConnectionStateChanged(int, int) 回调.
 3、Views
  · 新的View 方法isOpaque() 和onDrawScrollBars(Canvas).
  · 新的RemoteViews 方法addView(int, RemoteViews) 和removeAllViews(int).
  · 新的ViewGroup 方法isChildrenDrawingOrderEnabled() 和setChildrenDrawingOrderEnabled(boolean).
 4、WebKit
  · 新的WebStorage 方法操作网页数据缓存.
  · 新的GeolocationPermissions 方法获取 Geolocation permissions 的出处, 把他们设置到 WebView上.
  · 新的WebSettings 方法管理软件缓存, 网页缓存 和屏幕的缩放.
  · 新的WebChromeClient 方法处理视频, 历史记录, 自定义view, 软件缓存限制还有其他??

Android 2.2 API变更概要:

 1、对Microsoft Exchange更好的支持。
Android的几个新特性使之更适于Exchange企业环境。其中一些新特性列举如下:基于用户名/密码的 Exchange帐号自动检测支持Exchange日历的同步
  改进的安全性,管理员可以跨越设备强制应用安全策略
  恢复出场设置——管理员可以将设备重置为出场设置,这样就能在设备被偷或丢失后擦除上面的敏感数据了
  全局的地址列表查找——可以根据服务器端返回的列表帮助用户自动填充收件人的邮件地址
  设备管理API。Android 2.2改进并新增了大量的设备管理API,开发者可以将其用在应用当中:
  应用数据备份API——可以将应用数据备份到云中。如果用户切换到另一个Android设备,他就可以从之前的设备中恢复数据。
 2、Cloud-to-Device消息API。云中的用户/系统可以凭借这种增强在设备上触发动作。该特性可以将移动警告发给手机并且支持双向的推同步服务。
可以直接在外部的内存设备(SD卡)上安装应用,还可以将应用从内部迁移到SD卡上,反之亦然。
 3、网络共享。Android 2.2可以通过一台Android电话提供的热点将多个服务连接到Internet上。
  性能。借助于新式的Dalvik JIT编译器,对于CPU密集型应用来说,Android 2.2的速度要比Android 2.1快2~5倍。根据Linpack基准测试结果,安装了Froyo的Nexus
  One电话可以达到37.5 MFlops,而同样的电话如果使用Android 2.1的话才有6.5 MFlops。
  更快的浏览速度。由于浏览器现在使用了Chrome V8引擎,JavaScript代码的处理速度要比Android 2.1快2~3倍。
  从浏览器中访问设备API。现在可以直接从浏览器中访问大量的设备API,如加速器、相机、声音识别、翻译等,这样Web应用就能以前所未有的方式与设备交互了。比如说,用户可以在拍完照后将其上传到网上,而这一切都是在浏览器内完成的。
 4、支持Flash 10.1。Froyo支持最新的Flash 10.1
  Beta版。最近,JIT编译器的引入极大地改进了性能,这对Flash应用的运行起到了巨大的帮助作用,因为大家都知道,Flash应用是一种CPU密集型应用。
  Android商店。Android 2.2开发者和商店用户会从如下新特性中受益无穷:
  可以在Android商店搜索应用,包括应用数据
  更新——点击一次按钮后会自动更新所有应用
 5、崩溃与冻结报告。Android2.2集成了崩溃/冻结报告特性,这样在崩溃时用户就可以将完整的细节信息报告给应用发布者了
  从PC上浏览商店并将应用直接下载到设备上。用户可以通过PC选择商店的应用,之后应用就可以发到到加载的设备上。要想使用这个特性,用户需要登录并且设备需要在Android商店注册-
 6、音乐管理。用户可以将Windows Media或Mac iTunes上的所有非DRM音乐转换到Android设备上播放。

Android 2.3 API变更概要:

Android 2.3姜饼发布,代号Gingerbread,包含哪些新特性和改进呢?

  1. 新增android.net.sip包,名为SipManager类,可以轻松开发基于Sip的Voip应用。同时使用时必须至少包含这两个权限 <uses-permission android:name="android.permission.INTERNET"> and <uses-permission android:name="android.permission.USE_SIP">,如果需要在Market上过滤仅显示支持VoIP API的机型,可以在发布时androidmanifest.xml中加入 <uses-feature android:name="android.software.sip" android:required="true"> 和 <uses-feature android:name="android.software.sip.voip"> 这两个标志。

    1. Near Field Communications (NFC) 近距离通讯的支持,NFC可以在不接触的情况下实现数据交换通讯,可以很好的代替RFID SIM卡实现手机支付等扩展功能,当然Android123提示这需要硬件的支持
      ,新增包在 android.nfc包含NfcAdapter,NdefMessage,NdefRecord等类,类似蓝牙的处理方式,使用该API需要声明权限<uses-permission android:name="android.permission.NFC"> ,同时在Market上过滤支持NFC的设备需要加入<uses-feature android:name="android.hardware.nfc" android:required="true">这句。
    2. 新增陀螺仪和其他的传感器支持
      Android 2.3加入了一些新的感应器,比如gyroscope陀螺仪, rotation vector旋转向量, linear acceleration线性加速器 gravity和barometer气压计的支持。如果过滤这些功能,发布时加入类似<uses-feature android:name="android.hardware.sensor.gyroscope" android:required="true">到androidmanifest.xml中。
    3. 多摄像头支持
      新增 Camera.CameraInfo 可以管理摄像头前置或后置
      新增 getNumberOfCameras(), getCameraInfo() 和 getNumberOfCameras() 获取摄像头数量。
      新增 get() 方法,可以获取摄像头配置信息 CamcorderProfile
      新增 getJpegEncodingQualityParameter() 获取jpeg编码质量参数可以在 CameraPreview.java 文件从ApiDemos示例程序中查看。
    4. 新增拍照API
      比如获取焦距getFocusDistances()获取预览FPS getPreviewFpsRange(), 获取焦距范围 getSupportedPreviewFpsRange() 和设置教育 setPreviewFpsRange()
    5. 混响音效
      本次Android 2.3框架中加入了对混响音效的支持,比如低音,耳机和虚拟化等效果.
      新增 android.media.audiofx 包
      新增 AudioEffect 类提供音效控制
      新增音频会话ID,设置 AudioTrack 和 MediaPlayer.
      新 AudioTrack 新增 attachAuxEffect()、getAudioSessionId()和 setAuxEffectSendLevel()。
      新 attachAuxEffect() ,getAudioSessionId(), setAudioSessionId(int), 和 setAuxEffectSendLevel() .
      相关音效在 AudioFxDemo.java 的 ApiDemos 示例。
    6. 照片EXIF信息改进
      新增经纬度标签在JPG格式的EXIF中,同时可以使用 getAltitude() 方法获取经纬度的EXIF信息
      新增setOrientationHint() 可以让程序获取视频录制的方向.
    7. 下载管理

      在Android 2.3中新增的下载管理支持长时间运行的Http下载服务支持。可以保证在手机重启后仍然重试下载等操作,整个过程在后台执行。
      通过 DownloadManager 类使用getSystemService(DOWNLOAD_SERVICE) 来实例化,通过 ACTION_NOTIFICATION_CLICKED 这个Intent来处理。

    8. 限制模式
      可以帮助开发者监控他的应用的性能,处理线程阻塞,避免ANR的发生。
      StrictMode.ThreadPolicy 和 StrictMode.VmPolicy 获取VM相关信息.
      使用限制模式优化的Android应用程序可以查看android.os.StrictMode包的具体介绍。

转载于:https://blog.51cto.com/13545923/2053476

你可能感兴趣的文章
Making HTTP requests via telnet - Tony's Place
查看>>
千元机市场再添“新宠”,红米Note7和vivo Z3谁才是千元王者
查看>>
荣耀10GT升级EMUI 9.0体验分享:这可能是最好用的手机操作系统
查看>>
ZStack基于华芯通打造ARM国产云平台 助力云上贵州多项应用
查看>>
SACC 2018:容器专场的回顾与总结
查看>>
七年相爱相杀:九张图带你了解苹果MacBook的老对手
查看>>
OKI图文9系LED帮您轻松搞定不干胶打印
查看>>
天津海关2018年共监管中欧班列出口81列、7329标箱
查看>>
春运里的机场行李装卸工 每人每天分拣千余件
查看>>
200本“保护日记”记录黄山迎客松生长变化
查看>>
多方力量携手呵护“中华水塔”青海三江源
查看>>
互联网的下一波红利在哪里?
查看>>
拿姐姐身份证登记结婚竟然成了!婚姻户籍信息共享难在哪儿
查看>>
恒大造车加速,联手柯尼塞格打造顶级新能源车
查看>>
JAVA大神说一个例子让你几分钟学会Annotation
查看>>
富士康要用机器人生产iPhone了?那么多工人怎么办?
查看>>
Python获取当前页面内的所有链接的五种方法
查看>>
【进阶2-3期】JavaScript深入之闭包面试题解
查看>>
【Chrome扩展开发】定制HTTP请求响应头域
查看>>
网页慢!谁的锅?
查看>>