블로그 참고해서
ComponentName compName = new ComponentName(패키지,패키지.액티비티명);
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
intent.setComponent(compName);
처럼 자바단에 실행시켜주면 메인액티비티로 호출은 된다.
그런데 내가 원하는 부분은 메인액티비티가 아닌 특정한 액티비티로 호출 해주는 것인데
일단 실행하고 싶은 앱의 메니페스트에 해당 액티비티 안에 인텐트필터를 생성해준다
<action android:name="com.example.test.T" />
<category android:name="android.intent.category.DEFAULT"/>
내 맘대로 액션의 이름을 정해주고
Intent intent=new Intent(액션의 이름);
startActivity(intent);
이렇게 넣었는데도 메인액티비티로만 이동되었다.
그래서 할 수 없이
Intent intent = this.getPackageManager().getLaunchIntentForPackage(packageName);
intent.setAction(Intent.ACTION_MAIN);
startActivity(intent);
위처럼 자바단을 수정하고
호출할 앱 메니페스트 호출할 액티비티단에 android:exported ="true"를 추가해주니 원하는 액티비티로 호출이 가능했다.
'옛날' 카테고리의 다른 글
Tabhost custom [Android] (0) | 2015.12.11 |
---|---|
TabActivity back key Event [Android] (0) | 2015.12.11 |
종료 다이얼로그 [Android] (0) | 2015.12.11 |
진동 효과 [Android] (0) | 2015.12.11 |
하이브리드 앱이란 [Android] (0) | 2015.12.11 |