在不使用 GoogleService-Info.plist 的情况下使用适用于 iOS 的 Google 服务

Posted

技术标签:

【中文标题】在不使用 GoogleService-Info.plist 的情况下使用适用于 iOS 的 Google 服务【英文标题】:Using Google Service for iOS without using GoogleService-Info.plist 【发布时间】:2015-11-28 12:16:50 【问题描述】:

我可以通过 GoogleService-Info.plist 使用 Google SignIn 和 Analytics。

但是,为了减少依赖性,我想将信息从 GoogleService-Info.plist 移动到另一个包含我的其他信息的 .plist 中。

这可能吗?如果是这样,我该怎么做?

【问题讨论】:

DI 是我们的一切 :) 目前,由于我的研究 - 我们无法更改名称,或让 google SDK 从我们想要的内容中读取。于是我来到the next solution 【参考方案1】:

当然可以。不要通过 pList 进行初始化,而是使用在项目的单独空间中维护的键和常量进行手动设置。

[[[GAI sharedInstance] logger] setLogLevel:kGAILogLevelVerbose];
 id newTracker = [[GAI sharedInstance] trackerWithTrackingId:GOOGLE_ANALYTICS_KEY];
[GAI sharedInstance].defaultTracker = newTracker;

【讨论】:

【参考方案2】:

您可以 - 这两个库都允许您手动配置它们。您需要删除对GGLContext 的所有引用,直接设置库:

[GIDSignIn sharedInstance].clientID = @"YOUR_CLIENT_ID";

[[GAI sharedInstance] trackerWithTrackingId:@"UA-XXXX-Y"]; 

您可以查看Analytics 和Sign In 的参考文档以获取更多信息。

【讨论】:

以上是关于在不使用 GoogleService-Info.plist 的情况下使用适用于 iOS 的 Google 服务的主要内容,如果未能解决你的问题,请参考以下文章

如何在不安装 Zend 框架的情况下使用 Zend 库

在不使用存储过程的情况下循环 n 次

为啥 glDrawElments() 在不使用任何着色器的情况下工作?

在不使用地图Android的情况下获取用户(纬度,经度)位置[重复]

在不使用 ForEach 循环的情况下遍历列表

如何在不使用滤镜的情况下使图像变暗? [复制]