Как поддержать оборудование Amazon FireTV, удалив функцию сенсорного экрана - PullRequest
0 голосов
/ 02 октября 2018

Я создаю Android-приложение Xamarin для Amazon FireTV.Когда я загружаю подписанный apk на портал разработчиков Amazon и просматриваю список поддерживаемых устройств, я получаю следующее сообщение для всего оборудования Fire TV:

Ваш манифест APK требует возможностей, отсутствующих на этом устройстве: android.hardware.touchscreen

Понятно, что оборудование FireTV не поддерживает сенсорный ввод, поэтому удаление этой возможности кажется разумным.Все остальные аппаратные устройства поддерживаются.

Я могу нормально развернуть и запустить приложение локально через adb, поэтому само приложение без проблем работает на оборудовании FireTV.

В настоящее время я включил в файл манифеста следующеев надежде на другой результат, но безрезультатно:

<uses-feature android:name="android.hardware.touchscreen" android:required="false" />
<uses-feature android:name="android.hardware.faketouch" android:required="true" />
<uses-feature android:name="android.software.leanback" android:required="true" />

Есть ли что-нибудь еще, что я могу попробовать решить эту проблему "функции сенсорного экрана"?

1 Ответ

0 голосов
/ 21 декабря 2018

Я считаю, что проблема в том, что для android.software.leanback требуется значение true.На устройствах Amazon Fire TV не обязательно должна быть установлена ​​или настроена функция откидывания, в отличие от устройств на Android TV.

Полный список функций, которые у меня есть, которые позволят запускать приложение на устройствах Fire TV и Android TV (и на любом устройстве, поддерживающем функцию TV):

 <uses-feature
  android:name="android.hardware.touchscreen"
  android:required="false"/>
 <uses-feature
  android:name="android.hardware.faketouch"
  android:required="false"/>
 <uses-feature
  android:name="android.hardware.telephony"
  android:required="false"/>
 <uses-feature
  android:name="android.hardware.camera"
  android:required="false"/>
 <uses-feature
  android:name="android.hardware.nfc"
  android:required="false"/>
 <uses-feature
  android:name="android.hardware.location.gps"
  android:required="false"/>
 <uses-feature
  android:name="android.hardware.microphone"
  android:required="false"/>
 <uses-feature
  android:name="android.hardware.sensor"
  android:required="false"/>
 <uses-feature
  android:name="android.software.leanback"
  android:required="false"/>
 <uses-feature
  android:name="android.hardware.type.television"
  android:required="true"/>
 <uses-feature
  android:name="android.software.leanback_only"
  android:required="false"/>

Если вы хотитеон запускается на устройствах без android.hardware.type.television (таких как планшеты), просто удалите эту функцию из записи манифеста.В противном случае он будет ограничен для телевизионных устройств.Я использую вышеуказанные настройки в своем производственном приложении для Android TV и Fire TV.

...