안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요.
보통 어플에서 다른 어플을 실행하기 위해선
Intent in = new Intent();
in.setAction( Intent.ACTION_MAIN );
in.addCategory( Intent.CATEGORY_LAUNCHER );
in.setComponent( new ComponentName( "패키지명", "패키지명.엑티비티") );
위 식으로 Intent를 정의하게 되는데요.
여기서 궁금한 점이 있습니다.
패키지명은 알고, 런치 엑티비티를 모르면 어떻게 실행할 수 있나요?
해당 엑티비티에 대한 디폴트 엑티비티는 모를 수 있지 않을까요?
고맙습니다.
Intent launch = pm.getLaunchIntentForPackage(packageName);
이렇게 하시면 런치 인텐트 가져오실 수 있으시구요..
List<PackageInfo> list = pm.getInstalledPackages(PackageManager.GET_ACTIVITIES);
for (PackageInfo packageInfo : list) {
Intent launch = pm.getLaunchIntentForPackage(packageInfo.packageName);
}
이렇게 하시면 설치된 어플 런치 인텐트 전부 가져오구요.