@baukit/purchases-core
Baukit 移动应用程序的商店中性购买流程。 它定义 PurchasesPort 用于构建没有存储密钥的不开放端口,以及 PurchaseFlow 产品后端所核查的属性。 它从来不读商店的权利。 Schlüsselbund拥有应享待遇,所以在刷新票上写明之前,商店收据不会给任何东西.
该套件没有"博览会"(Expo, React Industrial)或"ForwardCat"的进口. @baukit/purchases-revenuecat 是“ForwardCat”适配器.
import {
PurchaseFlow,
createNoopPurchasesPort,
createAccountPlanBackend,
} from '@baukit/purchases-core';
const flow = new PurchaseFlow({
port: createNoopPurchasesPort(),
backend: createAccountPlanBackend({ baseUrl: `${apiOrigin}/api/v1`, fetch, headers: authHeaders }),
});
await flow.identify(suiteSubject);
const { current } = await flow.offerings();
const outcome = await flow.purchase(current!.packages[0]!);
identify(suiteSubject)必须在前完成purchase, (中文(简体) ),restore或者说purchaseCreditPack没有它,他们就拒绝not_identified。 。 。 .signOut()清州并召入港口reset。 。 。 .purchase返回时granted一旦后端通过更新修订为应享权利服务,或pending之后refreshAttempts改为(默认5,相隔2秒).restore返回时granted或者说unchanged。 。 。 .purchaseCreditPack仅接受one_time软件包和返回credited贷方余额订正垫款,或pending。 。 。 .- 一次只买一次 第二个人拒绝
busy。 。 。 . - 失败的是
PurchaseError与codecancelled, (中文(简体) ),pending, (中文(简体) ),network, (中文(简体) ),store, (中文(简体) ),unavailable, (中文(简体) ),not_identified, (中文(简体) ),identity_changed, (中文(简体) ),subject_mismatch, (中文(简体) ),invalid_subject, (中文(简体) ),not_credit_pack或者说busy。 。 。 .
createAccountPlanBackend 读取 GET /me/entitlement 财务报告和审定财务报表 GET /me/credits 路线 baukit-suite是因为 account_plan_router 服务。 它治疗 suite_identity_missing 没有权利 和提高 AccountPlanError 与 code 财务报告和审定财务报表 retryAfterSeconds 否则。 一个验证票本身的客户 entitlementFromTicket(claims, plansUrl)。 。 。 .
@baukit/purchases-core/react 已经 PurchasesProvider (与 flow 财务报告和审定财务报表 productId, (中文(简体) ), usePurchaseFlow, (中文(简体) ), usePurchaseState, (中文(简体) ), useEntitlement, (中文(简体) ), useFeature(key) 财务报告和审定财务报表 LockedFeature。 。 。 . useFeature 返回时 loading, (中文(简体) ), unavailable, (中文(简体) ), granted,或 locked 带个活墙 装入和不能装入既未显示特性, 也未显示购买, 且刷新失败后, 保留了最后核实的应享权利 . paywallFor 把票翻开 billing 索赔转入 purchase, (中文(简体) ), manage (网络和存储计划,从来没有第二次购买), covered (家庭和组织)或 none (独立). plansLink 构建 Schlüsselbund C17 链接 /plans?from=<product id>&feature=<feature key> 减少 feature 无 from。 。 。 .
读取 Baukit 的 docs/platform/mobile-purchases.md 为全线.