关于准则3.1.1,要恢复以前购买的应用内购买产品,最好提供一个“恢复”按钮,apicloud中ios使用iap购买及恢复购买,ios内购审核不通过,恢复机制必须与购买选项分开
apicloud中ios使用iap购买及恢复购买,修改 _courseId 为 appconnect中设置的内购商品idios内购审核不通过Thank you for your reply.Regarding to Guideline 3.1.1, to restore previously purchased in-app purchase products, it would be appro
apicloud中ios使用iap购买及恢复购买,
- 修改
_courseId
为 appconnect中设置的内购商品id
ios内购审核不通过
Thank you for your reply.
Regarding to Guideline 3.1.1, to restore previously purchased in-app purchase products, it would be appropriate to provide a "Restore" button and initiate the restore process when the "Restore" button is tapped by the user. Note that automatically restoring purchases on launch will not resolve this issue.
** The Restore mechanism mush be separated from the purchase option.
翻译
谢谢你的回复。 关于准则3.1.1,要恢复以前购买的应用内购买产品,最好提供一个“恢复”按钮,并在用户点击“恢复”按钮时启动恢复过程。请注意,启动时自动恢复购买不会解决此问题。 **恢复机制必须与购买选项分开。 我们期待着审查您重新提交的应用程序。
处理方式
反馈中提示“恢复机制必须与购买选项分开”,在单独的位置添加一个恢复购买按钮。
购买代码及恢复购买代码
// ios购买
var _courseId = 'ios中设置的商品ID'
function openPhoneBuy() {
var iap = api.require('iap');
iap.getProducts({
productIds: [
_courseId
]
}, function(ret, err) {
if (ret.products != null && ret.products.length != 0) {
api.showProgress({
style: 'default',
animationType: 'fade',
title: '努力加载中...',
text: '先喝杯茶...',
modal: false
});
setTimeout("api.hideProgress();", 3000);
iap.purchase({
productId: _courseId
}, function(ret, err) {
// 0 已加入交易队列
// 1 交易完成
// 2 交易失败
// 3 恢复购买
// 4 交易等待被确认, iOS 8.0及以后有效
if (ret) {
var state = ret.state;
switch (state) {
case 0:
// console.log("case 0");
break;
case 1:
// console.log("case 1");
if (ret.originalTransactionId != '' && ret.originalTransactionId != null && ret.originalTransactionId != 'undefined') {
//恢复流程
api.setPrefs({
key: _courseId,
value: '1'
});
} else {
api.toast({
msg: "购买成功",
duration: 2000,
location: 'middle'
});
}
break;
case 2:
api.toast({
msg: "交易失败",
duration: 2000,
location: 'middle'
});
break
case 3:
// console.log("case 3");
ios_recovery_course()
break;
default:
break;
}
} else {
api.toast({
msg: err.msg,
duration: 2000,
location: 'bottom'
});
}
});
}
else {
//非ios应用内购买
}
});
}
// ios 恢复购买
function ios_recovery_course() {
api.confirm({
title: '温馨提示',
msg: '点击确定恢复之前所购买的课程',
buttons: ['确定', '取消']
}, function (ret, err) {
if (ret.buttonIndex == 1) {
var iap = api.require('iap');
iap.restoreTransactions(function (ret, err) {
if (ret) {
var restore_courses = JSON.stringify(ret);
//恢复之前购买的所有课程
if (JSON.stringify(ret) != '{}') {
if (JSON.stringify(ret.transaction) != '{}') {
api.setPrefs({
key: ret.transaction.productId,
value: '1'
});
}
if (ret.finished) {
api.toast({
msg: '恭喜您,已成功恢复之前购买课程',
duration: 3000,
location: 'middle'
});
}
}
//如果该课程已经购买过,则恢复该课程
if (restore_courses.indexOf(_courseId) != -1) {
api.setPrefs({
key: _courseId,
value: '1'
});
api.toast({
msg: '恭喜您,恢复购买成功',
duration: 3000,
location: 'middle'
});
}
} else {
// alert(JSON.stringify(err));
// console.log(JSON.stringify(err));
}
});
} else {
// alert( JSON.stringify( err ) );
}
});
}
更多推荐
所有评论(0)