我正在开发运行辅助功能服务的Android应用程序。我在Android Studio中开发了服务java类和配置xml文件,以将其作为本机应用程序进行测试。当我运行它时,辅助功能服务会按预期显示在Android辅助功能设置中,我可以启用它。
但是,我想将此服务集成到Qt Quick Android应用程序中。当我通过添加相同的java类,Manifest和配置xml文件来执行此操作时,项目编译并运行良好,但该服务不会出现在Android设置中。
以下是我的配置文件:
的Manifest.xml:
<activity
...
</activity>
<service android:name="com.myCompany.app.MyService"
android:permission="android.permission.BIND_ACCESSIBILITY_SERVICE">
<intent-filter>
<action android:name="android.accessibilityservice.AccessibilityService"/>
</intent-filter>
<meta-data android:name="android.accessibilityservice"/>
<meta-data android:resource="@xml/accessibilityservice"/>
</service>
accessiblityservice.xml:
<?xml version="1.0" encoding="utf-8"?>
<accessibility-service
xmlns:tools="http://schemas.android.com/tools"
android:accessibilityEventTypes="typeWindowStateChanged"
android:accessibilityFeedbackType="feedbackGeneric"
android:accessibilityFlags="flagIncludeNotImportantViews"
xmlns:android="http://schemas.android.com/apk/res/android"
tools:ignore="UnusedAttribute"/>
有人可以告诉我哪里错了吗?
答案 0 :(得分:1)
我自己发现了这个错误。在manifest.xml中,元数据标记应该在一行上,如下所示:
<activity>
...
</activity>
<service android:name="com.myCompany.app.MyService"
android:permission="android.permission.BIND_ACCESSIBILITY_SERVICE">
<intent-filter>
<action android:name="android.accessibilityservice.AccessibilityService"/>
</intent-filter>
<meta-data android:name="android.accessibilityservice"
android:resource="@xml/accessibilityservice"/>
</service>