Show Menu
主题×

iOS methods

适用于 Experience Cloud 解决方案 4.x SDK 的 Xamarin 组件的 iOS 方法。

Configuration methods

  • CollectLifecycleData
    指示 SDK 应收集生命周期数据以在 SDK 的所有解决方案中使用。有关更多信息,请参阅 生命周期量度
    • 下面是这种方法对应的语法:
      public static void CollectLifecycleData();
      
      
    • 以下是这种方法的代码示例:
      ADBMobile.CollectLifecycleData();
      
      
  • 调试记录
    返回当前的调试日志记录首选项。默认值为 false .
    • 下面是这种方法对应的语法:
      public static bool DebugLogging(); 
      
      
    • 以下是这种方法的代码示例:
      var debugEnabled = ADBMobile.DebugLogging();
      
      
  • SetDebugLogging
    将调试日志记录首选项设置为启用。
    • 下面是这种方法对应的语法:
      public static void SetDebugLogging(bool enabled);
      
      
    • 以下是这种方法的代码示例:
      ADBMobile.SetDebugLogging(true);
      
      
  • LifetimeValue
    返回当前用户的生命周期值。
    • 下面是这种方法对应的语法:
      public static double LifetimeValue();
      
      
    • 以下是这种方法的代码示例:
      var lifetimeValue = ADBMobile.LifetimeValue();
      
      
  • PrivacyStatus
    返回当前用户隐私状态的枚举表示形式。
    • ADBMobilePrivacyStatus.OptIn -立即发送点击。
    • ADBMobilePrivacyStatus.OptOut - hits are discarded.
    • ADBMobilePrivacyStatus.Unknown - 如果启用了离线跟踪,则将保存点击量,直到隐私状态更改为选择启用(发送点击量)或选择禁用(丢弃点击量)。如果禁用了脱机跟踪,则会丢弃点击,直到隐私状态更改为选择加入。 The default value is set in the ADBMobileConfig.json .
    • 下面是这种方法对应的语法:
      public static ADBPrivacyStatus PrivacyStatus();
      
      
    • 以下是这种方法的代码示例:
      var privacyStatus = ADBMobile.PrivacyStatus();
      
      
  • SetPrivacyStatus
    设置当前用户的隐私状态。设置为以下值之一:
    • ADBMobilePrivacyStatus.OptIn -立即发送点击。
    • ADBMobilePrivacyStatus.OptOut -丢弃点击。
    • ADBMobilePrivacyStatus.Unknown - 如果启用了离线跟踪,将会保存点击,直到隐私状态更改为选择启用(发送点击)或选择禁用(丢弃点击)。如果未启用离线跟踪,则将丢弃点击,直到隐私状态更改为选择启用。
    • 下面是这种方法对应的语法:
      public static void SetPrivacyStatus(ADBPrivacyStatus status) 
      
      
    • 以下是这种方法的代码示例:
      ADBMobile.SetPrivacyStatus(ADBMobilePrivacyStatus.OptIn); 
      
      
  • UserIdentifier
    如果设置了自定义标识符,则返回自定义用户标识符。如果未设置自定义标识符,则返回 null。默认值为 null .
    • 下面是这种方法对应的语法:
      public static string UserIdentifier(); 
      
      
    • 以下是这种方法的代码示例:
      var userId = ADBMobile.UserIdentifier(); 
      
      
  • SetUserIdentifier
    如果设置了自定义标识符,则返回自定义用户标识符。如果未设置自定义标识符,则返回 null。默认值为 null .
    • 下面是这种方法对应的语法:
      public static string UserIdentifier();
      
      
    • 以下是这种方法的代码示例:
      ADBMobile.SetUserIdentifier ("customUserIdentifier”); 
      
      
  • GetVersion
    获取库版本。
    • 下面是这种方法对应的语法:
      public static string Version();
      
      
    • 以下是这种方法的代码示例:
      var version = ADBMobile.Version();
      
      
  • KeepLifecycleSessionAlive(仅限 iOS)
    指示 SDK 无论配置文件中的生命周期会话超时值为多少,下次从后台恢复时都不应启动新会话。
    此方法适用于在后台注册通知的应用程序,并且仅应从应用程序在后台运行时运行的代码中调用该方法。
    • 下面是这种方法对应的语法:
      public static void KeepLifecycleSessionAlive();
      
      
    • 以下是这种方法的代码示例:
      ADBMobile.KeepLifecycleSessionAlive();
      
      

Analytics methods

  • TrackingIdentifier
    检索分析跟踪标识符。
    • 下面是这种方法对应的语法:
      public static string TrackingIdentifier();
      
      
    • 以下是这种方法的代码示例:
      var trackingId = ADBMobile.TrackingIdentifier();
      
      
  • TrackState
    通过可选的上下文数据跟踪应用程序状态。状态是指应用程序中可用的视图,如“标题屏幕”、“级别 1”、“暂停”,等等。These states are similar to pages on a website, and calls increment page views.If state is empty, it displays as "app name app version (build)" in reports. TrackState 如果您在报表中看到该值,请确保在每个 TrackState 调用中设置 state。
    这是唯一可增加页面查看次数的跟踪调用。
    • 下面是这种方法对应的语法:
      public static void TrackState(string state, NSDictionary cdata); 
      
      
    • 以下是这种方法的代码示例:
      NSDictionary contextData; 
       contextData = NSDictionary.FromObjectAndKey (NSObject.FromObject("val"),NSObject.FromObject("key")); 
        ADBMobile.TrackState("title screen", contextData); 
      
      
  • TrackAction
    跟踪应用程序中的操作。操作是指应用程序中发生的需要测量的事件,如“终止次数”、“获取的级别”、“信息源订阅”及其他量度。
    If you have code that might run while the app is in the background (for example, a background data retrieval), use trackActionFromBackground instead.
    • 下面是这种方法对应的语法:
      public static void TrackAction(string action, NSDictionary cdata); 
      
      
    • 以下是这种方法的代码示例:
      ADBMobile.TrackAction("level gained", null); 
      
      
  • TrackActionFromBackground(仅限 iOS)
    跟踪后台发生的操作。此方法在某些情况下会阻止生命周期事件的触发。
    只应在应用程序处于后台时运行的代码中调用此方法。
    • 下面是这种方法对应的语法:
      public static void TrackActionFromBackground(string action, NSDictionary cdata); 
      
      
    • 以下是这种方法的代码示例:
      ADBMobile.TrackActionFromBackground("majorLocationChange", null);
      
      
  • TrackLocation
    发送当前纬度和经度坐标。此方法还使用 ADBMobileConfig.json 文件中定义的目标点来确定作为参数提供的位置是否位于您的任何 POI 内。如果当前坐标位于定义的 POI 内,则会填充上下文数据变量,并随 TrackLocation 调用发送该变量。
    • 下面是这种方法对应的语法:
      public static void TrackLocation(CLLocation location, NSDictionary cdata); 
      
      
    • 以下是这种方法的代码示例:
      CoreLocation.CLLocation l = new CoreLocation.CLLocation  (111.111, 44.156);
      ADBMobile.TrackLocation (l, null);
      
      
  • TrackBeacon
    跟踪用户接近信标的时间。
    • 下面是这种方法对应的语法:
      public static void TrackBeacon( CLBeacon beacon, NSDictionary cdata);
      
      
    • 以下是这种方法的代码示例:
      CoreLocation.CLBeacon beacon = new CoreLocation.CLBeacon (); 
      ADBMobile.TrackBeacon (beacon, null);
      
      
  • TrackingClearCurrentBeacon
    在用户远离信标后清除信标数据。
    • 下面是这种方法对应的语法:
      public static void TrackingClearCurrentBeacon();
      
      
    • 以下是这种方法的代码示例:
      ADBMobile.TrackingClearCurrentBeacon();
      
      
  • TrackLifetimeValueIncrease
    增加用户生命周期值的数量。
    • 下面是这种方法对应的语法:
      public nbsp; static void voidTrackLifetimeValueIncrease(double amount, NSDictionary cdata);
    • 以下是这种方法的代码示例:
      ADBMobile.TrackLifetimeValueIncrease(5, null); 
      
      
  • TrackTimedActionStart
    开始具有指定操作名称的定时操作。如果对已启动的操作调用此方法,则将覆盖上一个定时操作。
    这个调用不发送点击。
    • 下面是这种方法对应的语法:
      public static void TrackTimedActionStart(string action, NSDictionary cdata); 
      
      
    • 以下是这种方法的代码示例:
      ADBMobile.TrackTimedActionStart("level2", null);
      
      
  • TrackTimedActionUpdate
    传入数据以更新与给定操作关联的上下文数据。传入的数据会附加在给定操作的现有数据之后,但如果已为操作定义了相同的键值,则会覆盖现有数据。
    这个调用不发送点击。
    • 下面是这种方法对应的语法:
      public static void TrackTimedActionUpdate(string action, NSDictionary cdata); 
      
      
    • 以下是这种方法的代码示例:
      NSDictionary updatedData = NSDictionary.FromObjectAndKey (NSObject.FromObject("val2"), NSObject.FromObject ("key2")); 
        ADBMobile.TrackTimedActionUpdate("level2", updatedData); 
      
      
  • TrackTimedActionEnd
    结束定时操作。
    • 下面是这种方法对应的语法:
      public static void TrackTimedActionEnd(string action, Func<double, double, NSMutableDictionary, sbyte> block); 
      
      
    • 以下是这种方法的代码示例:
      ADBMobile.TrackTimedActionEnd  ("level2", (double  arg1,  double  arg2,  NSMutableDictionary  arg3)  =>  { 
      return  Convert.ToSByte(true); 
      });
      
      
  • TrackingTimedActionExists
    Returns whether a timed action is (or is not) in progress.
    • 下面是这种方法对应的语法:
      public static bool TrackingTimedActionExists(string action); 
      
      
    • 以下是这种方法的代码示例:
      ADBMobile.TrackTimedActionEnd  ("timedAction",  (double  inAppDuration, 
      double  totalDuration,  NSMutableDictionary  data)  =>  { 
                   return  true; 
      });
      
      
  • TrackingSendQueuedHits
    强制库发送离线队列中的所有点击,而不考虑当前排队的点击量。
    • 下面是这种方法对应的语法:
      public static void TrackingSendQueuedHits();
      
      
    • 以下是这种方法的代码示例:
      ADBMobile.TrackingSendQueuedHits(); 
      
      
  • TrackingClearQueue
    清除离线队列中的所有点击。
    • 下面是这种方法对应的语法:
      public static void TrackingClearQueue(); 
      
      
    • 以下是这种方法的代码示例:
       ADBMobile.TrackingClearQueue();
      
      
  • TrackingGetQueueSize
    检索离线队列中的当前点击量。
    • 以下是这种方法的代码示例:
      public static int TrackingGetQueueSize();
      
      
    • 以下是这种方法的代码示例:
      var queueSize = ADBMobile.TrackingGetQueueSize(); 
      
      

Experience Cloud ID methods

  • GetMarketingCloudID
    从 ID 服务中检索 Experience Cloud ID。
    • 下面是这种方法对应的语法:
      public static string GetMarketingCloudID(); 
      
      
    • 以下是这种方法的代码示例:
      var mcid = ADBMobile.GetMarketingCloudID();
      
      
  • VisitorSyncIdentifiers
    使用 Experience Cloud ID,您可以设置其他的客户 ID 以便关联每位访客。访客 API 可以接受同一访客的多个客户 ID 和一个客户类型标识符(用以区分不同客户 ID 的作用范围)。此方法对应于 JavaScript 库中的 setCustomerIDs。
    • 下面是这种方法对应的语法:
      public static void VisitorSyncIdentifiers(NSDictionary identifiers);
      
      
    • 以下是这种方法的代码示例:
      NSDictionary  ids  =  NSDictionary.FromObjectAndKey  (NSObject.FromObject  ("value2"),  NSObject.FromObject  ("pushID")); 
      ADBMobile.VisitorSyncIdentifiers(ids); 
      
      

Target methods

  • TargetLoadRequest
    Sends request to your configured Target server and returns the string value of the offer generated in a Action<NSDictionary> callback.
    • 下面是这种方法对应的语法:
      public static void TargetLoadRequest (ADBTargetLocationRequest request, Action<NSString> callback); 
      
      
    • 以下是这种方法的代码示例:
      NSDictionary  dict  =  NSDictionary.FromObjectAndKey  (NSObject.FromObject  ("value2"),  NSObject.FromObject  ("key1")); 
      ADBTargetLocationRequest  req  =  ADBMobile.TargetCreateRequest  ("iOSTest",  "defGal",  dict); 
      ADBMobile.TargetLoadRequest(req,    (context)  =>  { 
      Console.WriteLine  (context); 
      });
      
      
  • TargetCreateRequest
    一个方便使用的构造函数,用于使用给定参数创建 ADBTargetLocationRequest 对象。
    • 下面是这种方法对应的语法:
      public static ADBTargetLocationRequest ADBTargetLocationRequest TargetCreateRequest (string name, string defaultContent, NSDictionary parameters); 
      
      
    • 以下是这种方法的代码示例:
      NSDictionary  dict  =  NSDictionary.FromObjectAndKey  (NSObject.FromObject  ("value2"),  NSObject.FromObject  ("key1")); 
      ADBTargetLocationRequest  req  =  ADBMobile.TargetCreateRequest  ("iOSTest",  "defGal",  dict); 
      
      
  • TargetCreateOrderConfirmRequest
    创建 ADBTargetLocationRequest
    • 下面是这种方法对应的语法:
      public static ADBTargetLocationRequest ADBTargetLocationRequest TargetCreateRequest (string name, string defaultContent, NSDictionary parameters);
      
      
    • 以下是这种方法的代码示例:
      ADBMobile.TargetCreateOrderConfirmRequest ("myOrder", "12345", "29.41", "cool stuff", null); 
      
      
  • TargetClearCookies
    清除应用程序中的任何目标 Cookie。
    • 下面是这种方法对应的语法:
      public static void TargetClearCookies(); 
      
      
    • 以下是这种方法的代码示例:
      ADBMobile.TargetClearCookies(); 
      
      

Audience Manager

  • AudienceVisitorProfile
    返回最近获取的访客资料。如果尚未提交任何信号,则返回 nil。访客资料保存在 NSUserDefaults 中,以供在多次启动应用程序时轻松访问。
    • 下面是这种方法对应的语法:
      public static NSDictionary AudienceVisitorProfile (); 
      
      
    • 以下是这种方法的代码示例:
      NSDictionary profile = ADBMobile.AudienceVisitorProfile();
      
      
  • AudienceDpid
    返回当前 DPID。
    • 下面是这种方法对应的语法:
      public static string AudienceDpid ();
      
      
    • 以下是这种方法的代码示例:
      string currentDpid = ADBMobile.AudienceDpid();
      
      
  • AudienceDpuuid
    返回当前 DPUUID。
    • 下面是这种方法对应的语法:
      public static string AudienceDpuuid ();
      
      
    • 以下是这种方法的代码示例:
      string currentDpuuid = ADBMobile.AudienceDpuuid(); 
      
      
  • AudienceSetDpidAndDpuuid
    设置 dpid 和 dpuuid。如果设置了 dpid 和 dpuuid,它们将与每个信号一起发送。
    • 下面是这种方法对应的语法:
      public static void AudienceSetDpidAndDpuuid (NSDictionary data, Action<NSDictionary> callback); 
      
      
    • 以下是这种方法的代码示例:
      ADBMobile.AudienceSetDpidAndDpuuid ("testDppid", "testDpuuid")
      
      
  • AudienceSignalWithData
    Sends audience management a signal with traits and get the matching segments returned in a Action<NSDictionary> callback.
    • 下面是这种方法对应的语法:
      public static void AudienceSignalWithData (NSDictionary data, Action<NSDictionary> callback); 
      
      
    • 以下是这种方法的代码示例:
      NSDictionary  audienceData  =  NSDictionary.FromObjectAndKey  (NSObject.FromObject  ("value2"),  NSObject.FromObject  ("key1")); 
      ADBMobile.AudienceSignalWithData  (audienceData,  (context)  =>  { 
      Console.WriteLine  (context); 
      }); 
      
      
  • AudienceReset
    重置 Audience Manager UUID 并清除当前访客资料。
    • 下面是这种方法对应的语法:
      public static void AudienceReset ();
      
      
    • 下面是这种方法对应的语法:
      ADBMobile.AudienceReset ();
      
      

视频

有关更多信息,请参阅 视频分析
  • MediaCreateSettings
    通过指定的参数返回 ADBMediaSettings 对象。
    • 下面是这种方法对应的语法:
      public static ADBMediaSettings MediaCreateSettings ([string name, double length, string playerName, string playerID); 
      
      
    • 以下是这种方法的代码示例:
      ADBMediaSettings settings = ADBMobile.MediaCreateSettings ("name1", 10, "playerName1", "playerID1"); 
      
      
  • MediaAdCreateSettings
    返回用于跟踪广告视频的 ADBMediaSettings 对象。
    • 下面是这种方法对应的语法:
      public static ADBMediaSettings MediaAdCreateSettings ( string name,  double length,  string playerName,  string parentName,  string parentPod,  double parentPodPosition,  string CPM); 
      
      
    • 以下是这种方法的代码示例:
      ADBMediaSettings adSettings = ADBMobile.MediaAdCreateSettings("adName1", 2, "playerName1", "name1", "podName1", 4, "CPM1");
      
      
  • MediaOpenWithSettings
    打开 ADBMediaSettings 对象以进行跟踪。
    • 下面是这种方法对应的语法:
      public static void MediaOpenWithSettings ( ADBMediaSettings settings,  Action<ADBMediaState> callback); 
      
      
    • 以下是这种方法的代码示例:
      ADBMediaSettings settings = ADBMobile.MediaCreateSettings  ("name1",  10,  "playerName1",  "playerID1"); 
      ADBMobile.MediaOpenWithSettings  (settings,  (state)  =>  { 
      Console.WriteLine  (state.Name); 
      }); 
      
      
  • MediaClose
    关闭具有指定名称的媒体项目。
    • 下面是这种方法对应的语法:
      public static void MediaClose ( string name);
      
      
    • 以下是这种方法的代码示例:
      ADBMobile.MediaClose  (settings.Name);
      
      
  • MediaPlay
    在指定偏移位置播放具有指定名称的媒体项目(以秒为单位)。
    • 下面是这种方法对应的语法:
      public static void MediaPlay ( string name, double offset);
      
      
    • 以下是这种方法的代码示例:
      ADBMobile.MediaPlay (settings.Name, 0); 
      
      
  • MediaComplete
    在提供的偏移位置将媒体项目手动标记为完成(以秒为单位)。
    • 下面是这种方法对应的语法:
      public static void MediaComplete ( string name, double offset);
      
      
    • 以下是这种方法的代码示例:
      ADBMobile.MediaComplete (settings.Name, 5);
      
      
  • MediaStop
    通知媒体模块已在指定的偏移位置停止或暂停视频。
    • 下面是这种方法对应的语法:
      public static void MediaStop ( string name, double offset);
      
      
    • 以下是这种方法的代码示例:
      ADBMobile.MediaStop (settings.Name, 3);
      
      
  • MediaClick
    通知媒体模块已单击媒体项目。
    • 下面是这种方法对应的语法:
      public static void MediaClick ( string name, double offset); 
      
      
  • MediaTrack
    发送用于获取当前媒体状态的跟踪操作调用(无页面查看)。
    • 下面是这种方法对应的语法:
      public static void MediaTrack ( string name, NSDictionary data); 
      
      
    • 以下是这种方法的代码示例:
       ADBMobile.MediaTrack (settings.Name, null);