2014-10-20 5 views
0

androidhive에서 푸시 알림을 사용하고 있습니다. 프로젝트를 성공적으로 실행할 수 있습니다. 내 프로젝트에 추가했습니다. 모든 것이 완벽하게 작동합니다. 이제는 사용자가 내 응용 프로그램에서 로그 아웃 할 때 서버에서 메시지를받지 않아야한다고 구현하려고합니다. 그가 다시 로그인 한 후에는 보류중인 모든 알림을 볼 수 있습니다. 나는 고쳐졌고, 무엇을해야할지 모른다. 당신이 그런 상황에서 GCM에서 등록을 취소하지 않아야 개발자 문서에 따르면로그인 후 보류 중 알림

public static void logout(Context context){    

//  GCMRegistrar.unregister(context);   

     AppConstant.setBooleanSharedPreference(context, AppConstant.SP_IS_LOGGED_IN, false); 
     Intent intent = new Intent(context,LoginActivity.class); 
     intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TASK); 
     context.startActivity(intent); 
    } 

답변

1

: 여기 내 로그 아웃 코드입니다. 여기에서 읽을 수 있습니다 http://developer.android.com/google/gcm/adv.html#unreg-why

사용자가 로그인 한 경우 onMessage() 메소드에서 GCMIntentService를 체크인하고 알림을 수행할지 결정할 수 있습니다. 그래서 사용자가 로그 아웃 할 때 DB에 알림을 저장하고 로그인 할 때 알림을 표시 할 수 있습니다.

+0

사용자가 다른 장치에 로그인하면 어떻게됩니까? 이 경우 그는 그 사실을 알리지 않을 것입니다. 그러나 이론적으로 그는 계류중인 통지를 받아야한다. – Developer