nic*_*las 7 in-app-purchase ios react-native
我已经制作了iOS应用内自动续订订阅,现在我试图让用户在React-Native应用中购买它.
我发现了react-native-in-app-utils,但似乎无法加载我的产品.我在iTunes连接中有3个"产品"(自动续订订阅),但尝试加载它们:
var products = [
'com.xxxx.app.monthly',
'com.xxxx.app.6months',
'com.xxxx.app.year',
];
InAppUtils.loadProducts(products, (error, products) => {
console.log('products:', products);
});
Run Code Online (Sandbox Code Playgroud)
只记录"产品:[]".
挖得更深一些,我添加了一些额外的记录到Objective-C代码做查询,它看起来像:
NSLog(@"loading products %@", productIdentifiers);
if([SKPaymentQueue canMakePayments]){
SKProductsRequest *productsRequest = [[SKProductsRequest alloc]
initWithProductIdentifiers:[NSSet setWithArray:productIdentifiers]];
productsRequest.delegate = self;
_callbacks[RCTKeyForInstance(productsRequest)] = callback;
[productsRequest start];
} else {
callback(@[@"not_available"]);
}
Run Code Online (Sandbox Code Playgroud)
然后在回调中:
NSLog(@"products response %@", response.products);
products = [NSMutableArray arrayWithArray:response.products];
NSMutableArray *productsArrayForJS = [NSMutableArray array];
for(SKProduct *item in response.products) {
NSDictionary *product = @{
...
Run Code Online (Sandbox Code Playgroud)
这将使用我的产品ID记录"加载产品",如预期的那样.但随后"产品响应()"......空洞的回应.
这些产品在iTunes中列为"准备提交".它们已添加到应用内购买下的应用信息中.是什么赋予了?为什么不出现产品?