Я разрабатываю приложение для ресторана. Я использую One Signal в своем приложении для отправки уведомлений. Здесь, когда я размещаю заказ, мне нужно отправить уникальный идентификатор одного сигнала для конкретного пользователя для получения уведомления о том, что «Ваш заказ успешно установлен ... Он находится в состоянии« Прогресс ». Подождите». Для этого мне нужен пользовательский идентификатор пользователя One Signal. Как я могу его получить? Я новичок в One Signal. Пожалуйста, помогите мне.Как получить уникальный идентификатор пользователя One Signal в Mobile?
ответ
Получил уникальный идентификатор OneSignal, используя следующий код, который находится на официальном сайте OneSignal.
OneSignal.idsAvailable(new OneSignal.IdsAvailableHandler() {
@Override
public void idsAvailable(String userId, String registrationId) {
Log.d("debug", "User:" + userId);
if (registrationId != null)
Log.d("debug", "registrationId:" + registrationId);
}
});
См:
для IOS:
let status: OSPermissionSubscriptionState = OneSignal.getPermissionSubscriptionState()
if let id = status.subscriptionStatus.userId {
oneSignalPlayer_ID = id
print("\nOneSignal UserId:", id)
}
@Lakshmi Reddy
в прошивке, вы можете сделать, как показано ниже:
OSPermissionSubscriptionState* status = [OneSignal getPermissionSubscriptionState];
status.permissionStatus.hasPrompted
status.permissionStatus.status
// <- OneSignal idsAvailable is deprecated.it's the alternative
status.subscriptionStatus.subscribed
status.subscriptionStatus.userSubscriptionSetting
status.subscriptionStatus.userId
status.subscriptionStatus.pushToken
NSLog(@"Push Token - %@",status.subscriptionStatus.pushToken);
NSLog(@"Push User ID - %@",status.subscriptionStatus.userId);
выше решение для андроида осуждается Использование:
OSPermissionSubscriptionState status = OneSignal.getPermissionSubscriptionState();
status.getSubscriptionStatus().getUserId();
Для Android, вы можете получить UserIds ака playerIDs начиная с версии нативного SDK Android 3.5.0+ с помощью getPermissionSubscriptionState метод и addSubscriptionObserver.
Для дополнительной информации об использовании getPermissionSubscriptionState см: https://documentation.onesignal.com/docs/android-native-sdk#section--getpermissionsubscriptionstate-
Для добавления наблюдателей подписки см: https://documentation.onesignal.com/docs/android-native-sdk#section--addsubscriptionobserver-
Существует пример Native Android на Github: https://github.com/OneSignal/OneSignal-Android-SDK
Это в примерах папку с надписью AndroidStudio
Для iOS вы можете получить идентификаторы игроков, начиная с версии 2.5.0 родного iOS SD K, используя метод getPermissionSubscriptionState и addSubscriptionObserver.
Для дополнительной информации об использовании getPermissionSubscriptionState см: https://documentation.onesignal.com/docs/ios-native-sdk#section--getpermissionsubscriptionstate-
Для добавления наблюдателей подписки см: https://documentation.onesignal.com/docs/ios-native-sdk#section--addsubscriptionobserver-
Существует проект с IOS Пример в Swift на Github, которые могли бы иметь некоторую помощь: https://github.com/OneSignal/OneSignal-iOS-SDK/tree/master/Examples
Я был пытаясь сделать это на iOS, и это объясняет, как это сделать. Его та же логика в iOS – blackmoon
Извините. Идея для IOS ji @blackmoon –
Любое решение для iOS @blackmon –