android各版本的sdk區別
阿新 • • 發佈:2019-02-19
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裝置上播放。