每个客户一个标识符
为多个客户发布同一产品的代理机构会使用 com.agency.clientname 这样的方案,更好的做法是把客户自己的域名倒过来写。绝不要在不同客户之间重复使用同一个 ID。
这个标识符是一个反向域名字符串,例如 com.yourbrand.appname。iOS 称之为 bundle identifier,Android 称之为包名(严格来说是 applicationId)。用户永远看不到它,但每个与您应用通信的系统都把它当作主键:应用商店、推送服务、购买系统、深度链接验证文件,以及您自己的后端。
App Store Connect 会在第一个构建上传的那一刻,固定该应用记录的 bundle ID。Google Play 会在您向任意轨道(哪怕只是内部测试)上传第一个包时固定包名,而且在 Play 上用过的包名永远不能再被其他应用使用,即使删除了原应用也不行。WebViewGold 项目自带占位标识符(Android 上是 com.webviewgold.myappname),这些占位符早已被占用,所以重命名是每个项目的第一步。
因此,“以后再改”意味着:新的应用记录、新的商店详情页、零评分,还有必须再安装一个应用的用户。请像对待一个无法转让的域名那样对待这个标识符。
com.yourbrand.appname。它不必能解析到某个网站,但必须唯一,而您自己拥有的域名可以保证这一点。new、default、class),这样 Android 项目编译时才不会出意外。| 系统 | 字段 | 说明 |
|---|---|---|
| App Store Connect | 应用记录的 Bundle ID | 从您开发者账号中已注册的 App ID 中选择;第一个构建上传后锁定 |
| Xcode 项目 | WebViewGold target 的 Bundle Identifier | 扩展 target 必须以它作为前缀,例如 com.my.app.OneSignalNotificationServiceExtension;项目名称“WebViewGold”请保持不变,文档提醒重命名会导致问题 |
| Google Play Console | 已上传包的包名 | 首次上传到任意测试轨道后锁定 |
| Android Studio 项目 | build.gradle 中的 applicationId(可按照Android 发布文档中的重构视频重命名) | 重命名前先备份项目 |
| Cloud Builder | Bundle ID / 包名字段 | 在第一次构建前设置好;Cloud Builder 会替您处理 Xcode 和 Gradle 方面的配置 |
| RevenueCat | App Store 应用和 Play Store 应用 | 必须完全一致,否则购买会静默失败 |
| Firebase(推送、Crashlytics) | 已注册应用的 iOS bundle ID 和 Android 包名 | 注册后永久固定;GoogleService-Info.plist 和 google-services.json 都是针对这个确切的 ID 生成的 |
| OneSignal / Pushwoosh | 应用配置 | 证书和密钥是针对该 App ID 签发的 |
| Universal Links / App Links | apple-app-site-association(TEAMID.bundleid)和 assetlinks.json(package_name) | 这里一个拼写错误就会让 Magic Link 失效,而且没有任何错误提示 |

我的iOS WebView应用终于通过审核了。谢谢!!
当用户点击来自 Supabase 的 Magic Link 或从您应用分享出去的链接时,iOS 和 Android 会把您域名上的文件与已安装应用的身份进行比对,以决定是否打开您的应用。apple-app-site-association 文件中列出的是 TEAMID.com.yourbrand.appname;assetlinks.json 中列出的是包名以及签名密钥的 SHA-256 指纹。在上线前重命名应用,只需更新这两个文件,非常简单。上线后再重命名,仍安装在成千上万部手机上的旧应用就不再匹配,深度链接也随之失效;深度链接指南展示了完整的设置。自定义 URL scheme(yourapp://)与 bundle ID 无关,随时都可以更改。
为多个客户发布同一产品的代理机构会使用 com.agency.clientname 这样的方案,更好的做法是把客户自己的域名倒过来写。绝不要在不同客户之间重复使用同一个 ID。
WebViewGold 许可证涵盖一个定制的最终产品。同一平台上的五个客户应用需要五个许可证;如果在浏览器中构建,还需要五次 Cloud Builder 升级。
Apple 准则 4.3(垃圾应用)和 Google 的重复内容规则,针对的都是同一账号下的雷同应用。每个客户的应用都应放在该客户自己的开发者账号中,拥有自己的内容和品牌。
用一张表格记录客户、bundle ID、包名、Team ID、签名密钥指纹和推送凭据。每个 assetlinks.json 和每个 RevenueCat 项目都会用到它。
可以,随意更改。在 App Store Connect 中,您甚至可以删除一个从未收到过构建的应用记录。一切都是在第一个构建或第一个包上传后才永久固定的。
不必,商店不会比较它们。保持一致只是一种惯例,能避免在 RevenueCat、Firebase 和您的后端中产生混淆。
Google Play 会拒绝上传,因为这个包名已存在于另一位开发者的应用中。在 iOS 上,注册该 App ID 也会因为同样的原因失败。请先重命名。
Play 商店的 URL 中包含它(play.google.com/store/apps/details?id=com.yourbrand.appname)。App Store 的 URL 则使用数字 ID。
没有错。标识符只是一个唯一的字符串,从来不需要能被解析。保留它,继续往前走就好。
结果相同,只是您需要投入的工作量不同。三种方式都附带审核通过保证和 7×24 小时人工支持。
$109 每个平台,一次性付费
WebViewGold 许可证:一个现成的 Xcode 或 Android Studio 项目。粘贴您的 URL,设置名称和图标,开启所需功能,构建并提交。永久免费更新。
在主页查看方案$349 每个许可证,一次性附加购买
无需 Mac、Xcode 或 Android Studio:在浏览器中完成配置,我们在云端构建两个应用,并将其交付到 App Store Connect 和 Play Console。
Cloud Builder 如何运作 试用免费演示$698 每个平台 $798
把您的 URL 和图标发给我们。我们的团队在 72 小时内完成配置、构建并交付您的应用,白标,附源码项目。两个平台共 $1,158。
Full Service 详情 服务提供方:冬季特惠价格有效期至 2026年12月31日。
App Store & Google Play 审核通过保证 – 否则 14 天内退款
想直接交给我们?Full Service:我们在 72 小时内完成配置、构建并交付,每个平台 $698 起。有疑问?通过 7×24 小时在线聊天联系我们。
退款依据我们 FAQ 中列出的条件:应用因非内容原因被 Apple 和/或 Google 拒审,并在购买后 14 天内提出申请。