Oprócz umożliwienia w aplikacji sprzedaży produktów cyfrowych i subskrypcji w Sklepie Play Płatności w Google Play to narzędzia do zarządzania katalogiem, cenami i subskrypcjami. i dotychczasowy proces płatności oparty na Sklepie Play. it są też wymagane w przypadku aplikacji opublikowanych w Sklepie Play, które służą do sprzedaży produktów cyfrowych.
wprowadzamy Chrome 88 w ramach wersji próbnej origin na Androida, która umożliwia integrację Trusted Web Activities przy użyciu interfejsów Payment Request API oraz Digital Goods API, aby implementować procesy zakupów za pomocą Płatności w Google Play. Ta wersja próbna origin powinna być również dostępna dla ChromeOS w wersji 89.
Aby ułatwić integrację z aplikacją na Androida, zespół Zaufanej aktywności internetowej z biblioteki rozszerzeń do android-browser-helper. Z tego przewodnika dowiesz się, jakie zmiany są wymagane do zintegrowania tej biblioteki z istniejącą aplikacją.
Uwaga: ten artykuł dotyczy integracji z aplikacją na Androida. Jeśli używasz Bubblewrap pozwoli Ci skompilować aplikację i umożliwić jej aktualizację przy użyciu tego narzędzia. implementacja w aplikacji Bubblewrap jest śledzona w tym problemie. Ten przewodnik jest przeznaczony dla: użytkowników, którzy nie używają aplikacji Bubblewrap.
build.gradle
Sama biblioteka rozszerzenia płatności zależy od wersji 2.1.0
android-browser-helper
. Sprawdź, czy
aplikacja korzysta z wersji co najmniej takiej samej.
Musisz też dodać deklarację implementacji biblioteki rozszerzeń płatności:
dependencies {
...
implementation 'com.google.androidbrowserhelper:androidbrowserhelper:2.1.0'
implementation 'com.google.androidbrowserhelper:billing:1.0.0-alpha05'
}
DelegationService.java
Dodatek android-browser-helper ma domyślny zasób DelegationService
, który może być używany bezpośrednio przez aplikacje.
Jeśli używasz rozszerzenia płatności, potrzebujesz dostosowanej wersji
DelegationService
Aby to zrobić, musisz utworzyć własne zajęcia w usłudze DelegationService
, które rozszerzają
pierwotnym i zastępuje wartość onCreate()
. W aplikacji onCreate()
musisz dodać jeden
które powoduje zarejestrowanie aplikacji jako modułu obsługi interfejsu Digital Goods API:
package com.example.yourapp;
import com.google.androidbrowserhelper.playbilling.digitalgoods.DigitalGoodsRequestHandler;
import com.google.androidbrowserhelper.trusted.DelegationService;
public class DelegationService
extends com.google.androidbrowserhelper.trusted.DelegationService {
@Override
public void onCreate() {
super.onCreate();
registerExtraCommandHandler(new DigitalGoodsRequestHandler(getApplicationContext()));
}
}
AndroidManifest.xml
W pliku manifestu Androida musisz samodzielnie zmienić odniesienie do biblioteki przekazywania dostępu.
implementacji. W odpowiedniej deklaracji service
zastąp
com.google.androidbrowserhelper.trusted.DelegationService
z nowo utworzonymi zajęciami.
<service
android:name=".DelegationService"
android:exported="true">
<intent-filter>
<action android:name="android.support.customtabs.trusted.TRUSTED_WEB_ACTIVITY_SERVICE"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</service>
W bibliotece płatności znajdziesz też 2 nowe komponenty, które musisz dodać do Androida. Plik manifestu: usługa, z którą przeglądarka może się połączyć, aby sprawdzić, czy aplikacja obsługuje płatność oraz działanie, które samo zajmuje się procesem płatności:
<activity
android:name="com.google.androidbrowserhelper.playbilling.provider.PaymentActivity"
android:theme="@android:style/Theme.Translucent.NoTitleBar"
android:configChanges="keyboardHidden|keyboard|orientation|screenLayout|screenSize"
android:exported="true">
<intent-filter>
<action android:name="org.chromium.intent.action.PAY" />
</intent-filter>
<meta-data
android:name="org.chromium.default_payment_method_name"
android:value="https://play.google.com/billing" />
</activity>
<!-- This service checks who calls it at runtime. -->
<service
android:name="com.google.androidbrowserhelper.playbilling.provider.PaymentService"
android:exported="true" >
<intent-filter>
<action android:name="org.chromium.intent.action.IS_READY_TO_PAY" />
</intent-filter>
</service>
Dowiedz się więcej o interfejsie Digital Goods API i Płatnościach w Google Play
W tym artykule omówiliśmy czynności, które należy wykonać w aplikacji na Androida, która korzysta z Trusted Web związane z aktywnością, ale interfejs Google Play Billing API ma własną terminologię oraz zawiera klienta i backend Zdecydowanie zalecamy zapoznanie się z Płatnościami w Google Play oraz Dokumentacja Digital Goods API i jej koncepcje przed zintegrowaniem go z i aplikacjami w środowisku produkcyjnym.