【发布时间】:2016-07-24 06:24:19
【问题描述】:
我正在将 GCM 集成到一个应用程序中,我们碰巧有多个针对同一目标的构建配置,其中一些使用不同的 Bundle Id(我们有不同的帐户、企业和应用商店),所以如果我们想启用 GCM 推送通知我们都需要两个不同的 GoogleService-Info.plist 文件(每个文件对应不同的 BundleID)。我找不到一种方法来告诉 GCM sdk 从一个不同的命名文件初始化,但默认文件。有谁知道这是否可能?
我可以想到两种解决方案,但我宁愿不这样做。 - 一旦应用程序启动(或之前),将捆绑 ID 写入 plist 文件 - 使用不同的 plist 文件创建不同的 Target
非常感谢。
问候, 哈维尔
【问题讨论】:
-
您是对的,您需要为 Enterprise 和 Appstore 帐户提供两个不同的
GoogleService-Info.plist文件。但我认为不可能在一个目标中有两个或多个 GoogleService-Info.plist。正如您所说,最好“使用不同的plist文件创建一个不同的目标”。因此,如果目标是企业,则使用一个 .plist 文件,如果另一个目标是发布版本,则使用另一个 plist 文件。检查这个相关的question。 -
谢谢,我决定最后我将在运行脚本构建阶段编辑 GoogleService-Info.plist 文件,为包标识符设置正确的值。
-
构建阶段的运行脚本是否有效?我认为这是唯一的选择,但似乎无法让我的脚本正常工作。你能分享你的答案吗?
标签: ios push-notification google-cloud-messaging