it-swarm.com.de

Wie bekomme ich eine eindeutige Benutzer-ID von One Signal in Mobile?

Ich entwickle eine Restaurant-App. Ich verwende One Signal in meiner App, um Benachrichtigungen zu senden. Während ich die Bestellung aufgeben, muss ich die eindeutige ID des einen Signals für einen bestimmten Benutzer senden, um eine Benachrichtigung zu erhalten, dass Ihre Bestellung erfolgreich platziert wurde. Dafür brauche ich die One-Signal-Benutzer-ID des Benutzers. Wie kann ich es bekommen? Ich bin Neuling bei One Signal. Bitte hilf mir.

21
Parama Sudha

Die eindeutige ID von OneSignal erhalten Sie, indem Sie den folgenden Code verwenden, der sich auf der offiziellen Seite von OneSignal befindet.

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);

        }
    });

Verweisen:

Code auf der offiziellen Website abrufen

40
Parama Sudha

Die obige Lösung für Android ist veraltet Verwendung:

OSPermissionSubscriptionState status = OneSignal.getPermissionSubscriptionState();
status.getSubscriptionStatus().getUserId();
12
Amjed Baig

Für Android können Sie die Benutzer-IDs (Player-IDs) ab der Version 3.5.0 des nativen Android-SDK mithilfe der getPermissionSubscriptionState-Methode und der Option addSubscriptionObserver abrufen.

Weitere Informationen zur Verwendung von getPermissionSubscriptionState finden Sie unter: https://documentation.onesignal.com/docs/Android-native-sdk#section--getpermissionsubscriptionstate-

Informationen zum Hinzufügen von Abonnementbeobachtern finden Sie unter: https://documentation.onesignal.com/docs/Android-native-sdk#section--addsubscriptionobserver-

Es gibt ein natives Android-Beispiel auf Github: https://github.com/OneSignal/OneSignal-Android-SDK

Es befindet sich im Ordner Beispiele mit der Bezeichnung AndroidStudio

Für iOS können Sie die Player-IDs ab Version 2.5.0 des nativen iOS-SDK mithilfe der Methode getPermissionSubscriptionState und addSubscriptionObserver abrufen.

Weitere Informationen zur Verwendung von getPermissionSubscriptionState finden Sie unter: https://documentation.onesignal.com/docs/ios-native-sdk#section--getpermissionsubscriptionstate-

Informationen zum Hinzufügen von Abonnementbeobachtern finden Sie unter: https://documentation.onesignal.com/docs/ios-native-sdk#section--addsubscriptionobserver-

Es gibt ein iOS-Beispielprojekt in Swift auf Github, das möglicherweise hilfreich ist: https://github.com/OneSignal/OneSignal-iOS-SDK/tree/master/Examples

4
JonF

für iOS :

let status: OSPermissionSubscriptionState = OneSignal.getPermissionSubscriptionState()
    if let id = status.subscriptionStatus.userId {
    oneSignalPlayer_ID = id
    print("\nOneSignal UserId:", id)
}
2
Maksim Kniazev

@ Lakshmi Reddy

in iOS können Sie wie folgt vorgehen:

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);
0