Android 2.3.3 API

API 級別: 10

Android 2.3.3 (GINGERBREAD_MR1) 是小型功能版本,為 Android 2.3 平台新增了多項改善功能和 API。

對於開發人員而言,Android 2.3.3 平台可做為 Android SDK 的可下載元件使用。可下載的平台包含 Android 程式庫和系統映像檔,以及一組模擬器外觀等。如要開始針對 Android 2.3.3 進行開發或測試,請使用 Android SDK Manager 將平台下載至 SDK。

API 總覽

以下各節提供 2.3.3 版中開發人員可用的最新技術,包括新功能和框架 API 相較於先前版本的變更。

近距離無線通訊 (NFC)

Android 2.3.3 提供改善且擴充的 NFC 支援功能,讓應用程式以新的方式與更多類型的標籤互動。

全新的 API 套件可讓應用程式讀取及寫入更多標準標記技術,包括:

  • NFC-A (ISO 14443-3A)
  • NFC-B (ISO 14443-3B)
  • NFC-F (JIS 6319-4)
  • NFC-V (ISO 15693)
  • ISO-DEP (ISO 14443-4)
  • MIFARE Classic
  • MIFARE Ultralight
  • NFC Forum NDEF 標記

平台也提供有限的點對點通訊協定和 API。前景活動可使用 API 註冊 NDEF 訊息,並在其他 NFC 裝置連線時將訊息推送至這些裝置。

進階標記調度功能現在可讓應用程式在偵測到 NFC 標記時,進一步控管啟動方式和時間。先前,平台會使用單步驟意圖調度,通知有興趣的應用程式已發現標記。平台現在採用四步驟程序,讓前景應用程式在將代碼事件傳遞至任何其他應用程式 (android.nfc.NfcAdapter.enableForegroundDispatch()) 之前,先控制該事件。新的調度程序還可讓應用程式根據兩個新的意圖動作 (android.nfc.action.NDEF_DISCOVEREDandroid.nfc.action.TECH_DISCOVERED) 監聽特定代碼內容和代碼技術。

NFC API 可在 android.nfcandroid.nfc.tech 套件中使用。主要類別如下:

  • NfcAdapter,代表裝置上的 NFC 硬體。
  • NdefMessage:代表 NDEF 資料訊息,這是在裝置和標籤之間傳輸「記錄」資料的標準格式。NDEF 訊息可包含多個不同類型的 NDEF 記錄。應用程式可以從 NDEF_DISCOVEREDTECH_DISCOVEREDTAG_DISCOVERED 意圖接收這些訊息。
  • NdefRecord,以 NdefMessage 傳送,可說明要分享的資料類型,並攜帶資料本身。
  • Tag,代表裝置掃描到的標籤。系統支援多種代碼類型,取決於底層代碼技術。
  • TagTechnology:此介面可讓應用程式根據代碼中提供的技術存取代碼屬性和 I/O 作業。如需 Android 2.3.3 支援的標記技術完整清單,請參閱 android.nfc.tech

NFC 通訊功能仰賴裝置硬體中的無線技術,因此並非所有 Android 裝置都支援這項功能。不支援 NFC 的 Android 裝置在呼叫 getDefaultAdapter(Context) 時會傳回空值物件,而 context.getPackageManager().hasSystemFeature(PackageManager.FEATURE_NFC) 會傳回 false。不過,無論底層硬體是否支援,NFC API 一律都會存在。

如要使用 NFC API,應用程式必須在資訊清單檔案中宣告 <uses-permission android:name="android.permission.NFC">,向使用者要求權限。

此外,開發人員也可以要求在 Google Play 上篩選,讓裝置不支援 NFC 的使用者無法找到應用程式。如要要求篩選,請將 <uses-feature android:name="android.hardware.nfc" android:required="true"> 新增至應用程式資訊清單。

詳情請參閱 NFC 開發人員指南。

藍牙

Android 2.3.3 新增了平台和 API,可支援藍牙非安全的通訊埠連線。這可讓應用程式與可能不提供驗證 UI 的簡易裝置通訊。詳情請參閱 createInsecureRfcommSocketToServiceRecord(java.util.UUID)listenUsingInsecureRfcommWithServiceRecord(java.lang.String, java.util.UUID)

圖形

  • 新的 BitmapRegionDecoder 類別可讓應用程式解碼圖片中的矩形區域。當原始圖片很大,而應用程式只需要圖片的部分內容時,這個 API 就特別實用。
  • BitmapFactory.Options 中的新 inPreferQualityOverSpeed 欄位可讓應用程式在 JPEG 解碼時使用較準確但速度稍慢的 IDCT 方法。這反過來可改善重建圖像的品質。

媒體架構

語音辨識

語音辨識 API 包含新的常數,可讓您以新的方式管理語音搜尋結果。雖然在正常使用語音辨識功能時,不需要使用新的常數,但您可以利用這些常數,在應用程式中提供不同的語音搜尋結果檢視畫面。詳情請參閱 RecognizerResultsIntent

API 級別

Android 2.3.3 平台提供更新版的架構 API。Android 2.3.3 API 會指派一個整數 ID (10),並儲存在系統中。這個 ID 稱為「API 級別」,可讓系統在安裝應用程式前,正確判斷應用程式是否與系統相容。

如要在應用程式中使用 Android 2.3.3 中推出的 API,您需要根據 Android 2.3.3 SDK 平台提供的 Android 程式庫編譯應用程式。視需求而定,您可能還需要在應用程式資訊清單的 <uses-sdk> 元素中加入 android:minSdkVersion="10" 屬性。如果應用程式僅設計用於在 Android 2.3 以上版本上執行,宣告該屬性可防止應用程式在舊版平台上安裝。

詳情請參閱「什麼是 API 級別?」。