IAP.createSubscriptionPurchaseOrder
功能说明
会跳转到订阅内购订单页面。与单次支付一样 options / onEvent / onError 是事件风格。
options.sku: 是订阅商品 ID。options.offerId: 是要应用的 offer ID。如果没有,则适用默认价格。options.processProductGrant: 在创建订单后发放商品时调用。{ orderId, subscriptionId? }接收。
返回值 cleanup 函数在功能结束后必须调用。
Toss应用 Android 5.248.0, iOS 5.249.0 可在以上版本使用。若在不支持的版本中调用则 UNSUPPORTED_APP_VERSION 会发生错误。
类型
IAP.createSubscriptionPurchaseOrder(params: CreateSubscriptionPurchaseOrderOptions): () => void;Params
interface CreateSubscriptionPurchaseOrderOptions {
options: {
sku: string;
offerId?: string | null;
processProductGrant: (params: {
orderId: string;
subscriptionId?: string;
}) => boolean | Promise<boolean>;
};
onEvent: (event: {
type: "success";
data: IapCreateSubscriptionPurchaseOrderResult;
}) => void | Promise<void>;
onError: (error: unknown) => void | Promise<void>;
}
type IapCreateSubscriptionPurchaseOrderResult =
IapCreateOneTimePurchaseOrderResult;Response
在支付流程结束后调用以释放资源的 cleanup 函数(() => void)作为返回值。
错误
错误代码 onError可通过……接收,或由包裹调用的 try/catch中捕获到的错误的 error.code 值。
代码
说明
UNSUPPORTED_APP_VERSION
如果当前运行的 Toss App 版本不支持此功能,调用后会立即发生。 IAP.createSubscriptionPurchaseOrder.isSupported()可通过它提前确认,发生时 error.message请向用户显示(更新提示文案)。
示例代码
这有帮助吗?