ozcankrks.devbankai
EN
Tüm yazılar

React Native Google Play Uygulama içi Satın Alma

Google Play üzerinden satış ve abonelik için react-native-iap kütüphanesini uygulamaya entegre ediyoruz.

Android Uygulamalarımız üzerinden Google Play üzerinden satış ve abonelik işlemleri yapmamız için react-native-iap kütüphanesini uygulamamıza entegre edelim entegre etmek için aşağıdaki kodu kullanabilirsiniz.

JavaScript
import * as RNIap from 'react-native-iap';

en çok karşılaşılan hata olan "PROMISE_BUY_ITEM The sku was not found. Please fetch products first by calling getItems" hatasından kurtulmak için aşağıdaki kodu kendi uygulamanıza geçirerek sorunsuz kullanabilirsiniz ama kodu vermeden önce bu hatanın neden kaynaklandığına bakalım kütüphanenin eski dosyaları ile güncellenmiş dosyaları arasında bir uyuşmazlık olduğundan maalesef bu hata ile karşılaşıyoruz eski versiyon ile çalışırsanız hiçbir sorun olmadan kullanabilirsiniz tabi kütüphane sahiplerinin desteği kesmesi durumunda tekrar güncel sürüm gerekli bu yüzden en son sürümdeki sorunu çözüp kullanmakta fayda var. Uzatmadan entregrasyona geçelim.

Kütüphaneyi Import et

JavaScript
import * as RNIap from 'react-native-iap';

Sayfamızdaki componentDidMount methoduna aşağdıaki kodu ekleyelim

JavaScript
async componentDidMount() {     try {          const products: Product[] = await RNIap.getProducts(itemSkus);          const getsub: Subscription[] = await RNIap.getSubscriptions(itemSkus);          this.setState({ getsub });      } catch(err) {          console.warn(err); // standardized err.code and err.message available      }        }

duruma göre async ve await kodlarını silebilirsiniz

State'imizi aşağıdaki kod gibi düzenliyoruz didmount methodunda yapılacaklar bu state elemanlar içinde depolanacak.

JavaScript
state= {        products:[],        getsub:[],        count:0,        listprice:0,        selectedItem:'none'    }

Şimdi kendimiz satın alma işlemlerini yapabileceğimiz bir method oluşturmak ben bu methoda requestPurchase ismini verdim sizde bir method oluşturarask aşağıdaki kodu methodunuzun içine kopyalayabilirsiniz.

JavaScript
 requestPurchase = async (sku: string) => {      try {          await RNIap.requestPurchase(sku, false)          .then((purchase)=>{            console.log(purchase.purchaseToken)            RNIap.finishTransaction(purchase, true);            this.setState({ count:this.state.count+1 });              })                    });      } catch (err) {          console.warn(err.code, err.message);      }  }

simdi herşey tamam tek yapmamız gereken bir buton veya başka bir tetikleyici ile yazdığımız kodu aktifleştirmede android için kullanılan ve google play'in test olarak kullanması için oluşturduğu android.test.purchased kodu ile uygulamamızı test edelim

JavaScript
this.requestPurchase("android.test.purchased")

bu şekilde tüm adımları yaptığınızda kütüphaneyi sorunsuz olarak kullanabilirsiniz umarım yadrımcı olabilmişimdir iyi çalışmalar dilerim

Yorumlar 0

Henüz yorum yok. İlk yorumu sen yaz.

Yorum yaz

Yayınlanmaz.

© 2026 Özcan Karakuş · Bu site Next.js ile yazıldı ve kendi sunucumda çalışıyor.