안드로이드 개발 질문/답변
(글 수 45,052)
한 프로젝트에 com.a.a라는 패키지와 com.b.b라는 패키지가 있다고하면
a에서 b로 전환하는 액티비티는
Intent intent = new Intent();
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setComponent(new ComponentName
("com.a.a",
"com.b.b.Activity"));
이런식으로 넘겨서 실행이 잘 되었거든요.
그런데 b에서 a로 넘겨줄 일이 생겨서
위의 소스에서 차례만 바꿔서 해보니 오류가 나더라구요
매니페이스테 액티비티도 다 추가하였는데 왜 오류가 나는지 궁금합니다.
참고로 매니페스트 패키지명은 com.a.a 입니다.




setComponent 의 사용법을 잘못알고 계시네요.
intent.setComponent(new ComponentName("실행시킬 액티비티를 포함한 앱의 패키지명", "실행시킬 액티비티 전체 이름"));
이렇게 사용하셔야 합니다.
즉, b에서 a 액티비티를 부른다면
Intent intent = new Intent();
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.setComponent(new ComponentName("com.a.a", "com.a.a.Activity"));
이런식으로 해야 합니다.