跳至内容
WebViewGold 从 Vibe Coding 到 App Store
中文
获取 WebViewGold

App Store 审核被拒

准则 4.7(迷你应用和迷你游戏):在 WebViewGold 应用中上架 HTML5 游戏和迷你应用

准则 4.7 允许应用提供未内置在二进制文件中的 HTML5 和 JavaScript 迷你游戏与迷你应用,但您要为其中每一个负责。您自己制作的单个游戏,基本上遵循常规规则即可。而游戏厅、内容目录或供人发布迷你应用的平台,则需要带通用链接的索引、年龄限制、内容审核,以及针对数字商品的应用内购买。

每个平台一次性 $109 起,或由我们的团队全程代劳,$698 起。

  • 审核通过保证 – 否则 14 天内退款
  • 无需编程
  • 一次性付费,免费更新
  • 7×24 小时人工支持
  • 2014 年起德国出品 · ISO 27001

4.7 的规定

准则 4.7 涵盖应用提供、但未嵌入二进制文件的软件:HTML5 和 JavaScript 迷你应用和迷你游戏、串流游戏、聊天机器人和插件,以及会下载游戏的复古游戏机和 PC 模拟器。所有这些都由您负责:每一项都必须遵守 App Review Guidelines(《App 审核指南》)和适用法律,只要有一项不合规,整个应用就可能被拒。另有五条子规则规定了具体的义务。

用通俗的话解读 4.7.1 到 4.7.5

  • 4.7.1

    隐私、内容审核与付款

    每个迷你应用或游戏都要遵守 5.1 的隐私规则,提供过滤、能及时响应的举报以及屏蔽恶意用户的功能,并按照 3.1 销售数字商品,通常也就是使用应用内购买。

  • 4.7.2

    未经许可不得开放原生 API

    除非事先获得 Apple 许可,否则您的应用不得向所提供的软件扩展或开放原生平台 API 或技术。

  • 4.7.3

    每次共享数据都要征得同意

    未经用户每一次的明确同意,您的应用不得把用户数据或隐私权限传递给单个迷你应用。

  • 4.7.4

    带通用链接的索引

    您需要提供软件及其元数据的索引,并配有通用链接,指向应用内提供的每一个项目。

  • 4.7.5

    年龄分级与年龄限制

    用户能识别出超出应用年龄分级的项目,并且基于已验证或自行申报年龄的年龄限制,能让未达年龄的用户无法访问这些项目。

拒审消息通常怎么说

4.7 拒审通常会点名审核人员无法确认的那条子规则:没有游戏或迷你应用的索引、没有指向单个项目的通用链接、对超出应用分级的项目没有年龄限制、迷你游戏通过网页结账出售金币或生命值,或者第三方软件能通过您的应用访问相机或位置。如果目录本身看起来内容单薄或是照搬而来,备注可能会改为引用准则 4.2或准则 4.3。

我很高兴购买了这个应用!非常简单,文档也很棒。联系客服后,他们回复很快且非常友好,一天之内就解决了我的问题。10/10,值得推荐。

Nelis Geiger · CodeCanyon

4.7 适用于您的应用吗?

您的应用最重要的规则
您自己制作的单个 HTML5 游戏,打包在应用中或从您的服务器加载常规规则:完整且稳定(2.1)、内容足够充实(4.2)、金币和关卡使用应用内购买(3.1.1)。4.7 的各项义务主要针对内容目录。
您自己的游戏或迷你应用合集,在服务器端不断扩充完整适用 4.7:带通用链接的索引、每个项目的年龄分级、数字商品使用应用内购买。
从游戏门户或合作方嵌入的第三方游戏4.7 加上授权许可:您要为它们的内容、广告和购买负责。没有授权许可的话,预计会遇到准则 5.2方面的麻烦。
用户或 AI 发布迷你应用或游戏的平台4.7 加上 1.2 的内容审核,以及对运行生成代码的限制:参见准则 2.5.2 与 AI 生成功能。
应用内的 AI 聊天机器人在 4.7 中被提及;实际上适用 1.2 的过滤与举报要求以及 AI 聊天相关规则。

Web 封装的游戏应用为什么会遇到 4.7 问题

游戏的生成成本很低

Bolt、Lovable 或 Claude 一个下午就能做出一个可玩的 HTML5 游戏,所以“一个包含 30 款迷你游戏的游戏厅”是很受欢迎的第一个应用。审核人员已经见过很多了。

审核后内容还会变化

新游戏会出现在服务器上,无需更新应用。4.7 恰恰允许这样做,这也是它坚持要求索引、年龄数据,并由您为每个项目负责的原因。

游戏内的网页变现

通过网页结账或游戏门户自有支付系统出售金币和皮肤,会同时违反 4.7.1 和 3.1.1。

一座 JavaScript 桥包揽一切

WebViewGold 的 URL scheme 由 WebView 中的页面跳转触发,不管是谁的代码在那里运行。加载到您页面中的第三方游戏可能会调用触感反馈、扫描器或通讯录,而 4.7.2 不允许在未经许可的情况下这样做。

让游戏或迷你应用目录通过审核

  1. 制作索引页面

    在 Web 应用中用一个页面列出每个游戏或迷你应用,包括名称、简短描述、开发者、年龄分级和类别。确保能从主导航访问到它,并在审核备注中提及。

  2. 为每个项目提供独立的 URL 和通用链接

    每个游戏都有一个稳定的路径,例如 /games/space-runner。在 Apple Developer 账号和 Xcode 中启用 Associated Domains(applinks:yourdomain.com),托管 apple-app-site-association 文件,并按照Universal Links 文档在 Config.swift 中把 ShowExternalLink 设为 true。索引中的每一项都应能在应用中直接打开对应的项目;深度链接指南可以帮助您测试。

  3. 为每个项目分级并按年龄限制

    为每个项目设定年龄分级,并标出高于应用自身分级的项目。在引导流程中询问用户的出生年份(自行申报年龄),或者使用账号系统中已验证的年龄,然后隐藏或锁定超出年龄的项目。Apple 的原生年龄相关 API 不属于 WebViewGold 有文档的桥接功能,所以这一步请在 Web 应用中处理。

  4. 用应用内购买销售数字商品

    金币、生命值、皮肤、去广告和关卡包都通过 RevenueCat 购买(revenuecat://purchase?external_id=USER_ID&product=coins_500),余额保存在您的后端。从每个游戏中删除门户或网页支付代码。

  5. 原生功能只留给您自己的代码

    只允许您自己的第一方页面调用 WebViewGold 的 URL scheme。在独立源上的沙盒 iframe 中运行第三方或用户制作的游戏,并且不要在未经每次询问的情况下把用户数据、位置或权限交给它们(4.7.3)。

  6. 审核用户发布的内容

    如果用户或 AI 可以发布游戏,请添加举报、屏蔽、过滤功能和联系地址,具体见1.2 内容审核指南。

为每个游戏配置通用链接

通过 HTTPS 在 https://yourdomain.com/.well-known/apple-app-site-association 提供此文件,不带文件扩展名,以 JSON 格式返回。把 team ID 和 bundle ID 换成您自己的。

json
{
  "applinks": {
    "details": [
      {
        "appIDs": ["ABCDE12345.com.yourcompany.arcade"],
        "components": [
          { "/": "/games", "comment": "所有游戏的索引" },
          { "/": "/games/*", "comment": "每一个单独的游戏" }
        ]
      }
    ]
  }
}

让每个游戏在应用中都有原生般的体验

几个 Config.swift 设置就能让 HTML5 游戏感觉更像原生应用:横屏游戏把 orientationiphone 和 orientationipad 设为 "landscape" 或 "auto";preventsleep 让屏幕在游戏时保持常亮;preventZoom 和 preventoverscroll 防止意外缩放和回弹;disablecallout 防止长按时弹出链接预览;把 enableswipenavigation 设为 false,避免游戏中的滑动操作触发返回。您自己的游戏代码可以使用触感反馈 API(lighthaptic://、successhaptic:// 等),AdMob 插页广告也可以通过 admobadstriggerurls 在关卡结束后出现。

通过 uselocalhtmlfolder 打包的游戏是二进制文件的一部分,会随应用一起接受审核,并且可以离线运行。之后从服务器添加的游戏,才是 4.7 所说的“未嵌入二进制文件”的软件。

Resolution Center 回复模板

按照 Apple 列出的顺序,每条 4.7 子规则用一行来回答。模板保留英文,因为 Apple 审核人员阅读的是英文。

Resolution Center 回复(保留适用的行)
Hello App Review team,

Thank you for reviewing [App name] [version] ([build]). Here is how the app meets Guideline 4.7:

- Index: all [number] games are listed in [the Games tab / https://yourdomain.com/games] with name, developer, description and age rating. Each entry is a universal link (for example https://yourdomain.com/games/[slug]) that opens the game in the app.
- Responsibility: all games are [made by us / licensed from [partner]] and checked by us before publication.
- Age: the app is rated [age]. [No game exceeds this rating. / Games rated above it are marked and only available after the user's declared age is confirmed at onboarding.]
- Purchases: [coins / ad removal] are sold only through In-App Purchase ([product IDs]). Games contain no other payment methods.
- Native features and data: games do not access native APIs or user data. [A nickname is shared with a game only after the user confirms it each time.]
- [User-published games: report, block and filtering are available on every game page; reports reach us at [email].]

Best regards,
[Name], [email]

检查清单

  • 索引页面列出了每个游戏或迷你应用,附有元数据和年龄分级。
  • 索引中的每一项都是能在应用中打开对应项目的通用链接。
  • 超出应用年龄分级的项目已被标出,并按自行申报或已验证的年龄进行限制。
  • 所有数字商品都通过应用内购买销售;游戏内没有网页或门户支付。
  • 第三方或用户制作的软件隔离运行,无法使用原生功能,也拿不到用户数据,除非用户每次都同意。
  • 凡是用户或 AI 发布内容的地方,都有举报、屏蔽和过滤功能。

常见问题

我可以用 WebViewGold 发布单个 HTML5 游戏吗?

可以。WebViewGold 支持 HTML5 游戏,既可以打包在应用中,也可以从您的服务器加载。Apple 会像评判其他游戏一样评判它:必须完整、稳定,内容足够充实、能够独立成立,数字商品使用应用内购买。

我可以收录免费 HTML5 游戏门户中的游戏吗?

只有在获得允许在您的应用中分发的授权时才可以,而且您要为它们的内容、广告和购买负责。基于门户内容构建的应用也常常遇到准则 4.3 或 5.2 的问题,所以原创游戏或获得正规授权的游戏更稳妥。

Apple 要求的索引到底是什么?

一份列出您应用中每个迷你应用或游戏及其元数据的清单,其中每一项都是指向该项目的通用链接。在您的域名上建一个游戏页面,每个游戏配一个通用链接,就能满足要求。

我自己的游戏使用触感反馈需要 Apple 许可吗?

我们对 4.7.2 的理解是:它针对的是向应用内提供的软件开放原生 API,而不是您自己的第一方代码使用有文档的 WebViewGold 功能。对于第三方软件,不要让它接触到原生功能。如果拿不准,请在审核备注中说明您的用法。

AI 生成的游戏算迷你游戏吗?

如果 AI 在您的应用内生成可玩的游戏,它们就是您提供的软件,适用 4.7 的全部义务,而运行新生成的代码还涉及 2.5.2 的问题。您在开发阶段用 AI 生成、然后像其他游戏一样发布的游戏,就只是您自己的游戏。

让您的应用上架商店的三种方式

结果相同,只是您需要投入的工作量不同。三种方式都附带审核通过保证和 7×24 小时人工支持。

自己动手

$109 每个平台,一次性付费

WebViewGold 许可证:一个现成的 Xcode 或 Android Studio 项目。粘贴您的 URL,设置名称和图标,开启所需功能,构建并提交。永久免费更新。

在主页查看方案

Cloud Builder

$349 每个许可证,一次性附加购买

无需 Mac、Xcode 或 Android Studio:在浏览器中完成配置,我们在云端构建两个应用,并将其交付到 App Store Connect 和 Play Console。

Cloud Builder 如何运作 试用免费演示

Full Service

$698 每个平台 $798

把您的 URL 和图标发给我们。我们的团队在 72 小时内完成配置、构建并交付您的应用,白标,附源码项目。两个平台共 $1,158。

Full Service 详情 服务提供方: WeSetupYourWebViewApp

冬季特惠价格有效期至 2026年12月31日。

准备好发布您的应用了吗?

App Store & Google Play 审核通过保证 – 否则 14 天内退款

想直接交给我们?Full Service:我们在 72 小时内完成配置、构建并交付,每个平台 $698 起。有疑问?通过 7×24 小时在线聊天联系我们。

退款依据我们 FAQ 中列出的条件:应用因非内容原因被 Apple 和/或 Google 拒审,并在购买后 14 天内提出申请。