3

我正在尝试与 JellyBean 一起使用accessibilityEvent。我曾经让它与 Android 2 一起工作,但我猜他们在 Jelly Bean 中改变了一些东西。我在这里找到了一些东西来修复它,它是这样的:

在清单中:

    <service android:name=".MyAccessibilityEventClass" 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>

然后他们告诉我创建文件 res/xml/accessibilityservice.xml:

<?xml version="1.0" encoding="utf-8"?>
<accessibility-service xmlns:android="http://schemas.android.com/apk/res/android"                       
   android:accessibilityEventTypes="typeNotificationStateChanged"
   android:accessibilityFeedbackType="feedbackSpoken"
   android:notificationTimeout="100"
/>

但是在 Eclipse 中编译时出现这些错误

No resource identifier found for attribute 'accessibilityEventTypes' in package 'android'
No resource identifier found for attribute 'accessibilityFeedbackType' in package 'android'
No resource identifier found for attribute 'notificationTimeout' in package 'android'

有什么提示吗?提前致谢

4

2 回答 2

2

抱歉,我修复了将 schemas.android.com 更改为 Schemas.android.com(大写 S)的问题

<accessibility-service xmlns:android="http://Schemas.android.com/apk/res/android"
于 2012-11-01T23:30:34.620 回答
2

当我的项目构建目标设置得太低时,我遇到了这个问题。当我将它设置为 17 时,错误消失了,我仍然能够向后兼容旧版本的 Android。从文档

您仍然可以构建您的应用程序以支持旧版本,但将构建目标设置为最新版本允许您启用新功能并优化您的应用程序,以便在最新设备上获得出色的用户体验。

您可以在 Properties->Android 中设置您的项目构建目标

于 2013-06-01T03:02:32.450 回答