문제

하는 방법이 있을 등록하는 활동이 있습니다.저는 특별히 관심이에서 종료/onStop 이벤트,그리고 나는 원하지 않을 추가하는 특별한 작업에서 활동한다.

도움이 되었습니까?

해결책

을 얻을 수있는 방법 중 하나 이벤트에서 수명 주기의 다른 활동이 등록하는 클래스 Application.ActivityLifecycleCallbacks 메인 Application 인스턴스와 이벤트 필터링에 대한 Activity 당신이 관심이 있습니다.

이것은 간단한 예제(할 수 있습을 등록하려는 콜백에서 또 다른 방법/이외의 클래스 MainActivity.onCreate 또는 당신이 놓치는 메시지)및 수 있는 종속성있는 당신을 원하지 않)

의 활동에 당신을 감시하려면:

public class MainActivity extends Activity {

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        // Register a spy for this activity
        getApplication().registerActivityLifecycleCallbacks(new ActivitySpy(this));
    }
}

다음파이드와 같다:

public class ActivitySpy implements ActivityLifecycleCallbacks {

    private final Activity mActivity;

    public ActivitySpy(Activity activity) {
        mActivity = activity;
    }

    @Override
    public void onActivityCreated(Activity activity, Bundle savedInstanceState) {
        if (mActivity == activity)
            Log.i("SPY", "Activity Created");
    }

    @Override
    public void onActivityDestroyed(Activity activity) {
        if (mActivity == activity)
            Log.i("SPY", "Activity Destroyed");
    }

    // (...) Other overrides

}

을 등록할 수도 있습니다 스파에서 다른 장소에 대한 참조가 있는 경우를 활동을 따릅니다.

도움이 되기를 바랍니다:)

편집: 말 것도,이것에서 작동합니다 API 수준 14 상...

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top