Javascript iOS react native in-app utils InApp utils.purchaseProduct在不同订阅之间切换时返回错误
我在同一订阅级别下有四个不同的订阅: 见习生.月薪 见习生 专业月刊 专业年度 每当我独立订阅每一本时,购买效果都很好。问题是当我尝试管理订阅时。使用我上面描述的当前iTunes connect配置,我可以从trainee.monthly切换到pro.monthly并返回,也可以从trainee.annual切换到pro.annual并返回,但其他都不起作用。我尝试通过多种方式将订阅移动到iTunes connect中的不同级别,但从未达到想要的行为(想要的行为是能够在任何订阅之间切换) 我得到的错误如下所示: {“代码”:“EskerroDomain0”,“消息”:“无法连接到iTunes商店”,“NativeTaskIOS”:[“0路由测试0x0000000100176d5c RCTJSErrorFromCodeMessageAndNSError+152”,“1路由测试0x0000000100176c84 RCTJSErrorFromNSError+264”,“2路由测试0x00000001002b8f5c-[在应用程序付款队列:更新的交易:][604],“3个存储套件0x0000000197e206e4+104”、“4个CoreFoundation 0x000000018ac2a710 CFArrayApplyFunction+68”、“5个存储套件0x0000000197e20660+148”、“6个存储套件0x0000000197e21158+1220”、“7个存储套件0x0000000197e21c78+144”、“8个存储套件0x0000000197e20510+152”、“9个libdispatch.dylib 0x00000001008c9a50”发送呼叫和释放+24“10 libdispatch.dylib 0x00000001008c9a10\u dispatch\u client\u callout+16”、“11 libdispatch.dylib 0x00000001008ceb78\u dispatch\u main\u queue\u callback\u 4CF+1204”、“12 CoreFoundation 0x000000018acfd0c8+12”、“13 CoreFoundation 0x000000018acface4+1572”、“14 CoreFoundation 0x000000018ac2ada4 CFRunLoopRunSpecific+424”15图形服务0x000000018c695074 GSEventRunModal+100”、“16 UIKit 0x0000000190ee5c9c UIApplicationMain+208”、“17 RouteTest 0x000000010001b9ec main+124”、“18 libdyld.dylib 0x0000000189c3959c+4”]、“域”:“SKErrorDomain”、“用户信息”: {“NSLocalizedDescription”:“无法连接到iTunes存储”} 以下是我的代码片段:Javascript iOS react native in-app utils InApp utils.purchaseProduct在不同订阅之间切换时返回错误,javascript,ios,react-native,in-app-purchase,subscriptions,Javascript,Ios,React Native,In App Purchase,Subscriptions,我在同一订阅级别下有四个不同的订阅: 见习生.月薪 见习生 专业月刊 专业年度 每当我独立订阅每一本时,购买效果都很好。问题是当我尝试管理订阅时。使用我上面描述的当前iTunes connect配置,我可以从trainee.monthly切换到pro.monthly并返回,也可以从trainee.annual切换到pro.annual并返回,但其他都不起作用。我尝试通过多种方式将订阅移动到iTunes connect中的不同级别,但从未达到想要的行为(想要的行为是能够在任何订阅之间切换) 我得到
const makePurchase = (product) =>{
Logger.logInfo("called makepurchase: " + product)
const { InAppUtils } = NativeModules
var products = []
products.push(product)
if (Platform.OS === 'ios') {
return new Promise(function (resolve, reject) {
InAppUtils.loadProducts(products, (error, products) => {
Logger.logInfo("products are:")
Logger.logInfo(products)
InAppUtils.purchaseProduct(product, (error, response) => {
if (error) {
Logger.logInfo('error in purchase')
Logger.logInfo(error)
Logger.logInfo(response)
return reject(error)
}
if(response && response.productIdentifier) {
Logger.logInfo('Purchase Successful', 'Your Transaction receipt is ' + response.transactionReceipt)
InAppUtils.receiptData((error, receiptData)=> {
if(error) {
Logger.logInfo(error)
return reject(error)
} else {
//send to validation server
Logger.logInfo("receipt data" + receiptData)
var ret = {
"receiptData":receiptData,
...products[0]
}
Logger.logInfo("return is...")
Logger.logInfo(ret)
return resolve(ret)
}
});
}
Logger.logInfo(response)
})
})
})
}}
有没有人看到我在做什么错事,或者知道如何处理我所描述的问题?你解决了吗?谢谢,我认为这是苹果公司的问题