I’m trying to integrate in-app purchases into my React Native app. Everything is configured correctly on RevenueCat and the app stores, and I’m able to fetch and display my offerings using `Purchases.getOfferings()`. However, when I try to execute `Purchases.purchasePackage()`, I encounter the following error:
“Parameter specified as non-null is null: method com.revenuecat.purchases.hybridcommon.CommonKt.purchasePackage, parameter packageIdentifier”
A similar error occurs when I try to execute `Purchases.purchaseStoreProduct()`. The error suggests that I’m passing `null` as a parameter, but I’m definitely passing the correct identifier as a string.
Thanks in advance to anyone who can help me resolve this :)
Encountering error "Parameter specified as non-null is null" when attempting purchase
+3
This was happening to us, because we used to pass the Product.identifier to the Purchases.purchaseProduct(identifier), where as the new library requires the entire Product object to be passed as an argument.
await Purchases.purchaseStoreProduct(product);
--
return <Button
key={pkg.product.identifier}
style={styles.button}
disabled={processing}
onPress={() => makeInAppPurchase(pkg.product)}
>
Hi
I was checking RN docs and there are a few purchases alternatives:
- https://revenuecat.github.io/react-native-purchases-docs/6.0.1/classes/default.html#purchasePackage → This one expects the package you get from get offerings
- https://revenuecat.github.io/react-native-purchases-docs/6.0.1/classes/default.html#purchaseProduct → This one expects the product ID
- https://revenuecat.github.io/react-native-purchases-docs/6.0.1/classes/default.html#purchaseStoreProduct → The one you found and are using
- https://revenuecat.github.io/react-native-purchases-docs/6.0.1/classes/default.html#purchaseSubscriptionOption → Gives you more control as you can decide which option to buy (default base plan or a specific offer)
Your update looks good to me :D and let me know if this helps
Reply
Enter your E-mail address. We'll send you an e-mail with instructions to reset your password.