In app purchase "Premium"

  • 9 Antworten
  • Letztes Antwortdatum
Jaiel

Jaiel

Dauer-User
235
Hallo

Ichhabe meine App soweit fertig und möchte nun Werbung einbauen und dazu noch die Möglichkeit diese upzudaten

Da gibt es aber ein paar Vorüberlegungen die ich angehen muss.

Und zwar möchte ich dem User anbieten sich von Werbung zu befreien und einige Featres noch einabuen wie Statistiken reseten(es ist ein Spiel) und sich am Leaderboard anmelden zu dürfen ums ich mit der Welt vergleichen zu können(gute Idee btw oder lieber gleich die Möglichkeit anbieten?)

So: wo soll ich das dann speichern ob das Features gekauft wurde oder nciht? sharedprefs können per Hand gelöscht werden, DB wäre zu viel und ein File kann ebenfalls gelöscht werden bzw bei deinstallation entfernt werden.

Es beim starten der App zu prüfen wäre auch eine Möglichkeit aber dann müsste man Online gehen bzw Internet an haben(für LEaderboard eh wichtig)

Wie soll ich das nun angehen?

Manche Apps haben auch ein Button wie z.B. "in app purchases synchronisieren" . Wäre auch ok eig.


Wie habt ihr das so gehandhabt bzw würdet ihr das Handhaben?
 
Hallo Jaiel,
Vorweg: einen wichtigen Punkt hast du vielleicht noch nicht auf dem Radar: Die "Piraterie". Sprich das Verändern der Einstellungen (zB mittels Tools wie dem SettingsDebugger). Dementsprechend ist es nicht angeraten ein Feld "isPremium = false" anzulegen und bei einem Kauf auf true zu setzen <- dass diese Logik keiner besonders großen geistigen Leistung darf, um sie zu knacken, liegt auf der Hand:D.
Eine Lösung wäre eine Art Key zu erstellen. ;)
Ebenfalls solltest du dir etwas einfallen lassen um den PublicKey (Licence-Key) über die Laufzeit "zusammen zu chainen", ob das was bringt, kann ich nicht beurteilen, aber Google empfielt hier das Konzept der "Security throught obscurity" (bin selbst kein großer Fan von diesem Programmierstil^^)

Wie auch immer.. Nun zu deiner Frage:
Die Käufe werden letztlich auf den Google Servern mit dem Account verlinkt, bei Neuinstallation fragst du die hinterlegten Käufe ab und kannst so Einfluss auf die Einstellungen nehmen (sprich: das Feature wieder für den offline-Betrieb freischalten).

Leaderboards sind ein Social-Feature, das der Verbreitung der App eher dienlich ist, somit würde ich es bereits in der Free-Version anbieten. Die Werbung zu deaktivieren ist ganz klar ein Pro-Feature.

Letztlich wird dir die Doku zu den IAB sehr weiterhelfen, dort sind viele wichtige Konzepte und Codebeispiele enthalten. Ebenfalls ist das Video von Bruno Oliviera sehr sehenswert um sich einen groben Überblick zu verschaffen.

Beste Grüße
Martin
 
  • Danke
Reaktionen: Jaiel
Alternativ zum "in app purchase" könntest du auch eine zweite kleine premium Key App erstellen. Deine haupt App kann dan beim Start überprüfen ob die Premium App installiert ist und dan die Features freischalten.
Sieht man öfters mal im Playstore.
Code:
boolean isProKeyInstalled(){        
        PackageManager manager = getPackageManager();
        if (manager.checkSignatures(getPackageName(), "DeinPacketName") == PackageManager.SIGNATURE_MATCH)
            return true;
        else
            return false;           
    }
Allerdings kann ich dir nicht sagen wie piraterie sicher das ganze ist. Allzuschwer wird das vermutlich nicht zu umgehen sein :unsure:
 
ne galub ich auch nciht dass man etwas sicher machen kann erst recht nciht etwas in java geschriebenes. Ich hab mal ein Video gesehen wo man erklärt hat dass wenn man glück hat erst in 1 Woche seine Software geknackt ist und frei zugänglich ist, deshalb setzen viele Entwickler sogar selbst eine Version auf dem schwarzmarkt ab die etwas verändert ist. Zum Beispiel bleibt man in einem Spiel irgendwann mal im Aufzug stecken oder beim Spiel Game Dev Tycoon werden irgednwann mal eifnach alle Spiele schwarz gedownloaded . Das Witzige sit dass sich diese Spieler die eine illegale Kopir erworben haben sich darüber in den Foren auch ncoh beschweren à la "Was soll der scheiß?" oder "wie kann man nur so etwas abliefern"XD

Naja ich habe mir das auch shcon überlegt eine Premium App extra in den Store abzusetzen die dann die freie App sozusagen updatet...mmmh ich muss mir mal ncoh mal angucken wie das genau läuft.

Irgendwie die alte aktualisieren aber die sharedprefs beibehalten da dort wichtige daten drauf sind(nciht app wichtig). Ich kann ja meine Apps die Berechtigung geben im gleichen Prozess zu laufen.
Geht das auch diese zu aktualisieren also 2 verschiedene Versionen der gleichen App im Store zu haben. Obwohl beide dann die selbe Signatur haben(mein letzter Stand ist dass das nciht eght)

Sowas hat ja zum Beoispiel "Quiz Duell" gemacht
 
Jo, ich habe es letztlich so ähnlich gemacht. Ich kann definitiv nachvollziehen, wenn jemand Premium-Features nutzt und würde bei Unstimmigkeiten die betroffene Person anschreiben. Da ich das in meinen Datenschutzbestimmungen auch so beschrieben habe, sollte es hier juristisch keine Probleme geben.
Übrigens: Mir geht es dabei auch nicht um die 2,39€ (wenn sich das jemand nicht leisten "kann" würde ich ihm sogar einen Unlock-Key kostenlos zukommen lassen) - sondern mehr das Prinzip, dass günstige Software in Form von Apps nicht geklaut werden sollte, da man oft nicht die großen Konzerne damit trifft, sondern viel eher kleine (Hobby / Privat)-Entwickler, die sich einfach nur ein kleines Zubrot verdienen möchten. Insgesamt würde ich es begrüßen, wenn sich dieser Haltung weitere (Hobby-)Entwickler anschließen.
 
Ein Vorteil einer Lösung ohne in App purchase wäre auch das man nicht so sehr mit dem negativen Ruf davon zukämpfen hätte. Gerade bei Spielen ist es ja leider oft so das diese überhandnehmen und die Spiele häufig so wirken als wären sie nur entstanden um die Leute zu möglichst vielen Einkäufen zu treiben. Ich bin zumindest oft skeptisch wenn ich sehe das Spiele im Playstore kostenlos sind und in App Käufe vorhanden sind.
Gerade wenn es für den Nutzer sowieso nur einmal nötig sein soll Geld auszugeben, um dann alles freizuschalten, kann es sinnvoll sein das dan über eine zweite App oder einer Key App zu lösen.


missspelled schrieb:
Jo, ich habe es letztlich so ähnlich gemacht. Ich kann definitiv nachvollziehen, wenn jemand Premium-Features nutzt und würde bei Unstimmigkeiten die betroffene Person anschreiben. Da ich das in meinen Datenschutzbestimmungen auch so beschrieben habe, sollte es hier juristisch keine Probleme geben.
Übrigens: Mir geht es dabei auch nicht um die 2,39€ (wenn sich das jemand nicht leisten "kann" würde ich ihm sogar einen Unlock-Key kostenlos zukommen lassen) - sondern mehr das Prinzip, dass günstige Software in Form von Apps nicht geklaut werden sollte, da man oft nicht die großen Konzerne damit trifft, sondern viel eher kleine (Hobby / Privat)-Entwickler, die sich einfach nur ein kleines Zubrot verdienen möchten. Insgesamt würde ich es begrüßen, wenn sich dieser Haltung weitere (Hobby-)Entwickler anschließen.

Ich denke die meisten Entwickler sind deiner Meinung, dass es fair ist, einen Betrag für eine App zu bezahlen die gut umgesetzt ist und tut, was sie verspricht. Nur leider bei vielen Nutzern nicht. Ich denke vielen ist auch gar nicht bewusst wie viel Arbeit und Zeit dahinter steckt. (Entwickler wissen das ja und sind daher auch eher bereit Geld auszugeben)
 
Ich denke gerade darüber nach wirklich noch eine zweite App in den Store zu stellen also eine Premium Edition und die beiden dann miteinander kommunizieren zu lassen.
Mir ist dabei eigenltich nur wichtig dass die SharedPrefs des User an die Premium app übermittelt werden sollen falls er vorher die kostenlose installiert hat und schon einen Highscore hat im LEaderboard dass ich vond ieser aus die Daten übermittle.

Wie sollte ich da rangehen?
Einen Broadcastreceiver der die Daten dann übermittelt?

Ich habe mcih noch nciht damit beschäftigt wie man seine Apps miteinander kommunizieren lässt ich hab da irgendwas mit Broadcasts in errinerrung? Ist das richtig so...habe ich wo cih angefangen ahbe mit Android in meinem schlauen Buch mal gelesen aber das war im November letzten Jahres :/

Der ursprüngliche Beitrag von 03:13 Uhr wurde um 03:15 Uhr ergänzt:

Das scheint wohl die richtige Seite für mich zu sein : Building Apps with Content Sharing | Android Developers
 
In app Käufe haben halt noch den Vorteil, dass sie nicht zurückbuchbar sind :) und man hat nur eine App zu warten (wobei ein unlock-key ja auch keine große Arbeit macht). Einen Nachteil des Unlock-Keys sehe ich noch darin, dass der Nutzer immer 2 Apps installieren muss (ich persönlich finde es immer recht nervig).
Hat alles seine Vor- und Nachteile... Ich rate trotzdem zu IAB. :) denke auch dass IAB in Zukunft weiterhin immer mehr Beachtung bekommen. Gerade vor dem Hintergrund der neuen Berechtigungen (die der Nutzer selbst freigegeben kann), sehe ich in einem möglichst "in sich geschlossenem" Programm größere Vorteile. So hat man eben alles unter einem Hut. :)
@Feuerstein: der Aussage "Entwickler wissen wie viel Arbeit es ist und kaufen deshalb", kann ich nur voll zustimmen, denke ebenfalls, dass in Entwicklerkreisen die Piraterie doch eher gering ausfällt. :)
 
Ein Problem bei in-App käufen und Unlock-Keys ist das der zahlende Nutzer trotzdem die Werbespionage Software aufgedrückt bekommt.

Korrigiert mich wenn ich falsch liege... aber um Werbung einzubinden bindet der Entwickler closed Source Software vom Werbeanbieter ein!? Und was die so macht weiß der Entwickler auch nicht so genau!? Korrekt?

Ferner führt das dazu das ich gekauften Apps die eigentlich kein Internet benötigen trotzdem die Internet Berechtigung geben muss.

cu
 
Leudde

wie soll ich die Kommunikation zwischen applikationen am besten durchführen?

Ich könnte die SharedPrefs auf world readable stellen

aber das scheint ein schlechter stil zu sein

weiterhin kann ich auch einen Contentprovider bereitstellen
oder filesharing oder intents oder oder oder

Keine Ahnung was am besten ist

Tipps?
 

Ähnliche Themen

G
Antworten
0
Aufrufe
132
Gerdchen07
G
G
Antworten
1
Aufrufe
384
Gerdchen07
G
G
Antworten
13
Aufrufe
596
Gerdchen07
G
L
Antworten
2
Aufrufe
553
Lexub
L
migi01
Antworten
26
Aufrufe
1.988
migi01
migi01
Zurück
Oben Unten