2017-08-07 1 views
1

Ich bin gerade dabei, den IAP-Code meiner aktuellen App mit unserem Backend-Server zu verknüpfen. Eine Sache, die ich mir vorgenommen habe, war, sie auch dazu zu verwenden, stornierte und/oder fehlgeschlagene Transaktionen aufzuzeichnen.Eindeutigkeit von transactionIdentifier in abgebrochen SKPaymentTransaction

Dies brachte die Frage auf, ob der transactionIdentifier für diese Arten von Transaktionen als einzigartig betrachtet wird oder nicht? Genauer gesagt bin ich mir im Fall des Abbrechens nicht ganz sicher, ob es einen temporären Identifikator erzeugt und ihn dann durch einen vom App Store gegebenen ersetzt. Und wenn ja, ist der Temp noch einzigartig?

Ich zufällig in Xcode ein Datenelement in SKPaymentTransaction genannt _temporaryIdentifier, die mich über dieses mögliche Szenario nachdenken.

Beachten Sie, dass ich keine stornierten Transaktionen an unseren Server senden muss. Ich dachte nur, es wäre hilfreich zu haben. Es scheint, dass ich wahrscheinlich Fehler senden muss, da ich glaube, dass eine verzögerte Transaktion, die nicht erlaubt ist, zu einem Fehler führt.

Antwort

1

Nein, zählen Sie nicht auf sie sind einzigartig, sie gelten als undefined für einen anderen Staat als purchased oder restored.

Es wird ausdrücklich in der genannten documentation für transactionIdentifier:

Eine Zeichenfolge, die eindeutig eine Zahlungstransaktion erfolgreich identifiziert [...] Der Inhalt dieser Eigenschaft sind außer undefiniert, wenn transactionState ist festgelegt auf gekauft oder wiederhergestellt.

+1

Vielen Dank. Anscheinend habe ich die Fähigkeit zu lesen verloren. Ich hätte geschworen, dass ich diese Seite gelesen habe ... aber eindeutig nicht !! : D –

+1

Nun, egal ... Sie haben eine interessante Frage gestellt. Ich habe diese Seite auch vorher gelesen, aber ich habe nie wirklich * bewusst * registriert, dass die ID nach einem * erfolgreichen * Kauf nur 'in Stein gemeißelt' ist. Habe auch etwas neues gelernt, deshalb liebe ich StackOverflow haha: D – Kymer

Verwandte Themen