灯塔帮助
  • 产品概述
  • 注册并开始
    • 注册账号及开通服务
    • 创建应用
    • 账号与授权
  • SDK获取
    • SDK for Android
    • SDK for iOS
    • SDK for HTML5
    • SDK for 小程序
    • SDK for Linux
  • SDK文档
    • SDK集成指南
      • Android 更新日志
      • Android集成指南
      • iOS 更新日志
      • iOS/Mac集成指南
      • HTML5集成指南
      • 小程序集成指南
      • Hybrid集成指南
      • Linux集成指南
      • SDK实时联调
    • 数据格式及限制
    • 关于实时上报和非实时上报
  • 数据报表
    • 常用操作
    • 实时分析-实时新增活跃
    • 数据概览-应用概况
    • 用户分析-用户增长
    • 用户分析-用户设备
    • 用户分析-用户留存
    • 用户分析-用户结构
    • 用户分析-用户画像
    • 来源分析-渠道效果
    • 来源分析-渠道拉新质量
    • 来源分析-渠道广告监测
    • 行为分析-事件触发
    • 行为分析-页面访问
    • 行为分析-页面访问路径
    • 实时分析-实时新增活跃
    • 小程序-入口场景分析
    • 小程序-二维码渠道分析
  • 数据定制
    • 定制报表
    • 定制看板
    • 敏捷分析
  • 指标定义
  • FAQ
    • 关于SDK
    • 关于灯塔平台
Powered by GitBook
On this page
  • 一、获取SDK
  • 二、集成SDK
  • 1、引入头文件
  • 2、初始化SDK
  • 3、事件上报
  • 三、基本接口

Was this helpful?

  1. SDK文档
  2. SDK集成指南

Linux集成指南

PreviousHybrid集成指南NextSDK实时联调

Last updated 6 years ago

Was this helpful?

一、获取SDK

登录灯塔首页,创建应用,填入基本应用信息,即可获取独一无二的AppKey,并下载SDK;

二、集成SDK

压缩文件分三个部分内容:

lib32/libbeacon.so
lib64/libbeacon.so
include/

其中lib32/libbeacon.so在32位linux系统上使用;lib64/libbeacon.so在64位linux系统上使用;include目录内为需要的头文件。

如何集成使用?

1、引入头文件

#include "include/beacon.h"

2、初始化SDK

// 设置进程名
SetProcessName(argv[0]);
// 设置产品名+产品版本
SetProductInfo("smart_sound_box", "v1.0.0");
// 设置设备唯一标识(用于统计日活)
SetDeviceID("xxxxxxxx");
// 传入appkey+渠道号初始化sdk
InitSDK("0M000A1RC72MXXRH", "1001");

参考上面代码,根据自己设备信息传入对应参数值。

3、事件上报

// 同步上报(无附加参数)
ReportEvent("test_01");
// 异步上报(有附加参数)
Map* param = NEW_MAP_STRING;
AddParam(param, "key1", "Value1");
AddParam(param, "key2","Value2");
AsynReportEventWithParams("asyn_test_02");
DELETE_MAP_STRING(param);

提供两中上报方式:同步上报和异步上报。

两种上报方式都支持是否携带附加参数,附加参数是一个Map类型,通过AddParam函数添加key/value。

三、基本接口

  • 设置日志是否打开和实时联调开关接口

void SetLogable(BOOL enable_local_log, BOOL enable_realtime_test)

enable_local_log :TRUE表示打开本地log日志

enable_realtime_test :TRUE表示使用实时联调来验证日志上报情况

可以在web管理页面的“数据查询”->“接入实时联调”中实时查看上报事件日志

  • 设置本地日志打印等级

void SetLogLevel(unsigned int level)

level :主要等级有B_DEBUG/B_INFO/B_WARN/B_ERROR/B_ALARM/B_FATAL,默认是B_DEBUG。如果等级设置为B_ERROR时则本地log日志只会展示B_ERROR/B_ALARM/B_FATAL三种类型日志

  • 设置智能设备的系统和机型

void SetDeviceInfo(const char* os_version, const char* model)

os_version :智能设备的操作系统版本

model :设备的型号,类似移动端品牌如”Mix2”

  • 设置产品名和产品版本

void SetProductInfo(const char* product_name, const char* product_version)

product_name :产品名称,类似移动端的App名

product_version :产品版本号

  • 设置当前设备的唯一号(必须要填写否则无法统计日活等数据)

void SetDeviceID(const char* device_id)

device_id : 唯一表示该智能设备的号码

  • 设置用户ID

void SetUserID(const char* user_id)

user_id :产品自己的用户体系下用户ID,如登录的用户QQ号等

  • 设置应用所在进程的进程名

void SetProcessName(const char* argv0)

argv0 :进程名

  • 初始化SDK(必须调用)

void InitSDK(const char* app_key, const char* channel)

app_key :灯塔上注册产品时产生的AppKey

channel :渠道号

  • 退出SDK(释放SDK线程池所占资源)

void ExitSDK()
  • 同步上报事件

int ReportEvent(const char* event_name)
int ReportEventWithParams(const char* event_name, Map* params)

event_name :事件名

params :事件附加参数(key/value形式添加附加参数)

  • 异步上报事件

int AsynReportEvent(const char* event_name)
int AsynReportEventWithParams(const char* event_name, Map* params)

event_name :事件名

params :事件附加参数(key/value形式添加附加参数)

还有疑问?欢迎反馈给tbeacon@tencent.com,会有专人为您服务。

点此下载SDK for Linux