本文譯自:http://developer.android.com/guide/topics/connectivity/usb/accessory.html
USB的從屬模式允許使用者串連到專門給Android裝置設計的USB主機硬體。這些附件必須遵循在Android從屬模式開發工具文檔中描述的Android從屬模式協議。這個協議允許Android裝置即使不作為USB主機依然能夠跟USB硬體進行互動。當Android裝置處於USB從屬模式時,被串連的Android
USB附件會作為主機,提供用於供電的USB匯流排,並列舉被串連的裝置。Android3.1(API Level 12)開始支援USB從屬模式,並且這個功能也能夠被移植到Android2.3.4(API Level 10)中,以便能夠支援更廣泛的裝置。
選擇正確的USB從屬模式API
儘管USB從屬模式API是在Android3.1中被引入的,但是它們也可以作為附加類庫在Android2.3.4中使用。因為這些API是使用一個外部類庫來移植的,所以要匯入兩個包才能支援USB從屬模式。根據你想要支援的Android裝置,你要使用以下其中一種類庫:
1. com.android.future.usb:要在Android2.3.4中支援USB從屬模式,就要使用包含USB從屬模式的Google API的附加類庫,這些類庫被包含在這個命名空間中。Android3.1也支援對這個命名空間的類的引入和調用,以便支援用這個附加類來編寫的應用程式。這個附加類庫是圍繞android.hardware.usb從屬模式API的一個簡單封裝,並且不支援USB主機模式。如果你希望裝置能夠最大範圍的支援USB從屬模式,就要使用這個附加類庫,並要匯入這個包。重點要注意的是,不是所有的Android2.3.4裝置都需要支援USB從屬功能。每個獨立的裝置製造商會決定是否支援這種能力,這就是為什麼要在你的資訊清單檔中聲明的原因。
2. android.hardware.usb:這個命名空間包含了Android3.1中所支援的USB從屬模式的類。這個包被包含在架構API中,因此Android3.1不使用附加類庫來支援USB從屬模式。如果你只關注Android3.1或更新的支援USB從屬模式的硬體裝置,那麼就可以在你的資訊清單檔中聲明使用這個包。
安裝Google API附加類庫
如果你要安裝這個附加類庫,使用SDK管理器,通過安裝Google APIs Android API 10來完成。關於安裝附加類庫的更多資訊,請看“安裝Google
APIs附加類庫”。