In-App Purchase History API
Return the user's Google Play purchase history as window.purchaseHistory so your web app can list subscriptions or unlock premium content client-side.
应用内购买历史 API 返回用户之前通过 Google Play Billing 进行的购买记录列表(产品 ID、时间戳、令牌),并将其作为 window.purchaseHistory 注入到您的 Web 应用中。如果您打算在最终产品中使用此功能,请确保拥有 WebViewGold 的扩展许可证。
使用方法:
<a href="getpurchasehistory://" onclick="setTimeout(renderHistory, 300)">My purchases</a>
<script>
function renderHistory() {
const data = window.purchaseHistory;
if (!data) return;
data.purchases.forEach(function (p) {
console.log(p.productId, p.purchaseTime, p.orderId);
});
}
</script>
载荷结构:
{
"purchases": [
{
"productId": "com.example.premium",
"purchaseTime": 1721600000000,
"orderId": "GPA.xxxx-xxxx-xxxx",
"purchaseToken": "..."
}
]
}
确切的字段取决于商店记录 — 请将该值视为可迭代的 JSON 数组。
典型用例:
- 在您的 Web 应用内显示"我的订阅"或"我的购买"页面。
- 基于过往购买记录在客户端解锁高级内容,而无需请求您的后端。
- 调试和客户支持工作流程。
说明: 列表仅包含在此设备上当前登录的 Google Play 账户下进行的购买。
SDK 风格的实现说明
将此功能视为向 Web 层公开的原生能力:将生产网站或 PWA 作为唯一可信来源,然后使用文档中的 WebViewGold 配置标志、URL 命令和 JavaScript 桥接调用,仅在能够带来价值的地方启用原生 Android 行为。这种方式让代码库易于维护,因为同一个 Web 应用只需极少的条件逻辑即可同时服务于浏览器、WebViewGold for Android 以及其他 WebViewGold 平台。
为获得可靠的结果,建议优先使用 HTTPS 端点、稳定的路由名称、在界面中明确的成功/错误状态,以及封装原生调用的小型 JavaScript 辅助函数。例如,使用 jQuery Mobile、Lovable、Base44、Bolt、WordPress、Bubble、自定义 React/Vue/Angular 技术栈或静态 HTML 构建的 Web 应用,可以提供单个按钮或事件处理程序来触发原生 WebViewGold API,同时仍为浏览器提供优雅的回退方案。
- 推荐的集成模式:检测应用上下文,调用 WebViewGold API,然后在原生回调或路由变更后更新 Web 界面。
- 测试清单:在真机或打包构建上验证该功能,检查权限和商店审核文案,并确认仅使用浏览器的用户仍能获得有用的回退方案。
- SEO 优势:让功能页面、路由标题和结构化内容在您的网站上保持可被索引,同时由 WebViewGold 为 Android 用户提供原生应用外壳。