Hallo zusammen,
ich implementiere gerade (zum ersten mal) einen In-App Kauf in meine Mac App. Bisher hat das auch ganz gut geklappt, ich bin noch am Testen, das ist aber auch nicht das Problem. Für den Benutzer soll das natürlich so angenehm wie nur möglich sein, diesen Kauf zu tätigen. Dazu habe ich einmal den "Purchase" Button, und natürlich den "I've already purchased it" Button. Beides funktioniert. Wenn man den Kauf nun getätigt oder wiederhergestellt hat, kann man die Funktion nur solange nutzen, wie man die App offen hat. Bei einem Neustart muss man den Kauf also wiederherstellen. Da kommen wir zu meiner Frage:
Wie stellt man es am schlausten an, dass der Benutzer den Kauf nicht immer wiederherstellen muss?
Wenn ich es nun per NSUserDefaults bzw. in einer plist speichere, kann man den IAP "hacken" - und zwar sehr leicht. Auch den gespeicherten Wert anders zu benennen würde die "Hacker" nur mehr Zeit kosten - aber nicht aufhalten. Könnte man das vielleicht über das App Store Receipt machen? Und wenn ja, wie? Oder könnte man den Wert in einer verschlüsselten Datei irgendwo tief vergraben in der Library speichern?
LG,
Florian
ich implementiere gerade (zum ersten mal) einen In-App Kauf in meine Mac App. Bisher hat das auch ganz gut geklappt, ich bin noch am Testen, das ist aber auch nicht das Problem. Für den Benutzer soll das natürlich so angenehm wie nur möglich sein, diesen Kauf zu tätigen. Dazu habe ich einmal den "Purchase" Button, und natürlich den "I've already purchased it" Button. Beides funktioniert. Wenn man den Kauf nun getätigt oder wiederhergestellt hat, kann man die Funktion nur solange nutzen, wie man die App offen hat. Bei einem Neustart muss man den Kauf also wiederherstellen. Da kommen wir zu meiner Frage:
Wie stellt man es am schlausten an, dass der Benutzer den Kauf nicht immer wiederherstellen muss?
Wenn ich es nun per NSUserDefaults bzw. in einer plist speichere, kann man den IAP "hacken" - und zwar sehr leicht. Auch den gespeicherten Wert anders zu benennen würde die "Hacker" nur mehr Zeit kosten - aber nicht aufhalten. Könnte man das vielleicht über das App Store Receipt machen? Und wenn ja, wie? Oder könnte man den Wert in einer verschlüsselten Datei irgendwo tief vergraben in der Library speichern?
LG,
Florian