0

MFP 통합 Android 앱을 개발 중입니다. MFP 푸시 알림을 구현했으며 정상적으로 작동합니다. 나는 그 통고를 받는다. 알림을 클릭하면 앱이 다시 시작됩니다.IBM Mobilefirst : 알림을 클릭하면 앱이 다시 시작됩니다.

실제 문제는 내 앱 실행시 시작되는 스플래시 활동과 모든 MFP 항목을 초기화하고이 활동을 종료하여 로그인 활동으로 앱을 가져 오는 것입니다.

내 매니페스트 파일에 다음과 같이 수신자를 정의합니다.

수신자가 내 스플래시 활동에 정의되어 있지만이 활동을 마치고 로그인 활동으로 이동 한 다음 로그인 활동에서 다른 활동으로 이동합니다. 이제 스플래시 활동은 앱을 시작할 때마다 한 번만 호출됩니다.

알림을 클릭하면 다른 활동을 종료하고 스플래시 활동 만 시작하기 때문에 스플래시 활동을 다시 시작합니다.

그래서 어떤 신체가 내 앱을 디자인하면 앱의 활동 중일 때 알림을받을 수 있습니다 (스플래시 활동을 실행해서는 안되지만 대신 동일한 활동에 있어야 함). 앱이 열려 있고 onrecieve 메시지 메서드를 호출하십시오.)

제안 해주십시오.

이전에 유사한 유형의 질문을했지만 문제를 찾을 수 있었으므로 실제 문제와 함께이 문제를 게시하려고합니다. Mobilefirst PushNotification: On using wl_anonymousUserRealm at server, app is not calling onReceive method on clicking notification

답변

0

마지막으로 몇 가지 해결책이 있습니다.

나는 더미 활동을 만들었으며 내 응용 프로그램이 배경에 있고 응용 프로그램은 알림을 얻는 경우 위의 언급 코드를 바인딩

<activity 
    android:name=".controllers.activities.DummyActivity" 
    android:launchMode="singleTask" 
    android:theme="@style/AppTheme.NoActionBar"> 


    <intent-filter> 
     <action android:name="com.mypackage.NOTIFICATION" /> 
     <category android:name="android.intent.category.DEFAULT" /> 
    </intent-filter> 
</activity> 

을 it.` 할 수 있습니다. Notification을 클릭하면 dummyactivity가 열리고 onResume() 메서드에서 finish() 메서드를 호출합니다. 따라서이 특정 활동은 열리기 전에 완료되어 이전 활동을 열 것이며 false라면 applaunched라는 체크를하고 있습니다. 앱을 다시 시작합니다.

이 솔루션은 스트레이트 솔루션은 아니지만 지금은 해결 방법입니다.

1

Setting up a GCM client in AndroidReceiving downstream messages 당신이 당신의 시나리오에 찾고있을거야 좋은 참조입니다.

메시지 수신에 필요한 GCM 수신자 및 서비스를 정의해야합니다. 이렇게하면 Activity에 메시지를 수신하는 데 큰 도움이됩니다 (Service에는 UI가 필요하지 않으므로 BroadcastReceiver은 CPU가 깨어나 청취자 서비스가 해당 작업을 완료하는 데 도움이 됨).

희망이 도움이됩니다.

+0

답장을 보내 주셔서 감사합니다. 그러나 저는 Mobilefirst SDK를 사용하는 방법을 알고 싶었습니다. 만약 당신이 그것에 대해 조금이라도 생각하고 있다면 당신이 Mobilefirst 쪽에서 나를 도울 수 있다면 ... – Bender

관련 문제