화면이 변경되었을때 해당 package가 아니면 /*실행*/부분을 실행하는 예제


1
2
3
4
5
6
7
8
9
10
11
12
13
public class WindowDetecter extends AccessibilityService 
{
 
 @Override
 public void onAccessibilityEvent(AccessibilityEvent event) {
  if (event.getEventType() == AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED){
   Log.d(TAG, "Package is " + event.getPackageName());
   if!"패키지명".equals(event.getPackageName())){
      /*실행*/
   }
  }
 }
}
cs


AccessibilityService.class란, 접근성에 관련된 클래스이다.

TYPE_WINDOW_STATE_CHANGED

Added in API level 4
int TYPE_WINDOW_STATE_CHANGED

Represents the event of opening a PopupWindowMenuDialog, etc.

팝업윈도우나, 메뉴, 다이얼로그같이 현재 열려있는 이벤트에 대한 상수

Constant Value: 32 (0x00000020)


getEventType

Added in API level 4
int getEventType ()

Gets the event type.

이벤트 타입을 얻는다.

Returns
intThe event type.


출처 : https://developer.android.com/reference/android/view/accessibility/AccessibilityEvent.html

'Programming > Android' 카테고리의 다른 글

JSONobject 과 JSONarray  (0) 2016.08.27
AsyncTask  (0) 2016.08.26
Intent와 Intent Filter  (0) 2016.08.26
어플 패키지명  (0) 2016.08.25
ProgressDialog 와 Toast  (0) 2016.08.25

+ Recent posts