신뢰할 수 있는 웹 활동에서 Play 결제 사용

앱이 Play 스토어에서 디지털 상품과 구독을 판매할 수 있도록 허용하는 것 외에도 Google Play 결제는 카탈로그, 가격, 정기 결제를 관리하는 데 유용한 도구를 제공합니다. 보고서, 그리고 이미 사용자에게 익숙한 Play 스토어에서 제공하는 결제 절차도 포함됩니다. 그것은 은 Play 스토어에 게시되어 디지털 상품을 판매하는 애플리케이션의 요구사항이기도 합니다.

Chrome 88은 Android에서 오리진 트라이얼과 함께 출시됩니다. Payment Request APIDigital Goods API를 사용한 신뢰할 수 있는 웹 활동 Google Play 결제를 통해 구매 흐름을 구현합니다. 이 오리진 트라이얼도 - ChromeOS 버전 89용

Android 앱에 대한 원활한 통합을 위해 신뢰할 수 있는 웹 활동 팀은 android-browser-helper에 대한 확장 프로그램 라이브러리 이 가이드에서는 이 라이브러리를 기존 애플리케이션에 통합할 수 있습니다.

참고: 이 도움말에서는 Android 앱 통합을 설명합니다. Bubblewrap을 사용하여 애플리케이션을 빌드하면 이 도구를 사용하여 앱을 업데이트할 수 있습니다. 이 Bubblewrap 구현은 이 문제에서 추적되고 있습니다. 이 가이드는 Bubblewrap을 사용하여 앱을 업데이트하지 않는 사용자를 대상으로 합니다.

build.gradle

결제 확장 프로그램 라이브러리 자체는 android-browser-helper의 버전 2.1.0에 종속됩니다. 애플리케이션이 그 이상 버전을 사용하고 있는지 확인합니다.

결제 확장 프로그램 라이브러리의 구현 선언도 추가해야 합니다.

dependencies {
    ...
    implementation 'com.google.androidbrowserhelper:androidbrowserhelper:2.1.0'
    implementation 'com.google.androidbrowserhelper:billing:1.0.0-alpha05'
}

DelegationService.java

android-browser-helper는 앱에서 직접 사용할 수 있는 기본 DelegationService와 함께 제공됩니다. 결제 확장을 사용하는 경우 DelegationService

이렇게 하려면 다음을 확장하는 자체 DelegationService 클래스를 만들어야 합니다. 원본 객체이며 onCreate()를 재정의합니다. onCreate() 내에서 메서드를 호출하여 디지털 상품 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

Android 매니페스트에서 위임 라이브러리 참조를 직접 변경해야 합니다. 있습니다. 상응하는 service 선언에서 com.google.androidbrowserhelper.trusted.DelegationService를 새로 만든 클래스로 바꿉니다.

<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>

결제 라이브러리에는 Android에 추가해야 할 두 가지 새로운 구성요소도 도입됩니다. 매니페스트: 브라우저에서 연결할 수 있는 서비스로, 애플리케이션이 다음을 지원하는지 확인할 수 있습니다. 결제, 그리고 결제 흐름 자체를 처리하는 Activity가 포함됩니다.

<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>

Digital Goods API 및 Google Play 결제 자세히 알아보기

이 도움말에서는 신뢰할 수 있는 웹을 사용하는 Android 애플리케이션에서 특히 필요한 단계를 다룹니다. 활동을 지원하지만, Google Play Billing API에는 자체 용어가 있으며 클라이언트와 백엔드가 포함되어 있습니다. 구성할 수 있습니다. Google Play 결제Digital Goods API 문서를 읽고 관련 개념을 이해한 후에 살펴보겠습니다