0
BroadcastReceiver에서 장치에 설치된 apk를 실행하거나 열어야합니다.ANDROID - BroadcastReceiver에서 다른 응용 프로그램 시작
공용 클래스 C2DMMessageReceiver가 브로드 캐스트 리시버 {
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
Log.w("C2DM", "Message Receiver called");
if ("com.google.android.c2dm.intent.RECEIVE".equals(action)) {
Log.w("C2DM", "Received message");
ComponentName toLaunch = new ComponentName("es.mypackage","es.mypackage.myapplication");
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
intent.setComponent(toLaunch);
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK|Intent.FLAG_ACTIVITY_CLEAR_TOP);
context.startActivity(intent);
내 장치가 방송을 수신하지만, 예상치 못한 문제로 실패를 확장 : 여기
는 코드입니다.다른 apk를 시작하는 코드는 응용 프로그램의 다른 부분에서 정상적으로 작동합니다.
브로드 캐스트에서 다른 응용 프로그램을 시작할 수 있습니까?
대단히 감사합니다.
내가 C2DM 수신기에서 활동을 시작할 수 있습니다, 감사합니다 : 의도 의도 = 새로운 의도(); intent.setFlags (Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP); intent.setClass (context, MuestraTexto.class); context.startActivity (intent); 괜찮 으면이 응용 프로그램의 창을 엽니 다. 외부 응용 프로그램을 시작할 때 게시 한 첫 번째 코드 만 실패합니다. 감사합니다 :) –