У меня есть приложение, которое регистрирует службу доступности в AndroidManifest.xml
следующим образом:
<service android:name="com.package.MyAccessibilityService"
android:permission="android.permission.BIND_ACCESSIBILITY_SERVICE"
android:enabled="@bool/is_lollipop_and_above"
android:exported="false">
<intent-filter>
<action android:name="android.accessibilityservice.AccessibilityService"/>
</intent-filter>
<meta-data android:name="android.accessibilityservice" android:resource="@xml/accessibilityservice" />
</service>
Мой accessibilityservice.xml
выглядит так:
<accessibility-service xmlns:android="http://schemas.android.com/apk/res/android"
android:accessibilityFeedbackType="feedbackGeneric"
android:accessibilityFlags="flagDefault|flagReportViewIds"
android:canRetrieveWindowContent="true"
android:description="@string/accessibility_description"/>
Это работает нормально, но когда я захожу в настройки доступности Android, я вижу две версии службы моего приложения:
У первого нет описания, и его включение / выключение, похоже, никак не влияет на поведение моего приложения.
Если я отключу службу, закомментировав ее в файле манифеста, служба без описания все равно останется:
Я не уверен, что будет причиной этого. Я попытался найти весь свой проект и закомментировать все теги <service>
, а дублированный пустой сервис все еще сохраняется. Это проблема, потому что пользователи моего приложения направляют эту службу на включение, но всегда есть две службы, которые выглядят одинаково, и только одна из них работает для включения моей функциональности доступности. Есть идеи, в чем может быть проблема?