當前位置:首頁 » 安卓系統 » android檢測usb設備

android檢測usb設備

發布時間: 2023-02-11 08:44:44

Ⅰ android4.2.2 查找USB設備

4.2隱藏了~1、找到「設置」圖標,進入~ 2、點擊「關於手機」 3、拉到屏幕最下方,找到「版本號」,猛擊5-7下(有時只要點擊一下就行) 4、猛擊過後,如果出現「您現在處於開發者模式」,說明您猛擊成功;如果沒有,請繼續猛擊,直至出現為止 5、再回到「設置」頁面,您就可以找到「{}開發者選項」了!(大約是隱藏彩蛋神馬的吧,咳咳……)

Ⅱ 如何檢測,如果Android有完整的USB支持或不

1.如果只是手機的USB硬體是OTG,支持USB Host
但是手機中android系統是低於3.1版本,或者裡面沒有對應的USB驅動的
則都無法使用USB Host功能,都無法外接USB 鍵盤之類的USB設備。
2.本身手機的USB硬體就不是OTG的,就不支持USB Host
即使你手機中Android版本再高,比如是4.1,那也是白搭,也沒法用USB Host的。
3.只有當你的手機本身的USB硬體是OTG的,且Android系統是3.1版本之上的,且系統的固件(ROM鏡像)裡面是有對應的驅動的,才能真正使用上USB Host。
4.Android中,USB方面,分兩種模式:USB accessory== USB Device == Android手機作為一個Device設備;把手機連到電腦上,電腦就是Host,手機就是Device,手機就是類似於U盤,可以從主機電腦中操作U盤,拷貝U盤資料了.此種模式,可以說所有手機都支持,就像都可以當做一個U盤接到電腦上一樣;USB host == Android手機作為一個Host主機.Android手機就是主控制器,可以外接/外掛,USB滑鼠,USB鍵盤,U盤,USB攝像頭,游戲手柄等被控制的設備.此種USB Host模式,需要軟硬體都支持才能工作:硬體:確保手機本身的USB模塊是OTG的,即USB的硬體是那種,既可以被配置為Device的,也可以被配置為Host的.與此相對應的是,有些USB的硬體模塊,是固定的USB Device,或者是USB Host.比如普通的U盤中的USB模塊,就是固定的USB Device.比如你把U盤接到電腦上的那個USB介面,就是主板上的USB Host的介面,可以掛載你的U盤.與此類似的是,有些數碼相機,就是USB OTG的.即可以當做U盤接到電腦上,電腦上就可以把相機裡面照片拷貝出來了.也可以當做USB 主機,連接USB的列印機,把照片傳輸到列印機上,列印出來.軟體Android系統,必須是Android 3.1(API Level 12).本身手機常見給你預裝的Android系統,本身是有對應的USB(OTG)的驅動.

Ⅲ 如何查看USB方式連接Android設備的外接設備信息

這里主要介紹了Android中查看USB連接的外接設備信息的代碼實例,可以參考下

1,USB存儲設備(如:U盤,移動硬碟):

//USB存儲設備 插拔監聽與 SD卡插拔監聽一致。

代碼如下:

private USBBroadCastReceiver
mBroadcastReceiver;

IntentFilter iFilter = new IntentFilter();

iFilter.addAction(Intent.ACTION_MEDIA_EJECT);

iFilter.addAction(Intent.ACTION_MEDIA_MOUNTED);

iFilter.addAction(Intent.ACTION_MEDIA_REMOVED);

iFilter.addAction(Intent.ACTION_MEDIA_UNMOUNTED);

iFilter.addDataScheme("file");
mBroadcastReceiver = new
USBBroadCastReceiver();
registerReceiver(mBroadcastReceiver,
iFilter);

private class USBBroadCastReceiver extends BroadcastReceiver {

@Override
public void onReceive(Context context, Intent intent)
{
String action = intent.getAction();

if
(action.equals(Intent.ACTION_MEDIA_EJECT)) {

//USB設備移除,更新UI
} else if
(action.equals(Intent.ACTION_MEDIA_MOUNTED)) {

//USB設備掛載,更新UI
}
}
}

//獲得掛載的USB設備的存儲空間使用情況

public static String getUSBStorage(Context context){
// USB Storage

//storage/udisk為USB設備在Android設備上的掛載路徑.不同廠商的Android設備路徑不同。

//這樣寫同樣適合於SD卡掛載。
File path = new File("/storage/udisk");

StatFs stat = new StatFs(path.getPath());
long blockSize =
stat.getBlockSize();
long totalBlocks = stat.getBlockCount();

long availableBlocks = stat.getAvailableBlocks();
String usedSize =
Formatter.formatFileSize(context, (totalBlocks-availableBlocks) *
blockSize);
String availableSize = Formatter.formatFileSize(context,
availableBlocks * blockSize);
return usedSize + " / " +
availableSize;//空間:已使用/可用的
}

2,USB外接輸入設備(如:鍵盤,滑鼠,掃描槍)

復制代碼
代碼如下:

try {

//獲得外接USB輸入設備的信息
Process p=Runtime.getRuntime().exec("cat
/proc/bus/input/devices");
BufferedReader in = new BufferedReader(new
InputStreamReader(p.getInputStream()));
String line = null;

while((line = in.readLine())!= null){
String deviceInfo =
line.trim();

//對獲取的每行的設備信息進行過濾,獲得自己想要的。

}

} catch (Exception e) {
// TODO: handle
exception
e.printStackTrace();
}

另:設備信息也可以通過 adb
shell 進入執行 cat /proc/bus/input/devices看到。

USB外接輸入設備信息列印如下:

復制代碼
代碼如下:

I: Bus=0003 Vendor=11c0 Proct=0030
Version=0110
N: Name="ACRUX USB Keyboard"
P:
Phys=usb-0000:00:04.0-1.3/input1
S:
Sysfs=/devices/pci0000:00/0000:00:04.0/usb1/1-1/1-1.3/1-1.3:1.1/input/input3
U:
Uniq=
H: Handlers=mouse1 event3
B: PROP=0
B: EV=17
B: KEY=70000 0 0
0 0 0 0 0 0
B: REL=103
B: MSC=10

I: Bus=0003 Vendor=11c0
Proct=0030 Version=0110 這行信息會在Android設備與USB設備數據交互的是否使用到。

關於USB外接設備如何與Android設備數據數據交互的代碼書寫可以參考:

http://developer.android.com/guide/topics/connectivity/usb/index.html

N: Name="ACRUX USB Keyboard" 這行說明了外接的USB設備的名稱。

P: Phys=usb-0000:00:04.0-1.3/input1

S:
Sysfs=/devices/pci0000:00/0000:00:04.0/usb1/1-1/1-1.3/1-1.3:1.1/input/input3

這兩行可用於識別該USB設備連接在Android設備的哪一個USB口.

Ⅳ android如何監聽有沒有插入usb線

代碼如下:

private USBBroadCastReceiver
mBroadcastReceiver;

IntentFilter iFilter = new IntentFilter();

iFilter.addAction(Intent.ACTION_MEDIA_EJECT);

iFilter.addAction(Intent.ACTION_MEDIA_MOUNTED);

iFilter.addAction(Intent.ACTION_MEDIA_REMOVED);

iFilter.addAction(Intent.ACTION_MEDIA_UNMOUNTED);

iFilter.addDataScheme("file");
mBroadcastReceiver = new
USBBroadCastReceiver();
registerReceiver(mBroadcastReceiver,
iFilter);

private class USBBroadCastReceiver extends BroadcastReceiver {

@Override
public void onReceive(Context context, Intent intent)
{
String action = intent.getAction();

if
(action.equals(Intent.ACTION_MEDIA_EJECT)) {

//USB設備移除,更新UI
} else if
(action.equals(Intent.ACTION_MEDIA_MOUNTED)) {

//USB設備掛載,更新UI
}
}
}

熱點內容
安卓版音樂怎麼設置 發布:2025-07-14 10:46:18 瀏覽:553
少兒編程線上費用 發布:2025-07-14 10:41:40 瀏覽:789
小米清楚緩存 發布:2025-07-14 10:29:52 瀏覽:921
商務pc配置低什麼很穩定 發布:2025-07-14 10:03:13 瀏覽:894
火狐瀏覽器安卓版怎麼全屏播放 發布:2025-07-14 10:03:13 瀏覽:163
c語言中π怎麼打 發布:2025-07-14 09:56:35 瀏覽:574
顏料解壓 發布:2025-07-14 09:49:57 瀏覽:463
python按任意鍵 發布:2025-07-14 09:49:19 瀏覽:291
內置存儲交換位置 發布:2025-07-14 09:33:10 瀏覽:648
甲殼蟲密碼如何解鎖 發布:2025-07-14 09:23:55 瀏覽:823