methinksSDK-iOS 0.7.3

methinksSDK-iOS 0.7.3

metihnksiOSSDKmethinksAppTest 维护。



  • 作者
  • Philip Yun

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获取clientKeyproductKey。建议在应用生命周期开始时初始化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"];