иногда Один сигнал возвращает UserId как ноль - PullRequest
0 голосов
/ 01 февраля 2019

В моем приложении я отправляю уведомления пользователю через один сигнал. Но иногда один Сигнал возвращает нулевой Идентификатор пользователя ... тогда я сталкиваюсь с проблемой отправки уведомления пользователю. Как я могу решить это.если у кого-то есть решение, пожалуйста, поделитесь со мной

, вот мой код для генерации идентификатора пользователя

    OneSignal.idsAvailable(new OneSignal.IdsAvailableHandler() {
            @Override
            public void idsAvailable(String userId, String registrationId) {
                Log.d("test","key is"+notification_key);
                notification_key=userId;
            }
        });

, и я инициализирую свой сигнал таким же образом в MyApplication.class

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

1 Ответ

0 голосов
/ 01 февраля 2019

Используемый вами метод устарел.

Используйте вместо getPermissionSubscriptionState, addPermissionObserver или add SubscriptionObserver

Вот пример -

OSPermissionSubscriptionState status = OneSignal.getPermissionSubscriptionState();
        boolean isEnabled = status.getPermissionStatus().getEnabled();
        boolean isSubscribed = status.getSubscriptionStatus().getSubscribed();
        boolean subscriptionSetting = status.getSubscriptionStatus().getUserSubscriptionSetting();

        String userID = status.getSubscriptionStatus().getUserId();

Для получения дополнительной информации, проверьте this

Вот проблема 1016 * на Github

...