Android Google In-App Billing( Uygulama İci Satın Alma)

Emre Metin
GDGIstanbul
Published in
3 min readFeb 10, 2020

Merhaba arkadaşlar, bugün mobil uygulamalarımızdan, kazanç elde etmek için son derece önemli olan uygulama içi satın alma (in-app billing) konusunu ele alacağız.

ÖNEMLİ: Öncelikle başlamadan önce uygulama içi satın alımı yapmak ve test edebilmek için uygulamanızı Google Play Console hesabınızda Alpha ya da Beta olarak release etmiş olmanız gerekiyor. Aksi taktirde satın alma işlemi gerçekleştirirken “ İstekte bulunduğunuz öğe satın alınamıyor” hatası alıcaksınız.

Google Play’e uygulamamızı beta yada alpha olarak publish ettikten sonra artık başlayabiliriz.

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="com.android.vending.BILLING" />

Uygulamamızı publish etmeden önce Manifest’e internet ve faturalandırma için izin vermemiz gerekiyor.

Bunları tamamladıysak şimdi Product(Ürünleri) girmeye başlayabiliriz.

Google Play Console’de Google Play Store’daki Varlığı altında Uygulama İçi Ürünler’e giriyoruz.

Buradan Tek seferlik satın alma işlemi için Yönetilen Ürünler’i , Subscription(haftalık,aylık,yıllık satın alma) için Abonelikleri’i seçiyoruz.

Açılan sayfada ID ,BAŞLIK ve ÜCRET kısımlarını istediğimiz şekilde doldurup Google Play uygulama içinde hangi ürünün satıldığını bilinmesi için, unique bir id vermemiz gerekiyor.

Ürün Kimliği(Product ID): Uygulama içinde hangi ürünün satın alınmaya çalışıldığını anlamak için verdiğimiz unique id

Başlık(Title): Ürüne verdiğimiz ürün adı

Açıklama(Description): Ürün Açıklaması

(Price): Ne kadar ücret isteyeceğimiz

Fatura Dönemi(Billing Period): Alınan ürünün hangi sıklıkta bir satın alınma işleminin otomatik tekrarlanacağı bilgisi (Haftalık, Aylık, 3 Aylık, 6 Aylık, Yıllık)

Ücretsiz Deneme Süresi(Free Trial Period): Ücretsiz deneme süresi vereceksek onun süresi

1 Haftalık ve 1 Aylık Subscription(Abonelik) Örneği;

Google Play Console’deki ayarları tamamladığımıza göre gelin şimdi de ayarları uygulamamızın içine entegre edelim.

In-App Billing Android Uygulamaya Entegre Etmek

Şimdi yukarıdaki vermiş olduğumuz id leri uygulamamızın içinde kullanabiliriz. Adım adım ilerleyelim.

Öncelikle yukarıdada bahsettiğim gibi Manifest dosyamızda vermemiz gereken izinler

Manifest Ayarı

<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="com.android.vending.BILLING"/>

Gradle Ayarı

dependencies{
implementation 'com.android.billingclient:billing:1.0'
// new version billing_version = "3.0.0"
}

PurchasesUpdatedListener

Daha sonra Uygulama İçi Satın Alımları yapacağımız Activity’e PurchasesUpdatedListener interfacesini implement etmemiz ve onPurchasesUpdated methodunu override etmemiz gerekiyor.

BillingClientStateListener

Oluşturduğumuz onPurchasesUpdated methodunu çağırması için BillingClient sınıfından bir obje yaratıyoruz, startConnection() methoduna BillingClientStateListener’ı ekleyerek Satın Alma İşleminin hazır olup olmadığının kontrolünü yapıyoruz.

Activity Kodumuzun Geri Kalan Kısmı

NOT: Yazdığınız kodları test edebilmek için kendinizi Google Play Console’de Ayarlar altında Lisans Testi bölümüne kendi hesabınızı girmeniz gerekiyor.

Evet arkadaşlar, sizlere bu yazımda In App Billing (Uygulama İçi Satın Alma) konusunu anlatmaya çalıştım, umarım faydalı olmuştur. Hepinize bol kazançlar :)

--

--