目前上线SDK调试站: https://dev-sdk.meteorcat.me/page/app/view/dq60xls02i
最近接触到公司游戏聚合的项目, 突然想结合之前公司开发经验来考虑自己应该怎么从而完善设计, 从而方便其他人借鉴处理
首先这里介绍下具体的字段参考表, 需要明确规则: 传递字段必须有默认值, 不允许为 null 值
类型
默认值
取值范围
说明
string
‘’
-
字符串类型, 默认只允许为空字符串, 一般从数据库性能考虑建议字符串控制在 varchar(255) 之中
boolean
0 / 1
-
布尔类型, 一般来说建议采用数值1和0来区分(数据库采用 tinyint(1) 类型), 主要部分数据清洗或者转化成字符串, 也就是 true 和 "true" 的问题
number
0
int64
数值类型, 数值方面建议安装 int64 范围取值(数据库采用 bigint 类型), 部分开发语言最大值需要特定 BigInt 类型
time
0
int64
时间戳类型, 推荐采用 bigint 类型保存 ...
这部分是当时面试的时候疑似遇到骗技术方案的公司提出的, 虽然那个面试体验很糟糕只想赶快结束话题避免和这种人浪费时间
不过在 Google Ads 这部分确实都快忘记了, 所以后面感觉还是有必要总结下避免后面真的要用的时候忘记怎么开发
目前 Google Ads 是支持 个人(Individual) 和 企业(Business) 两种身份做广告投放, 核心的差别就在于广告类型和权重较低
注意: 一旦锁定了身份是无法做中途切换, 所以一般推荐每个投放账号应该单独创建分开管理(账号违规被封禁避免影响其他)
这里将从 个人 身份出发, 通过推广目前自己的网站页面, 去讲解怎么一步步实现整体的广告数据归因链路功能
官方文档: https://support.google.com/google-ads/answer/6146252
数据归因主要监控以下数据
clicks: 点击次数, google ads 会为每个用户创建唯一标识, 记录唯一用户的广告点击次数
conversion rate: 广告转化率, 转化次数 ÷ 广告带来访问会话数, 衡量广告流量质量
cost per ...
这里是偏小众的发行渠道编译注入方式, 而且主要针对还是桌面平台, 这部分仅作为参考(毕竟太小众了), 目前上架桌面端常见就是以下平台
Windows: 目前比较广的桌面平台, 微软平台基本上目前市场占用率最高, 大部分情况对接该平台即可
Unix: 这部分比较多的就是 Apple 设备平台, 读取程序目录文件存在权限限制(需要注意这类情况)
Linux: Linux 更多应用在服务端上, 但是桌面端也有部分受众在使用
这些平台不可避免会出现大量 碎片化 问题, 也就是采用编程语言/编译器/系统权限/跨平台技术等都没有统一规划
所以对于桌面端不推荐采用任意编程语言类库处理, 而是将需要编译注入渠道信息处理成二进制下的签名加密文件
这里推荐的签名 JSON 格式如下
lines12345678910{ // 签名文件自我的哈希数据 "hash": "", // 应用唯一标识 "app_ident": "", // 渠道信息 "channel_ident": &quo ...
如果接触过 游戏联运 和 广告变现 基本上都对 渠道分包 有一定了解, 主要核心就是应用反编译
本质上就是需要给游戏应用提供或者上传一份应用证书签名, 然后方便后台界面触发解包反编译注入对应参数之后再打包成新的渠道包
这里有以下概念需要了解
母包: 开发商输出无渠道参数的原始未签名/测试签名游戏安装包, 也就是等待被解包并重新打包
签名文件
Android: 渠道方提供正式签名 keystore(.jks/.keystore)/别名/密钥密码; 部分自研渠道使用自有统一证书
iOS: 渠道开发者证书/描述文件/推送证书
之所以需要证书, 是因为应用上架/渠道校验/支付唤起/广告 SDK 校验都强制校验签名, 母包分包后必须用新的渠道证书重新签名
反编译/解包: 利用 apktool 或者解压方式修改内部核心配置文件, 将所需参数注入进去
这部分其实更适合有经验客户端来讲解, 但是有时候部分服务端可以简单处理下自定义集成 SDK 库, 从而实现类似效果
环境搭建
java: 目前直接找到 Java11 版本即可, 版本建议 Google 最低要求并也不会太过全新
...
这篇专题也是总结工作这么多年的对于广告投放业务的积累, 也是方便后来的开发人员做借鉴处理
首选需要明确目前国内提到的 广告 业务实际上有两种概念(很多人都被混淆起来)
Marketing(投放买量): 广点通/巨量等广告平台业务, 主要负责投放平台的广告获取点击和流量转化, 本质是买量获客
Advertising(广告变现): 硬核渠道等广告展示业务, 利用应用内部的广告位展示获取对应收入, 本质是通过曝光流量变现
维度
投放买量
广告变现
资金流向
作为公司主体(我们)付费给广告平台(广点通/巨量)
不同平台下的广告主付费, 公司主体(我们)拉取点击转化用户来赚取广告分成
服务对象
拉新/促活/付费转化
商业化的流量变现
核心指标
消耗/曝光/点击/CTR/CPC/激活成本/ROI
广告填充率/eCPM/广告展示量/广告收入/LTV
对接对象
广告投放平台API
广告聚合/渠道SDK
参考平台
广点通/巨量/GoogleAds等广告平台
Vivo/Huawei/XiaoMi等应用商店(硬核渠道)
所以在很多情况下, 需要结合情况分清楚提 ...
排除部分国内云服务器特立独行的设置, 其实目前部分厂商 CDN 已经提供标准化的接口
S3(Simple Storage Service) 标准: 亚马逊 AWS 定义的对象存储标准协议/API 规范, 现已成为行业通用对象存储标准
一般如果要做下载内容分发的话, 建议询问所在云服务器厂商时候提供这部分 对象存储 业务, 将分发的文件上传来提供全球下载CDN加速
S3 标准当中有以下概念
Bucket(桶): 顶级存储对象单位(全局唯一命名), 相当于创建独立的根目录等待资源放置, 用于归类(images,files,apk类似归类)
Object(对象): 存储最小单元, 即上传的分发文件, 比如你提交的静态图片/文件/压缩包等
CORS(跨域设置): 标准跨域访问规则, 控制前端网页能否直接通过 CDN 域名拉取桶内资源, 如果是不符合的域名就不允许拉取资源
Lifecycle(生命周期): 基于对象上传时间触发自动操作, 可以给资源设置 过期清理/冷热切换/版本控制 来保证资源可控
得益于标准化 S3 接口, 切换不同厂商CDN/对象存储时, 仅需同步桶内 ...
这部分是作为 PHP 做集合 bootstrap5/bootstrap-table 做服务端渲染的功能
如果有能力的话建议赞助 bootstrap-table 项目, 强力推荐的 bootstrap 扩展库
项目地址: https://github.com/wenzhixin/bootstrap-table
bootstrap-table 按照官方文档引入方式如下
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788<!doctype html><html lang="en"><head> <meta charset="UTF-8"> <meta name="viewport" ...
目前大部分数据库表都有涉及到分表功能, 而比较常见的就是取模分表法, 但是手动每次修改表就很麻烦
比如同步增加/删除/修改一个字段都要从 0~9 的手动调整修改过去, 如果一不小心误操作后果也很严重
所以推荐采用自动化的存储进程来执行这部分功能, 首先是示范下怎么创建表
12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879-- 创建模板表, 这里假设要创建这样模板表-- 这张表不要做任何的数据操作, 只是作为模板即可create table if not exists nova_user_t( # 通用信息 uid bigint not null comment '数据主键, 用于标识递增(实际上会从 Redis 之类以游戏 APP_ID 分组来全局递增)', app_id ...
这里主要是从游戏发行方面来说明, 讲述对于游戏来说发行应该做到的事情
广告投放营销的专门词汇为 Marketing, 目前主要广告发行系统目前主流有以下方向
广点通: 游戏厂商最常用的广告平台, 背靠腾讯分发效率最高
巨量: 字节跳动旗下的广告营销平台, 热度出圈和普及率相对较高
快手: 快手相比以前少了部分流量, 但依旧还是算国内日活比较高的平台
GoogleAds: 谷歌ads基本上就是出海首选的广告平台, 主要是入口多
FacebookAds: 早年我接触的比较多海外营销平台, 目前营销算法是我见过最完善合理的(以前的流量池推广也很精准)
这里没有涉及到亚马逊和阿里这部分电商营销平台, 因为电商营销平台接触不多
还有其他类似哔哩哔哩和百度这些大大小小的营销投放平台, 这些都不做过多赘述, 这里需要普及具体概念
广告主: 广告投放的付费方与需求发起方(拥有过自身产品准备发起广告投入转化)
推广者: 拥有流量资源的平台方, 也就是具体的广告平台(广点通/巨量等)
渠道商: 广告主与推广者的中间服务商(也有叫直客和代理商的说法), 负责创建上 ...
Window 安装
这里主要针对 Window 平台, 对于 Linux 平台其实只需要安装官方 Rustup 设置即可
主要原因是不想安装 VisualStudio 太多依赖
1234567# 主要最小化安装需要 CPP 编译器即可, 具体地址如下https://visualstudio.microsoft.com/visual-cpp-build-tools/# 点击 exe 之后需要选择最小化的 CPP 编译工具# 1. 选择 `单个组件`# 2. 只勾选以下组件# - MSVC v{最新版本} - VS{最新版本} C++ x64/x86 生成工具(我目前用的是 v143, v14.44-17.14版本)# - Windows 10/11 SDK(对应你电脑系统版本, 目前用的 Win11 10.0.2.28000)
完成之后就是安装 window 的依赖, 这里建议命令行全局安装:
123456789101112131415# 这里我习惯放置于 C:\rust 之中, 建议先创建好目录并且在管理员模式下窗口执行# 分配的目录如下: ...







