android 演变史

2024-04-20 13:58
文章标签 android 演变史

本文主要是介绍android 演变史,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Android 1.5 API变更概要:

  UI framework


  · Framework for easier background/UI thread interaction
  · 新SlidingDrawer 组件
  · 新HorizontalScrollview 组件

  AppWidget framework
  · 一些关于创建桌面AppWidget 的API.
  · 提供根据自定义的内容创建LiveFolders的API

  Media framework
  · 原声录音和回放 APIs
  · 交互式的MIDI 回放引擎
  · 开发者使用的视频录像API (3GP format).
  · 视频相片分享 Intents
  · 媒体搜索Intent

  Input Method framework
  · 输入法服务framework
  · 文本预测引擎
  · 提供具有下载能力的IME给使用者

  Application-defined hardware requirements
  应用可定义硬件需求,应用程序可以定义 说明此程序需要什么硬件需求.比如是否需要物理键盘或者轨迹球.

  Speech recognition framework
  · 支持语音识别库.

  Miscellaneous API additions
  · LocationManager -应用可以接收到位置改变的信息.
  · WebView - 触摸start/end/move/cancel DOM 事件的支持
  · 重建Sensor Manager APIs
  · GLSurfaceView - 创建OpenGL 应用更加方便的framework .
  · 软件升级安装成功的Broadcast Intent - 更加平和优秀的软件升级体验

Android 1.6 API变更概要:

  UI framework

  · 新的类 android.view.animation 控制动画行为:
      o AnticipateInterpolator
     o AnticipateOvershootInterpolator
     o BounceInterpolator
     o OvershootInterpolator
  · 新的XML 属性androidnClick ,从一个layout文件描述一个view的 View.OnClickListener.
  · 对不同分辨率的屏幕的新的支持. 对于Bitmap和Canvas会执行有针对性的缩放行为.该框架会根据屏幕分辨率和其他内容自动缩放bitmap等.
  要在你的应用中使用Android 1.6包含的API的话你必须要设置 "4"属性在manifest的 元素中

  Search framework

  · 应用程序现在可以公开的有关内容,作为建议放入快速搜索框,新的设备范围内的搜索功能,是可从主屏幕搜索。为了支持这一点,搜索框架增加了新的属性,可搜索的元数据文件。有关完整的信息,请参阅SearchManager文档。

  Accessibility framework

  · New android.accessibility package that includes classes for capturing accessibility events and forwarding them to an AccessibilityService handler.
  · New AccessibilityService package that lets your application track user events and provide visual, audible, or haptic feedback to the user.

  Gesture Input

  · 新的gesture API :创建,识别,读取,保存手势.

  Text-to-speech

  · 新的android.speech.tts 包提供了TTS文本朗读功能,从一个文本生成一个声音文件的回放.

  Graphics

  ·android.graphics 中的类,现在支持为不同的屏幕尺寸进行缩放.

  Telephony

  · 新的SmsManager 发送和接受短信.

  Utilities

  · 新的DisplayMetrics 字段决定当前设备屏幕的密度.

  Android Manifest elements

  o 新的 元素
  o 新的 标签
  o glEsVersion: 指定最小openGL ES的版本
  ·元素的新的属性:
  o 目标SDK版本: 应用程序能够指定目标版本. 它能够运行在旧版本(低至minSdkVersion), 他是按照应用程序的指定版本开发的. Specifying this version allows the platform to disable compatibility code that is not required or enable newer features that are not available to older applications.
  o maxSdkVersion: 指定设计这个程序运行的最高版本 重要: 当使用 这些属性前请认真阅读文档.

  New Permissions

  · CHANGE_WIFI_MULTICAST_STATE: 允许应用进入Wi-Fi 多点传送模式.
  · GLOBAL_SEARCH: 允许全局搜索系统,以便精确确定 content provider.
  · INSTALL_LOCATION_PROVIDER: 允许应用在Location Manager.安装一个location provider.
  · READ_HISTORY_BOOKMARKS: 允许应用读取(并不能写) 用户的浏览记录和书签
  · WRITE_HISTORY_BOOKMARKS: 允许应用写入 (并不能读) 用户的浏览记录和书签
  · WRITE_EXTERNAL_STORAGE: 允许程序写入外部存储器.应用程序使用API级别3下将默认授予此权限 (这对用户可见的); 应用程序使用API level4 或者更高的,必须要明确的宣告此权限.

Android 2.0 API变更概要:

  Bluetooth

  · 开启关闭蓝牙
  · 设备和服务发现
  · 使用 RFCOMM连接一个可插拔的设备收发数据
  · 公布RFCOMM 服务和监听接收 RFCOMM 连接

  Sync adapters

  · 新的APIs, 同步桥接器连接任何backend

  Account Manager

  · 集中的帐户管理器 API ,安全的储存和使用可信的tokens/passwords

  Contacts

  · 新的通信APIs 允许获取多个账户的数据.
  · 新的快速通信framework APIs 允许开发者在他们的应用中创建通信标记, 一键点击标记打开一个新的窗口展示一个如何联系当前人的列表.

  WebView

  · 不赞成使用的类: UrlInterceptHandler, Plugin, PluginData, PluginList, UrlInterceptRegistry.

  Camera

  · 颜色模式, 场景模式 闪光模式, 焦点模式, 白平衡 旋转和其他设置的新的特征.
  · 当缩放级别改变的时候,会回调新的缩放回调接口.

  Media

  · MediaScanner现在为所有图片生成缩微图when they are inserted into MediaStore.
  · 新的缩微图 API : 检索需要的图片和视频的缩微图.

  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.

  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).

  性能上的改变:

  Bluetooth


  改变了 ACTION_REQUEST_ENABLE 和ACTION_REQUEST_DISCOVERABLE的返回值

  · ACTION_REQUEST_ENABLE 如果蓝牙是成功开启的,现在返回RESULT_OK .如果使用者拒绝开启蓝牙的请求,则会返回RESULT_CANCELED .
  · ACTION_REQUEST_DISCOVERABLE 如果使用者拒绝启动蓝牙或者蓝牙的可发现功能,则返回 RESULT_CANCELED .

  通讯

  The ACTION_INSERT Intent returns RESULT_CANCELED in cases where the contact was not persisted (例如剪切保存到一个空的操作里面).

  修复错误:

  资源

  现在framework可以正选择应用资源的根据API等级划分的文件夹(drawable-v4是API level4版本用的资源).现在的版本这个功能不能正常工作的问题已经修复.

  Contacts

  The ACTION_INSERT Intent now returns the appropriate kind of URI when the request is made using the (now deprecated) Contacts APIs.

  Other Framework fixes

  · getCallingPackage() 现在正确的报告包名, 而不是进程名.

Android 2.1 API变更概要:

  Live Wallpapers 动态桌面

    以下增加的API可以提供你开发动态的桌面:

  · 新android.service.wallpaper 包.
  · 新WallpaperInfo 类.
  · 升级的WallpaperManager.

  附加说明, 如果你的应用相提供Live Wallpapers的功能, 你必须记得增加一个 元素到你的应用manifest里面. 宣布这个属性android:name="android.software.live_wallpaper". 举例:

  电话

  · 新的SignalStrength 类提供当前网络信号的一些信息这些信息可以从onSignalStrengthsChanged(SignalStrength) 回调.
  · 新的onDataConnectionStateChanged(int, int) 回调.

  Views

  · 新的View 方法isOpaque() 和onDrawScrollBars(Canvas).
  · 新的RemoteViews 方法addView(int, RemoteViews) 和removeAllViews(int).
  · 新的ViewGroup 方法isChildrenDrawingOrderEnabled() 和setChildrenDrawingOrderEnabled(boolean).

  WebKit

  · 新的WebStorage 方法操作网页数据缓存.
  · 新的GeolocationPermissions 方法获取 Geolocation permissions 的出处, 把他们设置到 WebView上.
  · 新的WebSettings 方法管理软件缓存, 网页缓存 和屏幕的缩放.
  · 新的WebChromeClient 方法处理视频, 历史记录, 自定义view, 软件缓存限制还有其他

Android 2.2 API变更概要:

  对Microsoft

  Exchange更好的支持。Android的几个新特性使之更适于Exchange企业环境。其中一些新特性列举如下:
  基于用户名/密码的Exchange帐号自动检测
  支持Exchange日历的同步
  改进的安全性,管理员可以跨越设备强制应用安全策略
  恢复出场设置——管理员可以将设备重置为出场设置,这样就能在设备被偷或丢失后擦除上面的敏感数据了
  全局的地址列表查找——可以根据服务器端返回的列表帮助用户自动填充收件人的邮件地址

  设备管理API。Android 2.2改进并新增了大量的设备管理API,开发者可以将其用在应用当中:
  应用数据备份API——可以将应用数据备份到云中。如果用户切换到另一个Android设备,他就可以从之前的设备中恢复数据。
  Cloud-to-Device消息API。云中的用户/系统可以凭借这种增强在设备上触发动作。该特性可以将移动警告发给手机并且支持双向的推同步服务。

    可以直接在外部的内存设备(SD卡)上安装应用,还可以将应用从内部迁移到SD卡上,反之亦然。

  网络共享。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应用就能以前所未有的方式与设备交互了。比如说,用户可以在拍完照后将其上传到网上,而这一切都是在浏览器内完成的。

  支持Flash 10.1。Froyo支持最新的Flash 10.1

  Beta版。最近,JIT编译器的引入极大地改进了性能,这对Flash应用的运行起到了巨大的帮助作用,因为大家都知道,Flash应用是一种CPU密集型应用。

  Android商店
   Android 2.2开发者和商店用户会从如下新特性中受益无穷:
  可以在Android商店搜索应用,包括应用数据
  更新——点击一次按钮后会自动更新所有应用

  崩溃与冻结报告。
    Android 2.2集成了崩溃/冻结报告特性,这样在崩溃时用户就可以将完整的细节信息报告给应用发布者了

  从PC上浏览商店并将应用直接下载到设备上。用户可以通过PC选择商店的应用,之后应用就可以发到到加载的设备上。要想使用这个特性,用户需要登录并且设备需要在Android商店注册-

  音乐管理。用户可以将Windows Media或Mac iTunes上的所有非DRM音乐转换到Android设备上播放。

这篇关于android 演变史的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/920443

相关文章

Android实现任意版本设置默认的锁屏壁纸和桌面壁纸(两张壁纸可不一致)

客户有些需求需要设置默认壁纸和锁屏壁纸  在默认情况下 这两个壁纸是相同的  如果需要默认的锁屏壁纸和桌面壁纸不一样 需要额外修改 Android13实现 替换默认桌面壁纸: 将图片文件替换frameworks/base/core/res/res/drawable-nodpi/default_wallpaper.*  (注意不能是bmp格式) 替换默认锁屏壁纸: 将图片资源放入vendo

Android平台播放RTSP流的几种方案探究(VLC VS ExoPlayer VS SmartPlayer)

技术背景 好多开发者需要遴选Android平台RTSP直播播放器的时候,不知道如何选的好,本文针对常用的方案,做个大概的说明: 1. 使用VLC for Android VLC Media Player(VLC多媒体播放器),最初命名为VideoLAN客户端,是VideoLAN品牌产品,是VideoLAN计划的多媒体播放器。它支持众多音频与视频解码器及文件格式,并支持DVD影音光盘,VCD影

android-opencv-jni

//------------------start opencv--------------------@Override public void onResume(){ super.onResume(); //通过OpenCV引擎服务加载并初始化OpenCV类库,所谓OpenCV引擎服务即是 //OpenCV_2.4.3.2_Manager_2.4_*.apk程序包,存

从状态管理到性能优化:全面解析 Android Compose

文章目录 引言一、Android Compose基本概念1.1 什么是Android Compose?1.2 Compose的优势1.3 如何在项目中使用Compose 二、Compose中的状态管理2.1 状态管理的重要性2.2 Compose中的状态和数据流2.3 使用State和MutableState处理状态2.4 通过ViewModel进行状态管理 三、Compose中的列表和滚动

Android 10.0 mtk平板camera2横屏预览旋转90度横屏拍照图片旋转90度功能实现

1.前言 在10.0的系统rom定制化开发中,在进行一些平板等默认横屏的设备开发的过程中,需要在进入camera2的 时候,默认预览图像也是需要横屏显示的,在上一篇已经实现了横屏预览功能,然后发现横屏预览后,拍照保存的图片 依然是竖屏的,所以说同样需要将图片也保存为横屏图标了,所以就需要看下mtk的camera2的相关横屏保存图片功能, 如何实现实现横屏保存图片功能 如图所示: 2.mtk

android应用中res目录说明

Android应用的res目录是一个特殊的项目,该项目里存放了Android应用所用的全部资源,包括图片、字符串、颜色、尺寸、样式等,类似于web开发中的public目录,js、css、image、style。。。。 Android按照约定,将不同的资源放在不同的文件夹中,这样可以方便的让AAPT(即Android Asset Packaging Tool , 在SDK的build-tools目

Android fill_parent、match_parent、wrap_content三者的作用及区别

这三个属性都是用来适应视图的水平或者垂直大小,以视图的内容或尺寸为基础的布局,比精确的指定视图的范围更加方便。 1、fill_parent 设置一个视图的布局为fill_parent将强制性的使视图扩展至它父元素的大小 2、match_parent 和fill_parent一样,从字面上的意思match_parent更贴切一些,于是从2.2开始,两个属性都可以使用,但2.3版本以后的建议使

Android Environment 获取的路径问题

1. 以获取 /System 路径为例 /*** Return root of the "system" partition holding the core Android OS.* Always present and mounted read-only.*/public static @NonNull File getRootDirectory() {return DIR_ANDR

Android逆向(反调,脱壳,过ssl证书脚本)

文章目录 总结 基础Android基础工具 定位关键代码页面activity定位数据包参数定位堆栈追踪 编写反调脱壳好用的脚本过ssl证书校验抓包反调的脚本打印堆栈bilibili反调的脚本 总结 暑假做了两个月的Android逆向,记录一下自己学到的东西。对于app渗透有了一些思路。 这两个月主要做的是代码分析,对于分析完后的持久化等没有学习。主要是如何反编译源码,如何找到

android系统源码12 修改默认桌面壁纸--SRO方式

1、aosp12修改默认桌面壁纸 代码路径 :frameworks\base\core\res\res\drawable-nodpi 替换成自己的图片即可,不过需要覆盖所有目录下的图片。 由于是静态修改,则需要make一下,重新编译。 2、方法二Overlay方式 由于上述方法有很大缺点,修改多了之后容易遗忘自己修改哪些文件,为此我们采用另外一种方法,使用Overlay方式。