젤리 빈 (Android 버전 4.1.1)이 포함 된 Android 휴대 전화에서 접근성 이벤트를 수신하려고합니다.Android Accessibility onAccessibilityEvent가 젤리 콩에서 수신되지 않았습니다.
나는 (특히 JB 및 사전 JB 사이의 호환성에 대한)이 문제를 해결하는 몇 가지 질문을 본 적이 :
Android accessibility service detect notification
AccessibilityService is started but does not receive AccessibilityEvents on JellyBean
Android accessibility service backwards compatibility and jelly bean
을 이 모든 질문에 따르면 (sp 나는 이전 버전과의 호환성을 보장하지 않으려면 ecially 마지막은) 내가해야 할 일은 내 매니페스트 파일에 라인을
android:permission="android.permission.BIND_ACCESSIBILITY_SERVICE"
를 추가하고 XML 설정 파일을 포함하는 것입니다.
알림을 알림 창에 게시 할 때 onAccessibilityEvent 알림을받을 수 없습니다. 여기 여기 내 코드
public class NotificationService extends AccessibilityService {
private static final Logger logger = LoggerFactory.getLogger ("NotificationService");
@Override
public void onCreate()
{
super.onCreate();
logger.trace ("onCreate");
}
@Override
public void onDestroy()
{
super.onDestroy();
logger.trace ("onDestroy");
}
@Override
protected void onServiceConnected() {
logger.trace("onServiceConnected");
AccessibilityServiceInfo info = new AccessibilityServiceInfo();
info.eventTypes = AccessibilityEvent.TYPE_NOTIFICATION_STATE_CHANGED;
info.feedbackType = AccessibilityServiceInfo.FEEDBACK_ALL_MASK;
info.notificationTimeout = 100;
setServiceInfo(info);
}
@Override
public void onInterrupt() {
// TODO Auto-generated method stub
}
@Override
public void onAccessibilityEvent(AccessibilityEvent event) {
logger.trace("onAccessibilityEvent");
if (event.getEventType() == AccessibilityEvent.TYPE_NOTIFICATION_STATE_CHANGED) {
logger.info("notification: " + event.getText());
}
}
}
입니다 내가 매니페스트 파일 여기
<service android:name=".NotificationService"
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>
에서 서비스를 선언하는 방법 것은 내가 할 수있는 내 응용 프로그램을 실행하면 내 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="feedbackAllMask"
android:notificationTimeout="100" />
입니다 서비스가 생성되어 연결되는지 확인하지만 AccessibilityEvents는 수신되지 않습니다.
감사합니다.