为了便于开发者实时掌握用户上下线状态,我们在即时通讯的 hook 函数中增加了客户端上下线的通知机制,详情可以参考文档:万能的 hook 机制。
目前 LeanCloud 即时通讯支持三类服务端 hook 函数:
客户端 hook。在客户端上下线的时候会触发调用,以保证成员的在线状态与第三方服务器实时同步;
对话 hook。在对话创建和成员变动等更改性操作前后,都可以触发调用,以便业务方进行额外的处理(如对话权限控制等);
消息 hook。在消息投递的不同阶段分别触发,可以借此实现自定义的禁言、敏感词过滤、消息实时备份等需求,给予业务方最大的灵活度。
完全开放的架构,支持强大的业务扩展能力,是 LeanCloud 即时通讯服务的特色之一,我们会努力为大家打造最好用的「瑞士军刀」。
应部分用户的要求,我们在控制台加入了账户注销的功能。登录 LeanCloud 控制台,在「账号设置」页面内可以看到「注销账号」的菜单。由于账号注销会不可逆转地连带删除所有应用(包括数据)和协作团队,请大家谨慎操作。
为了确保能长期稳定为开发者提供服务,按照相关法律法规的要求,我们在 6 月底向所有开发者发出了为结构化数据存储、文件和云引擎服务设置自定义域名的通知,同时也在应用控制台增加了自助绑定域名的入口,以及在文档中增加了操作说明。
从 10 月份起,LeanCloud 中国版将会开始逐步停止为不绑定自有域名的应用提供服务,希望您能从业务长期稳定发展的角度出发,协助我们尽快完成这一变更。
熟练使用命令行是一种常常被忽视,或被认为难以掌握的技能,但实际上,它会提高你作为工程师的灵活性以及生产力。
本文简单介绍了备案的基本流程和注意事项,供开发者大概了解有关备案的一些基本知识。
例如绑定的自定义 API 域名是: xxx.example.com
,则需要在代码中这样设置:
.net SDK
AVClient.Initialize("appId", "appKey", "https://xxx.example.com");
swift SDK
LCApplication.default.set(
id: "appId",
key: "appKey ",
serverURL: "https://xxx.example.com"
)
Java SDK
AVOSCloud.initialize(this, "appId", "appKey", "https://xxx.example.com");
JavaScript SDK
AV.init({
appId: "appId",
appKey: "appKey",
serverURLs: "https://xxx.example.com",
});
绑定云引擎域名、API 域名需要在 LeanCloud 接入备案,只绑定文件域名不需要再接入备案。
接入备案请登录控制台,进入 应用控制台 > 账号设置 > 域名备案,按照步骤填写资料即可。
Objective-C SDK v11.6.7 及以上版本,按如下方式上传 device token:
// 二进制数据(device token)转化为正确的十六进制字符串,
// 同时配置苹果开发者账号的 Team ID
[installation setDeviceTokenFromData:deviceToken teamId:@"Apple Developer Team ID"];
// 上传有效的十六进制字符串和 Team ID
[installation saveInBackground];
旧版本的 Objective-C SDK(<= 11.6.6),按如下方式上传 device token:
NSUInteger dataLength = deviceToken.length;
if (dataLength > 0) {
const unsigned char *dataBuffer = deviceToken.bytes;
NSMutableString *hexString = [NSMutableString stringWithCapacity:(dataLength * 2)];
for (int i = 0; i < dataLength; ++i) {
[hexString appendFormat:@"%02.2hhx", dataBuffer[i]];
}
[installation setDeviceToken:[hexString copy]];
[installation saveInBackground];
}
在 iOS 13 环境下无法收到推送问题的详细说明请参考:社区新闻公告。