2

Developers.android.comのコードを使用してサンプルアプリを開発してみました。

私のコードは次のようになります

  public class MainActivity extends Activity {

   UsbManager manager;
   HashMap<String, UsbDevice> deviceList;
   Button scanButton;
   UsbDevice device;

   @Override
    public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);

    scanButton = (Button)this.findViewById(R.id.button1);
    scanButton.setOnClickListener(new OnClickListener ()
    {
       public void onClick(View v) 
       {
         checkForDevices ();
       }
    });
 }

 @Override
  public void onResume () 
  {
    super.onResume();
    checkForDevices ();
  }

 @Override
  public boolean onCreateOptionsMenu(Menu menu) 
  {
    getMenuInflater().inflate(R.menu.activity_main, menu);
    return true;
  }

  protected void checkForDevices ()
  {
    manager = (UsbManager) getSystemService(Context.USB_SERVICE);

    deviceList = manager.getDeviceList();
    device = deviceList.get("deviceName");
    //Collection<UsbDevice> devices = deviceList.values();

   if (device != null)
      Toast.makeText(this, "Device Found", Toast.LENGTH_LONG).show();
   else
      Toast.makeText(this, "Device NOT Found", Toast.LENGTH_LONG).show();
  }
 }

USB デバイスを接続してこのコードを実行すると、トーストが常に「デバイスが見つかりません」と表示されます。

アプリで USB デバイスを検出し、USB ホスト モードで入力を読み取り、出力を書き込みます。

アプリで USB デバイスを検出する方法はありますか?

4

3 に答える 3

2

同じ問題が発生しました。タブレットでホスト機能が無効になっている可能性があるため、確認することをお勧めします。

次の投稿は、簡潔なAndroid USB ホストと非表示のデバイスであるため、おそらく参照するのに最適なリファレンス です。

ファイルandroid.hardware.usb.host.xmlが adb shell で存在するかどうかを確認できるはずです

于 2012-09-26T08:32:06.607 に答える
0

AndroidでUSBデバイスを操作する最良の例は、ここにあります。 これは、USBデバイスを検出し、それを操作するための良い例です

于 2015-01-26T08:31:59.840 に答える