Snip20230915_17.png
Snip20230915_19.png
Snip20230915_20.png
Snip20230915_21.png
Snip20230915_23.png
Snip20230915_24.png
Snip20230915_25.png
Snip20230915_27.png
应用内消息将转化为事件进行统计
Snip20230915_29.png
通过代码逻辑,可以定制应用内消息的行为:比如截获 In-App Messaging 消息,通过代码控制触发 In-App Messaging 消息,并允许用户控制与消息交互相关的个人数据共享等等
通过添加代码逻辑,可以获取 In-App Messaging 响应方法,通过这些方法可以做出相应处理,比如获取应用内消息的参数等等
以 iOS 为例,其他 Android、flutter,详情可见
AppDelegate 代码
self.myFiamDelegate = [[CardActionFiamDelegate alloc]init];
[FIRInAppMessaging inAppMessaging].delegate = (id)self.myFiamDelegate;
CardActionFiamDelegate 代码
#import <FirebaseInAppMessaging/FirebaseInAppMessaging.h>
@interface CardActionFiamDelegate()<FIRInAppMessagingDisplayDelegate>
@end
@implementation CardActionFiamDelegate
- (void)messageDismissed:(FIRInAppMessagingDisplayMessage *)inAppMessage dismissType:(FIRInAppMessagingDismissType)dismissType{
NSLog(@"点击了关闭按钮");
}
- (void)messageClicked:(FIRInAppMessagingDisplayMessage *)inAppMessage withAction:(FIRInAppMessagingAction *)action{
NSLog(@"点击非关闭按钮");
//获取参数
NSDictionary *dic = inAppMessage.appData;
NSLog(@"----%@",dic);
}
- (void)impressionDetectedForMessage:(FIRInAppMessagingDisplayMessage *)inAppMessage{
NSLog(@"消息加载成功");
}
- (void)displayErrorForMessage:(FIRInAppMessagingDisplayMessage *)inAppMessage error:(NSError *)error{
NSLog(@"消息显示失败了");
}
@end
除了以 Analytics 触发应用内消息,还可以使用 代码逻辑触发
以代码控制应用内消息触发时机,事件名要与控制台对应
[[FIRInAppMessaging inAppMessaging] triggerEvent:@"goto_baidu"];
Snip20230915_30.png
默认情况下,应用内消息一旦触发就会显示,如果想暂停使用,可以通过代码修改,Android、flutter,详情可见
将该属性设置为 YES
,应用内消息则无法显示,设置为 NO
,则可重新允许显示应用内消息。要想生效,必须重新启动 APP 才能满足其触发条件
[FIRInAppMessaging inAppMessaging].messageDisplaySuppressed = YES;
默认情况下,应用内消息会发送给安装该 APP 的所有用户,这是因为 Firebase In-App Messaging SDK 与 APP ID 绑定的,如果想让用户对其有更多的选择权,则需要询问用户是否同意数据共享
以 iOS 为例,Android、flutter 详情可见
修改 Info.plist
文件,将 FirebaseInAppMessagingAutomaticDataCollectionEnabled
设置为 NO
当用户选择同意共享,则执行以下代码。重启 APP 之后生效
// YES 为允许共享数据,NO 为拒绝贡献数据
[FIRInAppMessaging inAppMessaging].automaticDataCollectionEnabled = YES;
In-App Messaging 提供一些消息模板,同时也可以自定义消息模板
通过添加操作,您可以使用应用内消息将用户定向到某个网站或应用中的特定界面
Snip20230915_32.png