Flutter互动营销插件engagespot_sdk的使用

发布于 1周前 作者 phonegap100 来自 Flutter

Flutter互动营销插件 engagespot_sdk 的使用

Engagespot SDK for Flutter 提供了将 Engagespot 服务集成到你的 Flutter 应用程序中的功能。通过这个 SDK,你可以处理通知、标记通知为已读、注册 Firebase Cloud Messaging (FCM) 令牌,并监听实时通知事件。

安装

要在你的 Flutter 项目中使用 Engagespot SDK,请按照以下步骤操作:

1. 添加依赖项

pubspec.yaml 文件中添加 engagespot_sdk 依赖:

dependencies:
  engagespot_sdk: ^0.0.4

2. 安装包

在终端中运行以下命令来安装包:

flutter pub get

使用

初始化 SDK

在使用 Engagespot SDK 的任何功能之前,你需要使用 API 密钥和密钥初始化它。可以通过调用 initSdk 方法来完成:

Engagespot.initSdk(
  apiKey: 'your_api_key',
  isDebug: true, // 设置为 true 以启用调试模式
);

登录用户

使用 loginUser 方法登录用户:

Engagespot.loginUser(userId: 'user_id');

标记单个通知为已读

使用 markNotificationAsRead 方法将通知标记为已读:

bool isSuccess = await Engagespot.markNotificationAsRead(notificationID: 'notificationID');

if (isSuccess) {
  print("Notification marked as read successfully.");
} else {
  print("Failed to mark notification as read.");
}

标记所有通知为已读

使用 markAllAsRead 方法将所有通知标记为已读:

Engagespot.markAllAsRead();

删除通知

使用 deleteNotification 方法删除通知:

Engagespot.deleteNotification(notificationID: "notificationID");

删除所有通知

使用 clearAllNotification 方法删除所有通知:

Engagespot.clearAllNotification();

注册 FCM 令牌

使用 registerFCM 方法注册 FCM 令牌:

Engagespot.registerFCM('your_fcm_token');

监听通知事件

使用 listenMessage 方法监听实时通知事件。提供回调函数来处理传入的消息以及当所有通知都被标记为已读时的事件:

Engagespot.listenMessage(
  onMessage: (EsMessage es) {
    // 处理传入的消息
  }
);

获取通知

使用 getNotifications 方法检索通知。这将返回一个包含未读通知计数和通知列表的 NotificationSet 对象:

NotificationSet notificationSet = await Engagespot.getNotifications();
int unreadCount = notificationSet.unReadCount;
List<EsMessage> notifications = notificationSet.NotificationMessage;

示例 Demo

以下是一个完整的示例 Demo,展示了如何在 Flutter 应用中使用 Engagespot SDK:

import 'package:engagespot_sdk/engagespot_sdk.dart';
import 'package:flutter/material.dart';

void main() {
  WidgetsFlutterBinding.ensureInitialized();
  
  // 初始化 SDK
  Engagespot.initSdk(
    apiKey: "your_api_key",
    isDebug: true,
  );
  
  // 登录用户
  Engagespot.loginUser(userId: "user_id");

  runApp(const MainApp());
}

class MainApp extends StatelessWidget {
  const MainApp({super.key});

  [@override](/user/override)
  Widget build(BuildContext context) {
    return MaterialApp(
      home: Scaffold(
        appBar: AppBar(
          title: const Text('Engagespot Demo'),
        ),
        body: Center(
          child: Column(
            mainAxisAlignment: MainAxisAlignment.center,
            children: [
              ElevatedButton(
                onPressed: () async {
                  // 获取通知
                  NotificationSet notificationSet = await Engagespot.getNotifications();
                  int unreadCount = notificationSet.unReadCount;
                  List<EsMessage> notifications = notificationSet.NotificationMessage;

                  print("Unread Count: $unreadCount");
                  print("Notifications: $notifications");
                },
                child: const Text('Get Notifications'),
              ),
              ElevatedButton(
                onPressed: () async {
                  // 标记单个通知为已读
                  bool isSuccess = await Engagespot.markNotificationAsRead(notificationID: 'notificationID');

                  if (isSuccess) {
                    print("Notification marked as read successfully.");
                  } else {
                    print("Failed to mark notification as read.");
                  }
                },
                child: const Text('Mark Notification as Read'),
              ),
            ],
          ),
        ),
      ),
    );
  }
}

更多关于Flutter互动营销插件engagespot_sdk的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html

1 回复

更多关于Flutter互动营销插件engagespot_sdk的使用的实战系列教程也可以访问 https://www.itying.com/category-92-b0.html


当然,下面是一个关于如何在Flutter项目中集成和使用engagespot_sdk插件的示例代码。这个插件通常用于实现互动营销功能,比如推送通知、个性化消息等。

步骤 1: 添加依赖

首先,你需要在你的pubspec.yaml文件中添加engagespot_sdk的依赖。

dependencies:
  flutter:
    sdk: flutter
  engagespot_sdk: ^最新版本号  # 请替换为实际可用的最新版本号

步骤 2: 安装依赖

在终端中运行以下命令来安装依赖:

flutter pub get

步骤 3: 初始化插件

在你的Flutter应用的入口文件(通常是main.dart)中,你需要初始化engagespot_sdk插件。

import 'package:flutter/material.dart';
import 'package:engagespot_sdk/engagespot_sdk.dart';

void main() {
  runApp(MyApp());
  // 初始化EngageSpot SDK
  EngageSpot.initialize(
    apiKey: '你的API_KEY', // 替换为你的EngageSpot API密钥
    userId: '用户ID',      // 可选,如果有用户ID的话
  );
}

class MyApp extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return MaterialApp(
      title: 'Flutter Demo',
      theme: ThemeData(
        primarySwatch: Colors.blue,
      ),
      home: MyHomePage(),
    );
  }
}

class MyHomePage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Flutter EngageSpot SDK Demo'),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            Text(
              '你可以在这里添加你的应用内容',
            ),
          ],
        ),
      ),
    );
  }
}

步骤 4: 使用EngageSpot SDK的功能

你可以根据需要调用EngageSpot SDK提供的功能,比如显示推送通知、获取用户信息等。以下是一个简单的示例,展示如何显示一个推送通知。

// 假设这是一个按钮点击事件处理函数
void showNotification() {
  // 构造推送通知内容
  var notification = {
    "title": "这是标题",
    "body": "这是通知内容",
    // 其他可选参数
  };

  // 显示推送通知
  EngageSpot.showNotification(notification).then((result) {
    if (result) {
      print("通知发送成功");
    } else {
      print("通知发送失败");
    }
  }).catchError((error) {
    print("发送通知时发生错误: $error");
  });
}

// 在你的UI中添加一个按钮来触发通知
class MyHomePage extends StatelessWidget {
  @override
  Widget build(BuildContext context) {
    return Scaffold(
      appBar: AppBar(
        title: Text('Flutter EngageSpot SDK Demo'),
      ),
      body: Center(
        child: Column(
          mainAxisAlignment: MainAxisAlignment.center,
          children: <Widget>[
            Text(
              '你可以在这里添加你的应用内容',
            ),
            SizedBox(height: 20),
            ElevatedButton(
              onPressed: showNotification,
              child: Text('显示通知'),
            ),
          ],
        ),
      ),
    );
  }
}

注意事项

  1. API Key: 确保你已经从EngageSpot平台获取了有效的API Key,并在代码中正确配置。
  2. 用户隐私: 在处理用户信息和推送通知时,务必遵守相关的隐私政策和法律法规。
  3. 错误处理: 在实际项目中,应该添加更多的错误处理逻辑,以确保应用的稳定性和用户体验。

通过上述步骤,你应该能够在Flutter项目中成功集成并使用engagespot_sdk插件来实现互动营销功能。

回到顶部