2011-12-06 5 views
0

mqtt 수신기에 대한 서비스가 1 개 있습니다. 응용 프로그램이 mqtt 서버에서 메시지를 받으면 newA 작업이 시작됩니다. 이 newA 액티비티는 잘 작동하지만 메시지가 수신되기 전에 newA 액티비티를 시작하면 문제가 발생합니다. 시도 :서비스를 통한 재시작 활동

private newA na; 
public void MessageArrive { 
    na.onDestroy(); //on newA activity onDestroy() is contain finish(); 
    Intent runs = new Intent(getBaseContext(), newA.class); 
    runs.putExtra("data", arrMsg); 
    runs.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
    getApplication().startActivity(runs); 
} 

하지만 작동하지 않습니다. 아이디어가 있으십니까? 사전에 감사합니다.

답변

2

시도 사용 boardcast에 onNewIntent를 오버라이드 (override)에이 문제를 해결해야 boardcast를 듣고받을 수 있습니다.

0

당신은 당신의 활동

+0

onNewIntent는 "단일 최상위"와 함께 사용할 수 있지만 "단일 작업"원인을 사용하므로 이전 활동으로 새 활동을 시작하고 싶지 않습니다. 감사. – majorl3oat