methinksSDK-iOS
methinks iOS SDK 允许您跟踪用户旅程和调查特定组的应用程序用户。通过单行代码了解特定的用户行为和旅程,并初始化针对特定目标用户群体的应用内调查。请在 methinks 上查看更多详细信息,以创建账户并获得产品密钥开始使用。如果您对 Android 版本感兴趣,请点击此处。
要求
SDK 在 iOS 10 或更高版本上运行。
安装
CocoaPods
我们建议使用 Cocoapods 获取 methinksSDK for iOS。在您的 Podfile
中定义 pod:
pod 'methinksSDK-iOS'
然后运行 pod install
。
Swift 包
请添加以下URL作为Swift包的URL:
https://github.com/methinksBot/swift-methinks
点击这里获取更多信息。
手动安装
在此处下载最新SDK:这里。下载压缩文件后,将methinksiOS.framework
嵌入到项目的目标中。
设置
继续之前,请确保从methinks获取clientKey
和productKey
。建议在应用生命周期开始时初始化SDK,在AppDelegate
类中设置是个不错的选择。
启用autoTracking
来自动分析用户旅程。
Swift
import methinksSDK_iOS
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {
MTKSDK.shared().initialize(withClientKey: "YOUR CLIENT KEY", productKey: "YOUR PRODUCT KEY", autoTracking: true)
return true
}
Obj-C
#import <methinksiOS/MTKSDK.h>
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[[MTKSDK shared] initializeWithClientKey:@"myClientKey" productKey:@"x12345" autoTracking:YES];
return YES;
}
用户旅程追踪
methinks SDK基于UIViewController
类和用户与之的交互来追踪用户旅程。您可以调整一些选项以获取最全面的旅程数据。
自定义视图控制器标题
如果您启用了autoTracking
,SDK将根据UIViewController
名称捕获用户旅程。如果您想设定更易于理解的名字,可以设置自定义追踪视图名称。在您的UIViewController
中,在用户交互当前视图控制器之前,在viewDidAppear:
中设置是个不错的选择。
Swift
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
MTKSDK.shared().setViewController(self, withCustomTitle: "UserOptionSettingView")
}
Obj-C
- (void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
[[MTKSDK shared] setViewController:self withCustomTitle:@"OptionSettionView"];
}
添加重要但非视图控制器视图到自动追踪
如果你 apps 不基于 UIViewController
或者在同一 UIViewController
中使用了许多视图(如 UIHostingController
),你可以在旅程追踪中添加任何视图。一个理想的位置是在视图创建并完全对用户显示,并且用户准备好与之互动时。
Swift
MTKSDK.shared().setCustomTrackingViewTitle("OptionSettingView")
Obj-C
[[MTKSDK shared] setCustomTrackingViewTitle:@"OptionSettingView"];
禁用视图追踪
如果你想在用户旅程中忽略某个 UIViewController
,因为它对用户旅程没有意义,你可以将其从自动追踪中排除。理想的位置是在你的 UIViewController
中的 viewDidAppear:
,在用户与当前视图控制器互动之前。
Swift
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
MTKSDK.shared().disableViewTracking()
}
Obj-C
- (void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
[[MTKSDK shared] disableViewTracking];
}
我认为 SDK 会定期为每个视图获取一次屏幕截图,以便在旅程追踪中显示为代表性图像。这些截图是从少数非常早期的用户那里获取的,一旦 SDK 获取到所有视图的截图,它就会停止获取截图。如果你认为这些截图可能会引起隐私担忧,你可以将某些视图设置为 敏感。理想的位置是在你的 UIViewController
中的 viewDidAppear:
,在用户与当前视图控制器互动之前。这些视图仍然会被追踪,但 SDK 将跳过截图。
Swift
override func viewDidAppear(_ animated: Bool) {
super.viewDidAppear(animated)
MTKSDK.shared().setAsSensitiveScreen()
}
Obj-C
- (void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
[[MTKSDK shared] setAsSensitiveScreen];
}
应用内调查
我认为 SDK 提供了功能齐全的应用内调查,可以以最不干扰的方式优化移动应用。要了解更多关于调查创建或收集实时响应的信息,请查看 methinks。
决定何时何地显示应用内调查
默认情况下,应用内调查将在新会话开始时显示,在用户开始与你的应用互动之前。但如果你在应用开始时有一个重要的过程或加载时间较长,你可以设置一个特定的视图控制器来显示应用内调查。理想的位置是在初始化目标视图控制器后立即显示。
Swift
let homeVC = HomeViewController()
MTKSDK.shared().setDefaultSurveyViewController(homeVC)
Obj-C
HomeViewController* homeVC = [[HomeViewController alloc] init];
[[MTKSDK shared] setDefaultSurveyViewController:homeVC];
将用户关联到应用内调查和旅程追踪
为了充分利用应用内调查和用户旅程跟踪,强烈建议关联用户属性和自定义事件。例如,如果您将可识别的唯一userID与methinksSDK关联,您可以针对特定用户进行应用内调查或跟踪特定旅程。
Swift
MTKSDK.shared().setUserId:"X1234567"
Obj-C
[[MTKSDK shared] setUserId:@"X1234567"];
如果可用,添加用户属性以针对特定用户群体的应用内调查。例如,如果您只想向女性用户发送调查,首先将用户的性别信息提供给跟踪SDK。值可以是数字或字符串,键必须是非空字符串。您可以添加多个键值对,并用它们进行应用内调查或旅程跟踪的先进定位。
Swift
MTKSDK.shared().setUserAttribute("gender", value: "female")
Obj-C
[[MTKSDK shared] setUserAttribute:@"gender" value:@"female"];