Narratiive IOS SDK
示例
要运行示例项目,请克隆仓库,然后首先从 Example 目录运行 pod install
。
将 NarratiiveSDK 添加到您的 iOS 应用程序中
NarratiiveSDK 通过 CocoaPods 提供。要安装它,只需将以下行添加到您的 Podfile。
pod 'NarratiiveSDK'
保存 Podfile 并运行
pod install
这为您创建了一个 .xcworkspace 文件。在您以后的所有开发中使用此文件。
为您 iOS 应用程序初始化 NarratiiveSDK
现在您已经有了项目的配置文件,您就可以开始实现了。首先,在 AppDelegate 内配置共享的 Analytics 对象。这使得您的应用能够向 Analytics 发送数据。
为此,导入 NarratiiveSDK 库并覆盖 didFinishLaunchingWithOptions
方法来配置 NarratiiveSDK。
Swift代码:
// AppDelegate.swift
import NarratiiveSDK
...
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
guard let sdk = NarratiiveSDK.sharedInstance() else {
assert(false, "Narratiive SDK not configured correctly")
}
// Optional, show debug information in output
// Remove before app release.
sdk.debugMode = true
// Optional, use of IDFA to identify user
sdk.useIDFA = true
sdk.setup(withHost: "YOUR_HOSTNAME", andHostKey: "YOUR_HOSTKEY")
return true
}
Objective C:
// AppDelegate.m
#import "NarratiiveSDK-Swift.h"
...
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
// Override point for customization after application launch.
NarratiiveSDK *sdk = [NarratiiveSDK sharedInstance];
[sdk setupWithHost:@"YOUR_HOSTNAME" andHostKey:@"YOUR_HOSTKEY"];
// Optional, show debug information in output
// Remove before app release.
sdk.debugMode = YES;
return YES;
}
**Note**: You will need to create a bridging header for this Swift Pod if you don't have one yet in your Objective C project.
添加屏幕跟踪
在这里,每次用户在您的应用程序中打开或更改屏幕时,您将向NarratiiveSDK发送一个命名的屏幕视图。打开一个您想要跟踪的视图控制器,或者如果您这是一个新应用程序,打开默认视图控制器。您的代码应该执行以下操作
Swift代码:
// FirstViewController.swift
import NarratiiveSDK
...
override func viewWillAppear(_ animated: Bool) {
if let inst = NarratiiveSDK.sharedInstance() {
inst.send(screenName: "/first-page")
}
}
Objective C:
// FirstViewController.m
#import "NarratiiveSDK-Swift.h"
...
- (void) viewWillAppear:(BOOL)animated {
NarratiiveSDK *sdk = [NarratiiveSDK sharedInstance];
[sdk sendWithScreenName:@"/first-page"];
}
注意:使用screenName
来识别屏幕视图。它应该遵循URL路径格式,并全部小写。
关于IDFA
在2020年WDDC(全球开发者大会)上宣布,iOS 14将要求用户同意开发者访问他们的设备广告ID(或IDFA)。
在v0.2.0之前的版本中,SDK默认收集IDFA并用其进行用户识别。
自v0.2.0以来,SDK需要显式启用对IDFA的使用,通过设置useIDFA = true
。请参阅上面的示例以获取详细信息。SDK不会请求用户授权。如果需要,应用程序开发者需要向用户发出应用程序跟踪授权请求。有关更多详细信息,请访问https://developer.apple.com/documentation/apptrackingtransparency。
作者
git, [email protected]
许可证
NarratiiveSDK在MIT许可证下可用。有关更多信息,请参阅LICENSE文件。
开发
本 SDK 使用 Pod Lib Create 创建,并发布到 CocoaPods Trunk
按照以下步骤开始开发:
-
安装 CocoaPods
-
使用 XCode 打开
Example/NarratiiveSDK.xcworkspace
进行开发; -
更新
NarratiiveSDK.podspec
中的版本号; -
执行 pod lib lint
-
在 Git 仓库中提交更改并创建版本标签。例如
$ git add -A && git commit -m "Release 0.0.1." $ git tag '0.0.1' $ git push --tags
-
pod spec lint
(使用 CocoaPods Trunk 的用户 [email protected]) -
pod repo push