관리 메뉴

드럼치는 프로그래머

[안드로이드] 실행중인 어플에서 다른 어플 실행시키기 본문

★─Programing/☆─Android

[안드로이드] 실행중인 어플에서 다른 어플 실행시키기

드럼치는한동이 2013. 5. 31. 11:43

안드로이드 하면서 알아야 할 큰 개념들을 보면..

Activities(Activity)
Services
Broadcast receivers
Content providers
Intent
...
...
더 많이 있겠지만 ㅎㅎㅎ
각각의 설명은 spec이나 좀더 검색을 하면 쉽게 알수 있으니...패쓰
사실 아직 본인도 남에게 설명할만큼 모르니 당연히 패쓰!

실행중인 어플에서 다른 어플을 불러 오고 싶다면 알아야 할 개념이 2개가 있다.
Activity, Intent
간단/단순하게 설명하면
Activity 가 어플에 대한 실행 제어권(?), Intent 같은 경우 명령을 전달
좀더 깊이 있는 설명은 패쓰!

결국
다른 어플을 띄우긴 위해서는
Intent 를 이용해서 명령어를 실행(?) 시켜 Activity 가 다른 어플(내가 실행 시키고자 하는 어플)로 넘어 가도록 하는것이다.

//처리 방식은 view 에서 button의 click 이벤트를 받으면 아래의 코드를 실행시키도록 코딩 하였음
//여기서 act 는 Activity 로써, view 의 생성자에서 parameter 로 받아서 act에 넣었음.

ComponentName compName =
new ComponentName("ttkon.test.andMyLayoutTest", "ttkon.test.andMyLayoutTest.andMyLayoutTest");
Intent actIntent = new Intent(Intent.ACTION_MAIN);
actIntent.addCategory(Intent.CATEGORY_LAUNCHER);
actIntent.setComponent(compName);
act.startActivity(actIntent);

해당 소스를 이용하면,
내가 어플에서 button 을 클릭시, ttkon.test.andMyLayoutTest package 에 있는 ttkon.test.andMyLayoutTest.andMyLayoutTest 를 구동시킨다..
(전제 조건은, ttkon.test.andMyLayoutTest.andMyLayoutTest 어플이 있어야 한다는 것이고ㅎㅎ)

결국 이런한 방식으로
Intent 를 이용해서 내 어플에서 전화번호부를 띄운다던가, 전화 걸기 창으로 넘긴다던가, 등등을 할 수 있다.
좀더 알게 뭘 불러 올 수 있는지 확인해봐야지 후후후.

참고로 윗부분 대신에 아래 부분을 사용하면,. wallpaper 설정하는 화면이 뜹니다.
(내장되어 있는 어플을 실행시키는 거라면 아래의 구문과 비슷하게 쓰여 지지 않을까 합니다 ㅎ)

Intent viewIntent = new Intent(Intent.ACTION_SET_WALLPAPER, null);
act.startActivity(viewIntent);

 

 

 

 

[출처] http://ttkon.tistory.com/11

Comments