如何在 android 上禁用 OneSignal?

How to disable OneSignal on android?

我想在我的应用程序上使用 OneSignal 向我的用户发送通知,它有据可查而且很好,你应该这样做:

https://documentation.onesignal.com/docs/android-sdk-setup

OneSignal.startInit(this)
    .inFocusDisplaying(OneSignal.OSInFocusDisplayOption.Notification)
    .unsubscribeWhenNotificationsAreDisabled(true)
    .init();

问题是,我只想向我登录的用户发送通知,所以如果用户注销,我不希望他收到通知,如何在启动后禁用 OneSignal

我不想在服务器上处理这个问题,我想它应该是停止 OneSignal 服务的某种方式。

OneSignal 有一个叫做段的​​东西...(标志)。

您可以使用 OneSignal 设置标志。如果用户已登录,则他们属于注销用户不属于的标志。

例如,如果已登录,请将 OneSignal 的标志设置为 loggedin。如果注销,请将此用户的 OneSignal 标志设置为 loggedout。当您发出通知时,您只将它发送到 loggedin 标志。

您可以在注销过程中调用以下方法

OneSignal.setSubscription(false);

https://documentation.onesignal.com/docs/android-native-sdk#section--setsubscription-

我们可以使用以下方法轻松enable/disable OneSignal 推送通知:

OneSignal.disablePush(boolean)

来源: https://documentation.onesignal.com/docs/sdk-reference#disablepush-method