0

OTG ケーブルを使用して USB デバイスを Samsumg Galaxy に接続しようとしています。http://developer.android.com/guide/topics/connectivity/usb/host.htmlチュートリアルに基づいて簡単なコードを作成しましたが、うまくいきません。これまでに気づいたことは、アクションは常に android.intent.action.MAIN. おそらくそれが、デバイスが常に null である理由です。この種のプログラムで運が良かった人はいますか?

これは私のコードです:

protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState);

setContentView(R.layout.activity_microstrain);

EditText find_device = (EditText)findViewById(R.id.find_device);

Intent intent = getIntent();

String action = intent.getAction();
Toast toast = Toast.makeText(getApplicationContext(), action,  Toast.LENGTH_SHORT);
toast.show();

UsbManager manager = (UsbManager) getSystemService(Context.USB_SERVICE);

UsbAccessory device = (UsbAccessory)  intent.getParcelableExtra(UsbManager.EXTRA_ACCESSORY);

find_device.setText((CharSequence) device);

}

そしてマニフェスト:

<?xml version="1.0" encoding="utf-8"?>

<uses-feature android:name="android.hardware.usb.host"/>

<uses-sdk
    android:minSdkVersion="16"
    android:targetSdkVersion="16" />

<application
    android:allowBackup="true"
    android:icon="@drawable/ic_launcher"
    android:label="@string/app_name"
    android:theme="@style/AppTheme" 
    android:launchMode="singleTask">
    <activity
        android:name="com.example.microstrain.MICROSTRAIN"
        android:label="@string/app_name" >

       <intent-filter >
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.HOME"/>
    <category android:name="android.intent.category.DEFAULT" />
    <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter> 
    <intent-filter>
        <action android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED" />
    </intent-filter>
         <meta-data android:name="android.hardware.usb.action.USB_DEVICE_ATTACHED"  
             android:resource="@xml/device_filter" />
    </activity>
   <uses-library android:name="android.test.runner" />
</application>

<instrumentation android:name="android.test.InstrumentationTestRunner"
android:targetPackage="com.example.microstrain"
android:label="microstrain" />

および xml/device_filter.xmk:

<?xml version="1.0" encoding="utf-8"?>

<resources>
   <usb-device vendor-id="6555" product-id="15717"/>  
</resources>
4

0 に答える 0