Freigeben über


Aktivieren von In-App-Produktkäufen (HTML)

[ Dieser Artikel richtet sich an Windows 8.x- und Windows Phone 8.x-Entwickler, die Windows-Runtime-Apps schreiben. Wenn Sie für Windows 10 entwickeln, finden Sie weitere Informationen unter neueste Dokumentation]

Ihre App kann Produkte und Features anbieten, die Kunden innerhalb der App erwerben können. Hier zeigen wir Ihnen, wie Sie diese Angebote in Ihrer App aktivieren können.

Beachten Sie, dass Kunden nur dann In-App-Produkte kaufen können, wenn sie eine Vollversion der App gekauft haben.

Wissenswertes

Technologien

Voraussetzungen

  • Eine Windows-Runtime-App zum Hinzufügen von Features zum Kauf für Kunden.

Anweisungen

Schritt 1: Initialisieren der Lizenzinfos für Ihre App

Rufen Sie bei der Initialisierung Ihrer App das LicenseInformation-Objekt für Ihre App ab, indem Sie das CurrentApp oder CurrentAppSimulator initialisieren, um Einkäufe von In-App-Produkten zu aktivieren.

function appInit()
{
    // some app initialization functions

        // Get current product object 
        // Execute only one of these statements. 
        // The next line is commented out for testing.
        // currentApp = Windows.ApplicationModel.Store.CurrentApp;

        // The next line is commented out for production/release.
        currentApp = Windows.ApplicationModel.Store.CurrentAppSimulator;

        // We should have either a real or a simulated CurrentProduct object here.

        // Get the license info
        licenseInformation = currentApp.licenseInformation;

    // other app initializations function
}

Hinweis  Wenn Sie Code für neue In-App-Produkte schreiben und erstmalig testen, müssen Sie anstelle des CurrentAppSimulator-Objekts das CurrentApp-Objekt verwenden. Auf diese Weise können Sie überprüfen, ob die Lizenzlogik simulierte Aufrufe an den Lizenzserver und nicht an den Live-Server verwendet. Dazu müssen Sie die Datei WindowsStoreProxy.xml in %userprofile%\AppData\local\packages\<package name>\LocalState\Microsoft\Windows Store\ApiData anpassen. Diese Datei wird vom Simulator in Microsoft Visual Studio erstellt, wenn Sie Ihre App erstmalig ausführen. Sie können aber auch eine benutzerdefinierte Version dieser Datei zur Laufzeit laden. Weitere Informationen finden Sie in der CurrentAppSimulator-Dokumentation.

 

Schritt 2: Hinzufügen von In-App-Produktangeboten in Ihre App

Erstellen Sie für jedes Feature, das über ein In-App-Produkt zur Verfügung stehen soll, ein Angebot in der App, und fügen Sie es Ihrer App hinzu.

Wichtig  Sie müssen Ihrer App alle In-App-Produkte hinzufügen, die Sie Ihren Kunden zur Verfügung stellen möchten, bevor Sie sie an den Store übermitteln. Wenn Sie zu einem späteren Zeitpunkt neue In-App-Produkte hinzufügen möchten, müssen Sie die App aktualisieren und eine neue Version übermitteln.

 

  1. Erstellen Sie ein Token für In-App-Angebote

    Sie identifizieren die einzelnen In-App-Produkte Ihrer App durch Token. Bei diesem Token handelt es sich um eine Zeichenfolge, die Sie festlegen und in Ihrer App und im Store verwenden, um ein bestimmtes In-App-Produkt zu identifizieren. Geben Sie ihm einen (für Ihre App) eindeutigen und aussagekräftigen Namen, sodass Sie beim Schreiben des Codes schnell das richtige Feature ermitteln können, für das es steht. Im Folgenden finden Sie einige Beispiele für Namen:

    • "SpaceMissionLevel4"
    • "ContosoCloudSave"
    • "RainbowThemePack".
  2. Schreiben Sie den Code für das Feature in einem Bedingungsblock.

    Sie müssen den Code für jedes Feature, das mit einem In-App-Produkt verknüpft ist, in einen Bedingungsblock aufnehmen. Dieser Bedingungsblock überprüft, ob ein Kunde eine Lizenz für die Verwendung dieses Features besitzt.

    Im folgenden Beispiel wird veranschaulicht, wie Sie Code für das Produkt-Feature featureName in einem lizenzspezifischen Bedingungsblock schreiben. Die Zeichenfolge featureName ist das Token, das dieses Produkt eindeutig in der App und im Store identifiziert.

    
    if (licenseInformation.productLicenses.lookup("featureName").isActive) 
    {
        // the customer can access this feature
    }
    else 
    {
        // the customer can't access this feature
    }
    
  3. Fügen Sie die Kauf-UI für dieses Feature hinzu.

    Ihre App muss den Kunden außerdem die Möglichkeit bieten, das über das In-App-Produkt angebotene Produkt oder Feature zu kaufen. Das Feature oder Produkt kann nicht auf die gleiche Weise wie die gesamte App im Store erworben werden.

    Hier finden Sie ein Beispiel dafür, wie Sie testen, ob der Kunde bereits ein In-App-Produkt besitzt. Es veranschaulicht außerdem, wie das Kaufdialogfeld angezeigt wird, sodass der Kunde es ggf. erwerben kann. Ersetzen Sie den Kommentar „show the purchase dialog“ durch den benutzerdefinierten Code für das Kaufdialogfeld (z. B. ein Fenster mit der Schaltfläche „Diese App kaufen“).

    function buyFeature1() {
        if (!licenseInformation.productLicenses.lookup("featureName").isActive)
        {
            // The customer doesn't own this feature, so 
            // show the purchase dialog.
    
            // note: currentApp is a reference to CurrentAppSimulator from a previous declaration
            currentApp.requestProductPurchaseAsync("featureName", false).then(
                function () {
                    //Check the license state to determine if the in-app purchase was successful.
                }, 
                function () {
                    // The in-app purchase was not completed because 
                    // there was an error.
                });
        } 
        else
        {
            // The customer already owns this feature.
        }
    }
    

Schritt 3: Ändern Sie den Testcode für die endgültigen Aufrufe.

Dies ist ein einfacher Schritt: Ändern Sie im Code Ihrer App nur alle Verweise auf CurrentAppSimulator in CurrentApp. Sie müssen die Datei "WindowsStoreProxy.xml" nicht mehr bereitstellen. Entfernen Sie sie also aus dem Pfad Ihrer App. Sie können sie jedoch zu späteren Referenzzwecken speichern, wenn Sie im nächsten Schritt das Angebot in der App konfigurieren.

Schritt 4: Konfigurieren des In-App-Produktangebots im Store

Fügen Sie vor dem Übermitteln der App an den Store die einzelnen In-App-Produkte im Workflow App übermitteln hinzu. Hier geben Sie den Token für das In-App-Produkt, den Preis und die Featurelebensdauer an. Die Konfiguration muss genau mit der Konfiguration in der Datei WindowsStoreProxy.xml übereinstimmen, die Sie beim Testen festlegen.

Schritt 5: Beschreiben Sie das In-App-Produkt im Store.

Nach dem Hochladen des App-Pakets in den Store können Sie die Beschreibung für die einzelnen In-App-Produkte auf der Seite Beschreibung eingeben, wenn Ihre App übermittelt wird. Unterstützt Ihre App mehrere Sprachen, müssen Sie alle In-App-Produkte in allen von der App unterstützten Sprachen beschreiben.

Geben Sie eine klare, spezifische Beschreibung ein, die genau angibt, wodurch das Feature das In-App-Produkt bereichert. Wenn Sie die Vorteile des Produktes nicht deutlich beschreiben und nicht auf den zusätzlichen Nutzen eingehen, dürfte es schwer werden, Kunden vom Kauf zu überzeugen. Ausführlichere Informationen zu bestimmten Teilen einer In-App-Produktbeschreibung finden Sie unter Beschreibung Ihrer App.

Anmerkungen

Wenn Sie Ihren Kunden In-App-Einkaufsoptionen zur Verfügung stellen möchten, fahren Sie mit dem Abschnitt Unterstützen von In-App-Produktkäufen von Consumables fort.

Wenn Sie anhand von Belegen überprüfen möchten, ob ein Kunde einen In-App-Produkt gekauft hat, lesen Sie Überprüfen von Produktkäufen anhand von Belegen.

Verwandte Themen

Unterstützen von In-App-Produktkäufen von Consumables

Beispiel für Test-App und In-App-Einkauf