CAFE

댓글

뒤로

Activity launchmode와 다른 activity 강제종료 방법 문의드립니다.

작성자몽솅이| 작성시간13.09.30| 조회수389| 댓글 4

댓글 리스트

  • 작성자 슈퍼성근 작성시간13.10.02 세부적인 환경을 알 수 없어 1차원 적인 답변만 드릴수 있겠네요.

    1. 가능합니다. 아마도 B가 A액티비티를 실행했을때만 종료하고 싶으시다면
    A에서 getCallingActivity() 함수를 통해 자신을 실행한 Activity의 ComponentName을 알 수 있으니
    자신을 실행한 종료시킬 수 있겠네요.

    2. 동적으로 standard intent를 줄 수는 없습니다.

    상황을 보면 매우 복잡하네요.
    전후 사정을 모르면 정확한 답은 드릴 수 없습니다. ^^; 이해 부탁드립니다.
  • 답댓글 작성자 몽솅이 작성자 본인 여부 작성자 작성시간13.10.02 네 세부적인 환경을 알려드리지 못해 어느정도 예상은 했습니다.^^;;
    1의 경우는 A->B 직접실행이 아니라 B는 launcher나 다른 app에서 접근입니다.
    (즉 A->B(B->A) 직접 호출하진 않습니다.)
    에고 초보라 어렵네요..
  • 작성자 슈퍼성근 작성시간13.10.02 A,B는 서로 배타적인 관계인가 보군요.
    A가 뜬 상태에서 B가 뜨면 A가 종료되어야 하고...뭐그런..

    B가 구동될때 A 액티비티를 종료하시려면
    A 액티비티의 인스턴스를 가지고 있으셔야 겠네요.
    즉 A.finish() 를 사용해야 하니까요.

    그러므로 A 액티비티가 onCreate 에서 자신의 객체를
    static 변수 혹은 Application 객체 멤버변수에 담아 두고
    onDestory에서는 제거하는 과정이 있어야 겠네요.

    그 다음 B 액티비티에서 A 액티비티를 참조하여 finish 시키면 됩니다.
  • 작성자 슈퍼성근 작성시간13.10.02 만일 A Activity에서 static 으로 담을 때에는

    public static Activity sAActivity = null;

    onCreate()
    {
    sAActivity = this;

    이렇게 하시면 될 것이고

    Application 객체로 처리하시려면 ...
    제 강좌중 http://cafe.daum.net/superdroid/aCJk/3 을 참조하시면 되겠습니다.
맨위로

카페 검색

카페 검색어 입력폼
카카오 이모티콘
사용할 수 있는 카페앱에서
댓글을 작성하시겠습니까?
이동시 작성중인 내용은 유지되지 않습니다.