2013-08-04 3 views
1

글쎄, 나는이 서비스 중 하나를 구현하려고하는데 여기에서 코드를 사용하고있다 : http://developer.android.com/training/accessibility/service.html#create하지만 시스템 설정에서 보이지 않기 때문에 서비스를 사용할 수 없다. 아무도 나를 도울 수 있습니까?접근성 서비스가 서비스에 등록되어 있지 않습니까?

매니페스트 :

<service android:name=".MyAccessibilityService" > 
     <intent-filter> 
      <action android:name="android.accessibilityservice.AccessibilityService" /> 
     </intent-filter> 
    </service> 

MyAccessibilityService.java Accessibility Service Declaration Guide

import android.accessibilityservice.AccessibilityService; 
import android.accessibilityservice.AccessibilityServiceInfo; 
import android.util.Log; 
import android.view.accessibility.AccessibilityEvent; 
import android.widget.Toast; 

public class MyAccessibilityService extends AccessibilityService 
{ 
public static final String TAG = "volumeMaster"; 

@Override 
public void onAccessibilityEvent(AccessibilityEvent event) 
{ 
    Log.v(TAG, "***** onAccessibilityEvent"); 
    Toast.makeText(getApplicationContext(), "Got event from: " + event.getPackageName(), Toast.LENGTH_LONG).show(); 
} 

@Override 
public void onInterrupt() 
{ 
    Log.v(TAG, "***** onInterrupt"); 
} 

@Override 
public void onServiceConnected() 
{ 
    Log.v(TAG, "***** onServiceConnected"); 

    AccessibilityServiceInfo info = new AccessibilityServiceInfo(); 
    info.eventTypes = AccessibilityEvent.TYPE_NOTIFICATION_STATE_CHANGED; 
    info.notificationTimeout = 100; 
    info.feedbackType = AccessibilityEvent.TYPES_ALL_MASK; 
    setServiceInfo(info); 

} 
} 

답변

4

글쎄, 나는 이제 AndroidManifest.xml에 중요한 것들을 남겼다. 그래서 지금은 완벽하게 작동하고있다. 새 매니페스트가 있습니다

<service 
     android:name=".NotificationService" 
     android:permission="android.permission.BIND_ACCESSIBILITY_SERVICE" 
     class=".NotificationService" 
     android:enabled="true" 
     android:exported="false" > 
     <intent-filter> 
      <action 
       android:name=".NotificationService" 
       android:value=".NotificationService" /> 
     </intent-filter> 
     <intent-filter> 
      <action android:name="android.accessibilityservice.AccessibilityService" /> 
     </intent-filter> 

    </service> 
+0

NotificationService 란 무엇입니까 ???? – Erum

+0

'class = ". NotificationService"그것의 클래스 –

+0

코드를 사용하여 NotificationService 클래스 임 플리 멘 테이션 메신저를 추가하여 게시물을 업데이트 할 수 있지만, 어떤 앱에서 알림을 수신해도 응답을받지 못함 – Erum

1

, 당신은 또한 안드로이드 4.1 이상 기기의 라인

<uses-permission android:name="android.permission.BIND_ACCESSIBILITY_SERVICE" /> 

를 추가해야합니다.

+0

해당 라인이 추가되었지만 아직 표시되지 않았습니다. –

+0

예를 들어 선언문에 'android : label'도 있다는 것을 알았습니다 - 추가해 보았습니까? – ianhanniballake

+0

예, 그 중 하나도 보이지 않습니다. –