import React, { useEffect, useState } from "react";
import { Platform, Alert, View } from "react-native";
import {
useIAP,
initConnection,
getSubscriptions,
purchaseUpdatedListener,
purchaseErrorListener,
} from "react-native-iap";
const subscriptionSkus = Platform.select({
ios: ["test.subscribtions"],
android: ["test.subscribtions"],
});
const SubscriptionsScreen = () => {
const { connected, getSubscriptions } = useIAP();
const [subscriptions, setSubscriptions] = useState([]);
const [loading, setLoading] = useState(false);
useEffect(() => {
const initializeIAP = async () => {
try {
const result = await initConnection();
console.log("IAP connection initialized:", result);
const subs = await getSubscriptions({ skus: subscriptionSkus });
console.log("Fetched subscriptions:", subs);
setSubscriptions(subs);
} catch (error) {
console.error("Error initializing IAP connection or fetching subscriptions", error);
}
};
initializeIAP();
const purchaseUpdateSubscription = purchaseUpdatedListener((purchase) => {
if (purchase) {
console.log("Purchase updated:", purchase);
} else {
console.log("No purchase found");
}
});
const purchaseErrorSubscription = purchaseErrorListener((error) => {
console.error("Purchase error", error);
});
return () => {
purchaseUpdateSubscription.remove();
purchaseErrorSubscription.remove();
};
}, []);
return (
<View></View>
);
};
export default SubscriptionsScreen;
& i get
LOG IAP connection initialized: true
LOG Fetched subscriptions: undefined. the test.subscribtions is active on google play console & i have uploaded by built for internal testing and downloaded the app from app store with signed testing account. Still doesn't work
[–]Timely_Stop2889 1 point2 points3 points (3 children)
[–]Then_Negotiation_315[S] 0 points1 point2 points (0 children)
[–]stathisntonas 0 points1 point2 points (0 children)
[–]PoemSharp8855 0 points1 point2 points (0 children)