Google 广告转化片段:Obj-C 到 Swift
Google Ad Conversion Snippet: Obj-C to Swift
我正在关注 Google 的 steps,将 Google SDK 添加到我的 iOS 应用中,以便我可以跟踪 Google 广告的安装.我已经完成了所有步骤。但是,进入 didFinishLaunchingWithOptions 的 Objective-C 的小片段会收到一条错误消息,因为我的应用程序在 Swift 中。如何将其翻译成 Swift?
[ACTAutomatedUsageTracker enableAutomatedUsageReportingWithConversionID:@"IDString"];
[ACTConversionReporter reportWithConversionID:@"IDString" label:@"String" value:@"0.00" isRepeatable:NO];
[ACTAutomatedUsageTracker disableAutomatedUsageReportingWithConversionID:MY_CONVERSION_ID];
我需要向 Bridge-Header 添加内容吗?我遵循的 Facebook SDK 指南让我使用以下代码创建了一个 header 文件:
#ifndef Bridging_Header_h
#define Bridging_Header_h
#import <FBSDKCoreKit/FBSDKCoreKit.h>
#endif /* Bridging_Header_h */
导入项目导航器的 Google SDK 的图片。
所以我的两个问题是:
- 有谁知道如何将上面的代码片段翻译成 Swift?
- 我是否需要向我的网桥添加代码 header,如果需要,怎么办?
Do I need to add code to my bridge header and, if so, what?
当然可以。为了访问 Swift 中的 Objective-C 代码,您需要在名为 "MyProjectHere-Bridging-Header.h" 的 header 文件中定义导入。接下来,确保在构建设置中,在 Swift Compiler - Code Generation 下,您已将 "Objective-C Generated Interface Header Name" 设置为新的 header 文件。
Header 代码看起来像这样:
#ifndef AppName_Bridging_Header_h
#define AppName_Bridging_Header_h
#import "ACTReporter.h"
#import "GoogleConversionPing.h"
#import "DCTReporter.h"
#endif /* AppName_Bridging_Header_h */
完成后,只需进入新的 header 文件并为 Google 框架中的 header 文件执行 #import 语句,您应该可以使用它在您的 App Delegate 中就像 Swift:
即
let useageTraker: ACTAutomatedUsageTracker?
usageTracker.enableAutomatedUsageReportingWithConversionID("\(ID)")
appDelegate 的完整 Swift 代码:
ACTAutomatedUsageTracker.enableAutomatedUsageReportingWithConversionID("0123456789")
ACTConversionReporter.reportWithConversionID("0123456789", label: "XXXXXX", value: "0.00", isRepeatable: false)
我正在关注 Google 的 steps,将 Google SDK 添加到我的 iOS 应用中,以便我可以跟踪 Google 广告的安装.我已经完成了所有步骤。但是,进入 didFinishLaunchingWithOptions 的 Objective-C 的小片段会收到一条错误消息,因为我的应用程序在 Swift 中。如何将其翻译成 Swift?
[ACTAutomatedUsageTracker enableAutomatedUsageReportingWithConversionID:@"IDString"];
[ACTConversionReporter reportWithConversionID:@"IDString" label:@"String" value:@"0.00" isRepeatable:NO];
[ACTAutomatedUsageTracker disableAutomatedUsageReportingWithConversionID:MY_CONVERSION_ID];
我需要向 Bridge-Header 添加内容吗?我遵循的 Facebook SDK 指南让我使用以下代码创建了一个 header 文件:
#ifndef Bridging_Header_h
#define Bridging_Header_h
#import <FBSDKCoreKit/FBSDKCoreKit.h>
#endif /* Bridging_Header_h */
导入项目导航器的 Google SDK 的图片。
所以我的两个问题是:
- 有谁知道如何将上面的代码片段翻译成 Swift?
- 我是否需要向我的网桥添加代码 header,如果需要,怎么办?
Do I need to add code to my bridge header and, if so, what?
当然可以。为了访问 Swift 中的 Objective-C 代码,您需要在名为 "MyProjectHere-Bridging-Header.h" 的 header 文件中定义导入。接下来,确保在构建设置中,在 Swift Compiler - Code Generation 下,您已将 "Objective-C Generated Interface Header Name" 设置为新的 header 文件。
Header 代码看起来像这样:
#ifndef AppName_Bridging_Header_h
#define AppName_Bridging_Header_h
#import "ACTReporter.h"
#import "GoogleConversionPing.h"
#import "DCTReporter.h"
#endif /* AppName_Bridging_Header_h */
完成后,只需进入新的 header 文件并为 Google 框架中的 header 文件执行 #import 语句,您应该可以使用它在您的 App Delegate 中就像 Swift:
即
let useageTraker: ACTAutomatedUsageTracker?
usageTracker.enableAutomatedUsageReportingWithConversionID("\(ID)")
appDelegate 的完整 Swift 代码:
ACTAutomatedUsageTracker.enableAutomatedUsageReportingWithConversionID("0123456789")
ACTConversionReporter.reportWithConversionID("0123456789", label: "XXXXXX", value: "0.00", isRepeatable: false)