澳门新葡亰平台官网-澳门新葡亰平台游戏app 新葡亰通讯设备 微信移动端数据库组件WCDB即将开源,开发者提供全球范围实时音视频通信服务的云服务商

微信移动端数据库组件WCDB即将开源,开发者提供全球范围实时音视频通信服务的云服务商

摘要微信开发团队宣布将微信自用的移动端数据库组件 WCDB(WeChat
Database)正式对外开源。前言微信团队两周前预告即将开源WCDB后(详见当时资讯《[资讯]
微信移动端数据库组件WCDB即将开源!》),于2017年06月09日正式开源了微信自用的移动端数据库组件
WCDB(WeChat
Database)。WCDB简介WCDB是一个高效、完整、易用的移动数据库框架,基于
SQLCipher,支持 iOS、macOS 和
Android。微信高级工程师何俊伟表示:“开源只是故事的开始,我们仍会持续对
WCDB
做改进,包括更易用的接口、更好的性能、更高的可靠性。这些改进最终也会原封不动地在微信使用。”WCDB(WeChatDataBase)是微信官方的移动端数据库组件,致力于提供一个高效、易用、完整的移动端存储方案。它包含三个模块:WCDB-iOS/Mac;WCDB-Android;数据库损坏修复工具WCDBRepair。WCDB的开发背景对于iOS开发者来说,数据库的技术选型一直是个令人头痛的问题。由于Apple提供的CoreData框架差强人意,使得开发者们纷纷将目光投向开源社区,寻找更好的存储方案。
对于微信也是如此。数据库是微信内最基础的组件之一,消息收发、联系人、朋友圈等等业务都离不开数据库的支持。为了满足需求,我们也对现有方案做了对比研究。目前移动端数据库方案按其实现可分为两类:关系型数据库,代表有CoreData、FMDB等。CoreData
它是苹果内建框架,和Xcode深度结合,可以很方便进行ORM;但其上手学习成本较高,不容易掌握。稳定性也堪忧,很容易crash;多线程的支持也比较鸡肋。FMDB
它基于SQLite封装,对于有SQLite和ObjC基础的开发者来说,简单易懂,可以直接上手;而缺点也正是在此,FMDB只是将SQLite的C接口封装成了ObjC接口,没有做太多别的优化,即所谓的胶水代码(Glue

摘要XMPP开源IM客户端Spark在2017新年初发布了2.8.3版,该版本是个次要更新版,修复了bug并新增了若干新特性。前言XMPP开源IM客户端Spark在2017新年初发布了2.8.3版,该版本是个次要更新版,修复了bug并新增了若干新特性。Spark是一个开源、跨平台IM客户端(支持Linux、windows、Mac
OS
X平台)。它的特性支持集组聊天,电话集成和强大安全性能。如果企业内部部署IM使用Openfire+Spark是最佳的组合。官方的说明原文The
Ignite Realtime community has just released Spark 2.8.3 and it can be
downloaded from theIgnite Realtime: DownloadsThis is a regular update. A
few issues have been fixed. Bundled Java updated to the latest version.
There is a new menu to view history of sent broadcasts and an option to
login anonymously.For a complete list of changes please check theSpark
ChangelogWe encourage developers to get involved with Spark project by
providing feedback and patches in the forums or submitting pull requests
toGitHub – igniterealtime/Spark: Cross-platform real-time collaboration
client optimized for business and organizations.Here is the list of
contributors to this release (besides myself):Michael – fixed Advanced
settings not being saved without opening that menu, always on top issue
and changed behavior when Auto Login is hiddenAlexander198961
(Aleksander Kovtunenko) · GitHub – added a feature to save broadcasts
history and access it via a new menu optionJerry – added support for
anonymous loginGuus der Kinderen – fixed issue when joining a room with
a duplicate nickname and improved build time by removing unneeded code
style checksDaryl Herzmann – helped to clean up the code further
(removing legacy CVS keywords)speedy – fixed issues with password not
being deleted when it should and added log file rotating by
sizeAtalanttore (Ettore Atalan) · GitHub – updated German
translation(官方原文:
版更新内容Bug[SPARK-1844] – Not saving settings without opening
Advanced menu once[SPARK-1848] – Setting “Chat Window Always on Top”
also enables “Main Window Always on Top” behavior[SPARK-1853] – NPE
when not setting an avatar[SPARK-1854] – Joining a MUC with a
duplicate nickname results in strange behavior.[SPARK-1855] –
ContactList should not pop up when logging off[SPARK-1858] – Password
not removed from spark.properties when “Save Password” option is
disabled[SPARK-1863] – Resets initially empty values in Advanced menu
when logging outNew Feature[SPARK-1825] – Add an option to see a
history of broadcasts[SPARK-1852] – Add anonymous SASL login
supportTask[SPARK-1821] – Update bundled JRE with the latest
version[SPARK-1856] – Remove unused static analyzers[SPARK-1857] –
Remove legacy CVS keywords[SPARK-1862] – Remove obsolete information
from Readme and update linksImprovement[SPARK-1847] – Remove Log out
menu when Auto Login and Save Password are disabled[SPARK-1849] – Make
logs rotate based on size or time[SPARK-1850] – Shouldn’t save
password when SSO is being used[SPARK-1860] – Implement group chat
duplicate name deconfliction similar to 2.7.7[SPARK-1864] – Add
translations to MUC dialogs[SPARK-1867] – Update German
translation更多版本更新记录,请参见:

摘要声网SDK
1.11版于2017年06月15日发布,增加了若干新功能和一些关键性优化。声网
Agora.io 是为 App
开发者提供全球范围实时音视频通信服务的云服务商。简介以下是来自声网官方网站的介绍:声网
Agora.io 是首家为 App
开发者提供全球范围实时音视频通信服务的服务商,在全球部署了近 100
个数据中心,搭建 SD-RTN™(Software Defined Real Time
Network)这个专为「实时」所设计的虚拟通信网,来极大优化全球范围内的实时传输。声网Agora.io
为开发者提供有质量保证 QoE 的实时云服务。声网 Agora.io 于 2014
年成立,隶属于上海兆言网络科技有限公司,总部位于硅谷,研发中心位于上海。团队
90% 均为全球技术工程师,包括苹果Apple 视频算法架构师、Vidyo
产品负责人、Polycom 工程总监等,平均行业经验 10
年以上,团队有年服务数千亿分钟音视频通话经验和千万级并发的互联网直播经验。更新内容新功能:全平台
(Web 除外): 新增跨直播间连麦功能。详见跨直播间连麦。全平台 (Web 除外):
新增播放音频时拖动进度条的功能。详见各平台新增的setAudioMixingPosition()API
方法。全平台 (Web 除外): 提供一套直播频道 Restful API
管理直播。详见直播频道 RESTful API。全平台 (Web 除外):
直播场景下,新增一个功能:
主播可以开启镜像(即可以看到自己的图像)。如有需要,联系sales@agora.io。全平台(Web
除外): 新增一个录制方案,支持录制通信和直播内容。详见文档:录制 SDK
发版说明。Android/iOS:
升级了美颜库。之前引用了美颜库的用户在升级时必须配合最新版美颜包一起使用,避免出现崩溃。详见Agora
Image Enhancement 发版说明 Beta。改进:Windows:
改进了由于特定防火墙引起的 SDK 初始化失败现象Windows:
增加了一个新方案极大降低了部分机器上摄像头起不来的概率全平台(Web 除外):
提升了画质和视频流畅度修复问题:Windows:
修复了偶现的视频设备名称无法枚举的问题Mac:
修复了部分摄像头热插拔相关的问题iOS:
修复了语音通话过程中,通过被电话打断后,听不到声音的问题iOS:
修复了直播里连麦开始时, UI 卡住一两秒的问题全平台(Web 除外) :
修复了部分机型上偶现的崩溃问题声网链接下载地址:

Code)。使用过程需要用大量的代码拼接SQL、拼装Object,并不方便。key-value数据库,代表有Realm、LevelDB、RocksDB等。Realm因其在各平台封装、优化的优势,比较受移动开发者的欢迎。对于iOS开发者,key-value的实现直接易懂,可以像使用NSDictionary一样使用Realm。并且ORM彻底,省去了拼装Object的过程。但其对代码侵入性很强,Realm要求类继承RLMObject的基类。这对于单继承的ObjC,意味着不能再继承其他自定义的子类。同时,key-value数据库对较为复杂的查询场景也比较无力。可见,各个方案都有其独特的优势及劣势,没有最好的,只有最适合的。而对于微信来说,我们所期望的数据库应满足:高效;增删改查的高效是数据库最基本的要求。除此之外,我们还希望能够支持多个线程高并发地操作数据库,以应对微信频繁收发消息的场景。易用;这是微信开源的原则,也是WCDB的原则。SQLite本不是一个易用的组件:为了完成一个查询,往往我们需要写很多拼接字符串、组装Object的胶水代码。这些代码冗长繁杂,而且容易出错,我们希望组件能统一完成这些任务。完整;数据库操作是一个复杂的场景,我们希望数据库组件能完整覆盖各种场景。包括数据库损坏、监控统计、复杂的查询、反注入等。显然,上述各个方案都不能完全满足微信的需求。于是,我们造了这个“轮子”

WCDB-iOS/Mac。WCDB通过ORM和WINQ,体现了其易用性上的优势,使得数据库操作不再繁杂。同时,通过链式调用,开发者也能够方便地获取数据库操作的耗时等性能信息。而高级用法则扩展了WCDB的功能和用法。详情请见:《微信移动端数据库组件WCDB系列(一)-iOS基础篇》WCDB源码下载WCDB源码托管地址:

标签:, , , , , , , , , ,

相关文章

发表评论

电子邮件地址不会被公开。 必填项已用*标注

网站地图xml地图