2013-02-09 2 views
2

USB 액세서리를 사용하는 응용 프로그램이 있습니다. 응용 프로그램은 장치가 연결될 때 의도 필터를 사용하여 장치를 자동 감지하고 응용 프로그램을 시작하도록 설정됩니다.android USB 응용 프로그램을 열거합니다.

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.switchpanel" 
    android:versionCode="1" 
    android:versionName="1.0" > 

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

    <application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme" > 
     <activity 
      android:name="com.switchpanel.MainActivity" 
      android:label="@string/app_name" 
      android:screenOrientation="landscape" > 

      <intent-filter> 
       <action android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED"/> 
      </intent-filter> 

      <meta-data 
       android:name="android.hardware.usb.action.USB_ACCESSORY_ATTACHED" 
       android:resource="@xml/accessory_filter"> 
      </meta-data> 

        </activity> 
    </application> 

</manifest> 

내가 실행 한 다음 응용 프로그램이 실행 된 후 장치에 열거 (연결) 앱이 필요합니다 : 내 매니페스트는 안드로이드 개발 예를 다음!

이렇게하려면 권한, 요청 목록, 열거, 브로드 캐스트 등을 요청해야합니다.

이 모든 것을 구현하는 방법과 매니페스트 (사용하려는 의도)를 설정하는 방법에 대해 확실하지 않습니다.

누구나 밝혀 졌거나 더 좋지만 아직 어떻게 설정되어 있는지 예제 앱을 보여줄 수 있습니까?

답변

2

FTDI는 USB 통신 설정 방법을 보여주는 데모 응용 프로그램 here을 제공합니다.

희망이 도움이됩니다.

+0

저는 FTDI FT311 평가 보드와 데모 앱을 사용하고 있습니다. 그게 내가 도움이 필요한 것입니다. 이 앱은 USB 케이블을 플러그인 할 때 훌륭하게 작동하지만 이미 케이블이 꽂혀있는 상태에서 앱을 실행하고 싶을 때 작동하지 않습니다. – user1895526

+0

FT311 데모 앱은 스스로 앱을 열지 못하게합니다. 그들은 붙어 있던 USB 부속품을 검출하고 그 때 분리 될 때 완전하게 app를 닫는다. 나는 이것이 USB를 열거하는 것에 대한 많은 다른 성가신 문제와 협동에 대한 FTDI의 해결 방법이라는 것을 깨달았다. 또한 데모 앱에서 로테이션을 허용하지 않는 이유이기도합니다. 나는 현재이 문제들에 대한 해결책을 찾기 위해 노력 중이다. 회전을 허용하려면 매니페스트 xml에서'android : configChanges = "keyboardHidden | orientation | screenSize"'를 사용해야하고 ... – TronicZomB

+0

... 주 활동과 오버라이드에서'@ Override'를 사용한다는 것을 알고 있습니다. onConfigurationChanged (구성 newConfig) {super.onConfigurationCahanged (newConfig); setContentView (R.layout.yourMainActivity); }'그리고 그것은 onDestroy와 onCreate를 호출하지 않고 새로운 방향으로 레이아웃을 다시 그리기 때문에 회전이있을 때 USB 장치를 다시 열거하는 것에 대해 걱정할 필요가 없습니다. – TronicZomB