Show Menu
主题×

应用程序内消息传送

此信息可帮助您在 iOS 应用程序中使用应用程序内消息传送功能。
要使用应用程序内消息传送,您​ 必须 ​具有 SDK 版本 4.2 或更高版本。
请牢记以下信息:
  • 消息以及定义消息何时显示的规则在 Adobe Mobile Services 中创建。有关更多信息,请参阅 创建应用程序内消息
  • 必须对 SDK 进行此部分中所述的更新,才能显示应用程序内消息。
    即使您未定义任何消息,也可以完成这些步骤。在定义消息后,这些消息会被动态提交到您的应用程序,并且无需应用商店更新即可显示出来。

启用应用程序内消息

  1. 将库添加到您的项目并实施生命周期。
    有关更多信息,请参阅 核心实施和生命周期 中的“将 SDK 和配置文件添加到您的项目”**。
  2. 导入库:
    #import "ADBMobile.h"
    
    
  3. 确认 ADBMobileConfig.json 文件中包含应用程序内消息传送所需的设置。
  4. 对于要在启动时动态更新的应用程序内消息, remotes 对象必须存在且进行了正确配置:
    “messages”: [ 
        { 
            “messageId”: “de45c43c-37bf-441f-8cbd-cc3ba3469ebe”, 
            “template”: “fullscreen”, 
            “showOffline”: false, 
            “showRule”: “always”, 
            “endDate”: 2524730400, 
            “startDate”: 0, 
            “audiences”: [], 
            “triggers”: [], 
            “payload”: { // contents change depending on template 
                “html”: “<html>html code goes here</html>” 
            }, 
        }, 
        … 
    ] 
    “remotes” : { 
        “analytics.poi”: “https://assets.adobedtm.com/…/yourfile.json”, 
        “messages”: “https://assets.adobedtm.com/…/yourfile.json” 
    }
    
    
    messages remotes 是必需的。
    如果未配置这些对象,请从 Adobe Mobile Services 下载更新的 ADBMobileConfig.json 文件。有关更多信息,请参阅 核心实施和生命周期

跟踪应用程序内消息

iOS Mobile SDK 可跟踪应用内消息的以下量度:
  • 对于全屏和警告样式的应用程序内消息:
    • 展示次数 :用户触发应用程序内消息时。
    • 点进次数 :用户按下​ 点进 ​按钮时。
    • 取消次数 :用户按下​ 取消 ​按钮时。
  • 对于自定义的全屏应用程序内消息,消息中的 HTML 内容需要包含正确的代码以通知 SDK 跟踪以下按钮:
    • 点进 (重定向)示例跟踪: adbinapp://confirm/?url=https://www.yoursite.com
    • 取消 (关闭)示例跟踪: adbinapp://cancel
  • 对于本地(远程)通知:
    • 展示次数 :用户触发通知时。
    • 打开次数 :用户从通知中打开应用程序时。 以下是有关如何包含“打开次数”跟踪的示例:
    - (BOOL) application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { 
      // handle local notification click-throughs for iOS 10 and older 
      NSDictionary *localNotificationDictionary = launchOptions[UIApplicationLaunchOptionsLocalNotificationKey]; 
      if ([localNotificationDictionary isKindOfClass:[NSDictionary class]]) { 
           [ADBMobile trackLocalNotificationClickThrough:localNotificationDictionary]; 
      } 
    } 
    - (void) application:(UIApplication *)application didReceiveLocalNotification:(UILocalNotification *)notification { 
       [ADBMobile trackLocalNotificationClickThrough:notification.userInfo]; 
    }
    
    

本地替代图像

在 Adobe Mobile Services 中创建全屏消息时,您可以选择指定替代图像。如果您的消息无法从 Web 中检索其预定图像,SDK 会尝试从应用程序包中加载具有相同名称的图像。这允许您显示原始格式的消息,即使用户处于离线状态或预定图像不可访问也是如此。
在 Adobe Mobile Services 中配置消息时,会指定替代图像资源名称。
[!IMPORTA