Aktueller Beleg ungültig oder nicht übereinstimmend ds person id

8

Ich versuche, In-App-Käufe für MacOS zu testen. Nach Eingabe der Testbenutzeranmeldeinformationen beschwert sich der App Store: "Aktueller Beleg ungültig oder nicht übereinstimmende DS-Personen-ID." und der Kauf schlägt fehl.

    
Nathan H 18.07.2011, 16:55
quelle

4 Antworten

3

Ist der Beleg für die von Ihnen ausgeführte Anwendung auch für den gleichen Testbenutzer wie derjenige, für den Sie In-App-Kauf versuchen?

Wenn Ihre Debug-Version ohne eine ordnungsgemäße Quittung läuft (vom selben Testbenutzer), bezweifle ich, dass der In-App-Kauf funktioniert. Verwenden Sie nicht den Musterbeleg, wenn Sie den In-App-Kauf testen möchten, verwenden Sie einen echten Test vom selben Testbenutzer, mit dem Sie das In-App-Produkt kaufen.

Ich habe es geschafft, den In-App-Kauf in meiner eigenen Mac-App durchzuführen (obwohl es immer noch nicht im Laden ist). Wenn du also noch weitere Fragen hast, feuere ab.

    
Jacob Gorban 27.07.2011, 13:09
quelle
6

Einige der vielen Dinge, die ich versucht habe, dieses Problem zu umgehen.

App Store-Einnahmen erhalten

UPDATE: Hier ist Rainer Brockerhoffs Kommentar von unten zu diesem Artikel. Viel elegantere Lösung.

  

Ich sehe nicht die Notwendigkeit für all diese Verrenkungen ...

     

Um meinen Quittungskontrollcode zu debuggen, baue ich einfach und zeige dann das Produkt   App im Finder. Doppelklicken Sie einmal darauf und es wird dann (173) beendet   Sie erhalten die Quittung in das Bündel.

     

Gehen Sie jetzt zurück zu Xcode und debuggen Sie den Checker. Die Quittung bleibt erhalten   dort bis du sauber bist; Sie können das alles noch einmal tun oder die Quittung kopieren   anderswo und legte es nach dem Bau zurück - an einem Punkt hatte ich die Quittung   erneut von einem Build-Skript eingefügt.

     

Wenn Sie die archivierte App testen möchten, zeigen Sie das Produkt in der   Finder, dann gehen Sie ein paar Ordnerebenen in den "Release" - Ordner, und   Dort sehen Sie die App - Sie können von dort aus auf sie doppelklicken.

Das lange Verfahren, um eine Quittung zu erhalten:

  1. Archiviere die App
  2. Innerhalb des Xcode-Organisators
  3. Wählen Sie Verteilen ...
  4. aus
  5. Exportieren als: Mac-Installationspaket

Schließlich installieren Sie es von der Kommandozeile wie folgt

%Vor%

Jetzt sollte die App eine Quittung für diesen Pfad enthalten

  

/Applications/SampleApp.app/Contents/ _MASReceipt / receipt

Bestätigungs-E-Mail

Apple sendet eine E-Mail, wenn Sie einen Testbenutzer in iTunes Connect erstellen.

  

E-Mail-Betreff:

     

Bitte überprüfen Sie die Kontakt-E-Mail-Adresse für Ihre Apple ID

Meine E-Mail endete in meinem Spam-Ordner, also habe ich sie nie gesehen. Daher wurde das Testbenutzerkonto nie überprüft.

Überprüfen Sie den Status

In iTunes Connect unter Apps verwalten & gt; Beispielanwendung & gt; In-App-Käufe verwalten

Hier sollte der Status " Bereit zum Senden"

lauten

Wenn dies nicht der Fall ist, müssen Sie möglicherweise einen Screenshot hochladen.

    
neoneye 05.05.2012 10:18
quelle
5

Ich werde meine eigene Frage beantworten. Ich habe das Video "In-App Purchase für iOS und Mac OS X" auf Ссылка angesehen.

>

Der wichtigste Teil bestand darin, den App-Beleg beim Start herunterzuladen. Der Code, der in den App-Delegaten aufgenommen werden sollte, war ungefähr so:

%Vor%     
Nathan H 03.08.2011 08:47
quelle
5

ich selbst war sehr in Schwierigkeiten, um In-App Purchase in Mac OS X zu integrieren.

Ich habe viel gegoogelt, aber nichts kam mit der Lösung. Schließlich kamen Apple-Entwickler zur Rettung. Im Grunde gab es den Grund in wwdc 2012, dass es einen Fehler in MAC OS X (Version 10.7.2) gab, aufgrund dessen man die Quittung nicht empfangen konnte.

Dieser Fehler wurde in der neuesten Version behoben, dh MAC OS X (Version 10.7.4)

Ich habe einfach mein Betriebssystem aktualisiert und konnte die Quittung erhalten. Also Freunde, die so das Problem bekommen "Aktueller Beleg ungültig oder nicht übereinstimmend ds person id." Aktualisieren Sie einfach das Betriebssystem auf 10.7.4 und die apso notieren Sie den folgenden Code in Ihrer App-Delegate "applicationDidFinishLaunching" -Methode -

%Vor%

und starten Sie Ihren Code zum ersten Mal außerhalb des XCode. dann nach Erhalt des Rezitats können Sie erneut vom XCode debuggen.

Jedes Mal, wenn Sie den Build säubern, müssen Sie Ihre App außerhalb des XCodes ausführen.

    
Shubhendu 15.06.2012 04:30
quelle