게시판 즐겨찾기
편집
드래그 앤 드롭으로
즐겨찾기 아이콘 위치 수정이 가능합니다.
안드) 같은 앱 내에서 실행중인 액티비티의 instance을 얻는법?
게시물ID : programmer_12080짧은주소 복사하기
작성자 : 빙티
추천 : 0
조회수 : 323회
댓글수 : 3개
등록시간 : 2015/07/14 02:59:06
옵션
  • 본인삭제금지
안녕하세요! 반도의 흔한 학생입니다!

제가 개발하려고 하는것은
ActionService 라는 어떤 서비스를 만들어서
현재 화면 위에 떠있는 액티비티에게 일정 좌표에 TestActivity.dispatchTouchEvent()를 하려고 합니다.

그래서 아래 액션을 통해 현재 화면위에 떠있는 액티비티의 ComponentName까지 얻어오는데엔 성공했습니다.
1
2
3
ActivityManager am = (ActivityManager) this.getSystemService(ACTIVITY_SERVICE);
List<ActivityManager.RunningTaskInfo> taskInfo = am.getRunningTasks(1);//안드L에선 작동x
ComponentName componentInfo = taskInfo.get(0).topActivity;
cs

이렇게 해서 나온 CompoentName을 toString으로 출력하면 {패키지경로, 클래스경로}가 나옵니다.
예를들어 {com.asdf.kkk/me.asdf.kkk.MainActivity} 이런식으로요...
이걸로 클래스 이름과 패키지 이름까지 String으로 받아오는것이 가능합니다...

이걸 이용해서 실행중인 액티비티에게 dispatchTouchEvent를 가하려고 합니다.
액티비티의 이름을 알아오면 그 액티비티내의 함수를 알아올 수 있게만 하면 될 것 같은데...
이것이 과연 가능한 일인가요???

아니면 그냥 activity를 어플리케이션 내 글로벌 변수에 집어넣고 사용해야 할까요?? ㅠ

꼬릿말 보기
전체 추천리스트 보기
새로운 댓글이 없습니다.
새로운 댓글 확인하기
글쓰기
◀뒤로가기
PC버전
맨위로▲
공지 운영 자료창고 청소년보호