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

提交之前

Bundle ID 和包名:唯一一个以后无法更改的设置

每个应用都有一个技术身份:iOS 上的 bundle ID 和 Android 上的包名。商店会在您第一次上传时锁定它,另外还有五六个系统必须与之保持一致。现在花五分钟想清楚,就能省下以后整个重新发布的麻烦。

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

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

它是什么,为什么无法更改

这个标识符是一个反向域名字符串,例如 com.yourbrand.appname。iOS 称之为 bundle identifier,Android 称之为包名(严格来说是 applicationId)。用户永远看不到它,但每个与您应用通信的系统都把它当作主键:应用商店、推送服务、购买系统、深度链接验证文件,以及您自己的后端。

App Store Connect 会在第一个构建上传的那一刻,固定该应用记录的 bundle ID。Google Play 会在您向任意轨道(哪怕只是内部测试)上传第一个包时固定包名,而且在 Play 上用过的包名永远不能再被其他应用使用,即使删除了原应用也不行。WebViewGold 项目自带占位标识符(Android 上是 com.webviewgold.myappname),这些占位符早已被占用,所以重命名是每个项目的第一步。

因此,“以后再改”意味着:新的应用记录、新的商店详情页、零评分,还有必须再安装一个应用的用户。请像对待一个无法转让的域名那样对待这个标识符。

同时满足两大商店的命名规则

  • 把您掌控的域名倒过来写:com.yourbrand.appname。它不必能解析到某个网站,但必须唯一,而您自己拥有的域名可以保证这一点。
  • 只使用小写字母、数字和点。每一段都以字母开头;Android 会拒绝以数字开头的段,也不允许使用连字符。
  • 至少两段(Android 的要求),惯例是三段。
  • 避免用 Java 关键字作为段名(new、default、class),这样 Android 项目编译时才不会出意外。
  • 在 iOS 和 Android 上使用相同的字符串。没有任何规则强制要求,但只用一个身份时,RevenueCat、Firebase、OneSignal 和您自己的日志都会清晰得多。
  • 不要包含构建工具名称、“test”、“beta”、“v2”或年份。这个 ID 会比它们都活得更久。
  • 不要把您租用的平台域名倒过来用(app.lovable、vercel.app)。即使 Web 应用目前放在某个子域名上,也请使用您的品牌域名。

标识符必须保持一致的所有地方

系统字段说明
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 BuilderBundle ID / 包名字段在第一次构建前设置好;Cloud Builder 会替您处理 Xcode 和 Gradle 方面的配置
RevenueCatApp Store 应用和 Play Store 应用必须完全一致,否则购买会静默失败
Firebase(推送、Crashlytics)已注册应用的 iOS bundle ID 和 Android 包名注册后永久固定;GoogleService-Info.plist 和 google-services.json 都是针对这个确切的 ID 生成的
OneSignal / Pushwoosh应用配置证书和密钥是针对该 App ID 签发的
Universal Links / App Linksapple-app-site-association(TEAMID.bundleid)和 assetlinks.json(package_name)这里一个拼写错误就会让 Magic Link 失效,而且没有任何错误提示

我的iOS WebView应用终于通过审核了。谢谢!!

塔哈·法鲁基(Taha Farooqui) · CodeCanyon

Universal Links 和 App Links 依赖于它

当用户点击来自 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 项目都会用到它。

常见问题

首次上传之前可以更改 bundle ID 吗?

可以,随意更改。在 App Store Connect 中,您甚至可以删除一个从未收到过构建的应用记录。一切都是在第一个构建或第一个包上传后才永久固定的。

iOS 和 Android 的标识符必须完全相同吗?

不必,商店不会比较它们。保持一致只是一种惯例,能避免在 RevenueCat、Firebase 和您的后端中产生混淆。

如果我用默认的 com.webviewgold.myappname 上传会怎样?

Google Play 会拒绝上传,因为这个包名已存在于另一位开发者的应用中。在 iOS 上,注册该 App ID 也会因为同样的原因失败。请先重命名。

bundle 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,设置名称和图标,开启所需功能,构建并提交。永久免费更新。

在主页查看方案

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 天内提出申请。