우리 앱은 이전에 Parse.com을 사용했으며 지금은 OneSignal을 구현하고 있습니다. 불행히도 Parse에서 사용자 데이터를 잃어 버렸지 만 이미 선택 해제 한 사용자를 귀찮게하지 않으려합니다.OneSignal Unsubscribe 앱 시작시 특정 조건의 사용자
간단한 토글을 통해 탈퇴가 이루어지고 상태가 저장됩니다. 내 생각은 그 상태를 읽은 다음 OneSignal.setSubscription (false); 응용 프로그램이 열리고 사용자가 OneSignal에 등록 (또는 이미 등록됨) 될 때 이전에 저장 한 토글로 인해 등록이 취소됩니다.
그러나 OneSignal은 Phone의 Android Studio에서 App을 실행하는 중에 if 문 내의 코드를 디버깅하는 동안 서버 측에서 아무 것도하지 않습니다.
이SharedPreferences prefs = getSharedPreferences("prefpush", Context.MODE_PRIVATE);
Boolean checkSub = prefs.getBoolean("prefpush", false);
if(!checkSub) {
OneSignal.setSubscription(false);
}
내 장치가 보이는 경우에도 디버깅하는 동안이 제품은 또한 "false"를 반환
이 가입 할 수 있습니다 : 내 장치를 등록하고 yes로 구독을 설정하지만, 다음 코드가 실행되면 취소하지 않는 OneSignal
수신 통지 :
status.getSubscriptionStatus().getSubscribed();
알림 푸시 초기화한다 OneSignal 부분 :
OneSignal.startInit(this)
.setNotificationOpenedHandler(new ExampleNotificationOpenedHandler())
.setNotificationReceivedHandler(new ExampleNotificationReceivedHandler())
.init();
을
다른 경우를 구현합니다. 즉, 사용자가 처음에 가입했는지 여부를 확인하고 앱 내에서 알림이 사용 중지되어 있는지 확인합니다 (토글이 사용 중지되었는지 확인). OneSignal.setSubscription (false); 끊임없이 실행되지 않습니다. 하지만 처음에는 좀 더 간단한 시나리오에서 작동하도록 할 수 없습니다.