Skip to content

Commit

Permalink
Handling iOS callbacks
Browse files Browse the repository at this point in the history
  • Loading branch information
al-af committed Nov 10, 2024
1 parent 4bc7494 commit 7675278
Show file tree
Hide file tree
Showing 3 changed files with 29 additions and 10 deletions.
16 changes: 12 additions & 4 deletions Docs/RN_PurchaseConnector.md
Original file line number Diff line number Diff line change
Expand Up @@ -258,8 +258,12 @@ import appsFlyer , {AppsFlyerPurchaseConnector} from 'react-native-appsflyer';
```javascript
import appsFlyer , {AppsFlyerPurchaseConnector} from 'react-native-appsflyer';

const handleOnReceivePurchaseRevenueValidationInfo = (validationResult) => {
console.log('>> handleOnReceivePurchaseRevenueValidationInfo: ', validationResult);
const handleOnReceivePurchaseRevenueValidationInfo = (validationInfo, error) => {
if (error) {
console.error("Error during purchase validation:", error);
} else {
console.log("Validation Info:", validationInfo);
}
}

useEffect(() => {
Expand Down Expand Up @@ -331,8 +335,12 @@ const handleValidationSuccess = (validationResult) => {
console.log('>> handleSubscriptionValidationFailure: ', subscriptionValidationResult);
}

const handleOnReceivePurchaseRevenueValidationInfo = (validationResult) => {
console.log('>> handleOnReceivePurchaseRevenueValidationInfo: ', validationResult);
const handleOnReceivePurchaseRevenueValidationInfo = (validationInfo, error) => {
if (error) {
console.error("Error during purchase validation:", error);
} else {
console.log("Validation Info:", validationInfo);
}
}


Expand Down
10 changes: 7 additions & 3 deletions demos/appsflyer-react-native-app/components/HomeScreen.js
Original file line number Diff line number Diff line change
Expand Up @@ -192,8 +192,12 @@ const HomeScreen = ({navigation}) => {
console.log('>> handleSubscriptionValidationFailure: ', subscriptionValidationResult);
}
const handleOnReceivePurchaseRevenueValidationInfo = (validationResult) => {
console.log('>> handleOnReceivePurchaseRevenueValidationInfo: ', validationResult);
const handleOnReceivePurchaseRevenueValidationInfo = (validationInfo, error) => {
if (error) {
console.error("Error during purchase validation:", error);
} else {
console.log("Validation Info:", validationInfo);
}
}
Expand All @@ -211,7 +215,7 @@ const HomeScreen = ({navigation}) => {
subscriptionValidationFailureListener = AppsFlyerPurchaseConnector.onSubscriptionValidationResultFailure(handleSubscriptionValidationFailure);
} else {
console.log('>> Creating purchaseRevenueValidationListener ');
purchaseRevenueValidationListener = AppsFlyerPurchaseConnector.onReceivePurchaseRevenueValidationInfo(handleOnReceivePurchaseRevenueValidationInfo);
purchaseRevenueValidationListener = AppsFlyerPurchaseConnector.OnReceivePurchaseRevenueValidationInfo(handleOnReceivePurchaseRevenueValidationInfo);
}
// Cleanup function
Expand Down
13 changes: 10 additions & 3 deletions index.js
Original file line number Diff line number Diff line change
Expand Up @@ -166,10 +166,17 @@ AppsFlyerPurchaseConnector.OnReceivePurchaseRevenueValidationInfo = (
AppsFlyerConstants.DID_RECEIVE_PURCHASE_REVENUE_VALIDATION_INFO,
(info) => {
try {
const validationInfo = JSON.stringify(info);
callback(validationInfo, null);
if (info.error) {
callback(null, info.error);
}else{
const validationInfo = JSON.stringify(info);
callback(validationInfo, null);
}
} catch (error) {
callback(null, error);
console.error(
"Failed to handle iOS validation result:",
error
);
}
}
);
Expand Down

0 comments on commit 7675278

Please sign in to comment.