2015-02-19 2 views
0

Я разрабатываю приложение для Android, чтобы взаимодействовать с пользовательским аксессуаром, используя Moto X 1st-gen и Galaxy S5 для тестирования. На обоих этих телефонах, когда аксессуар подключен, вместо запроса пользователю запустить приложение, он просто отображает серый модальный логотип компании-производителя. Странно то, что если у меня есть несколько приложений, установленных с этим дополнительным фильтром, появляется приглашение на запуск приложения , и если я выберу свое приложение и запустим его в командной строке, он будет работать, как ожидалось. Если я выбираю «всегда запускать», а затем удалять другое приложение, он работает так, как ожидалось. Но если я обновляю приложение, проблема возникает.Android-аксессуар отображает всплеск экрана вместо запуска приложения

Кажется, что я не вижу других случаев возникновения этой проблемы. Я попытался изменить, к какой активности привязан фильтр намерений; не повезло.

Я настроил AndroidManifest так:

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

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

... 

<application> 

    <uses-library android:name="com.android.future.usb.accessory" /> 

    ... 

    <activity 
     android:name=".activity.AccessoryActivity" 
     android:label="@string/app_name" 
     android:launchMode="singleTask" 
     android:screenOrientation="portrait" 
     > 
     <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" /> 
    </activity> 
</application> 

И у меня accessory_filter настроить так:

<resources> 
    <usb-accessory manufacturer="My-Manufacturer" model="My-Model" version="1.0"/> 
</resources> 

ответ

0

Кажется, что это поведение происходит потому, что я использовал большой PNG (671x725) в выпадающей папке в качестве значка приложения. Когда я начал создавать отдельные значки с соответствующими размерами dpi, проблема исчезла. Я не знаю, почему размер значка будет иметь какое-либо влияние на способность ОС запускать приложение для подключения аксессуаров, но там вы идете.