首页
学习
活动
专区
工具
TVP
发布

腾讯Bugly的专栏

专栏成员
268
文章
626966
阅读量
265
订阅数
微信 WCDB 进化之路 - 开源与开始
本文来自:微信移动客户端开发团队公众号(WeMobileDev) 我们来了 ---- 今天,WCDB(WeChat Database)通过了公司的最终审核,作为腾讯微信的一个开源组件分享给大家。 从WCDB初建,到不断摸索、优化,再到整理代码、文档,最终看着她在 GitHub 上静静等待着“Make Public”被按下,心情犹如看着女儿出嫁的父亲。趁此机会,正好回顾一下 WCDB 这个“微信的数据库”的成长,分享我们的心路历程,也希望以此让大家更了解WCDB。 各自探索 ---- 最早期的微信,各个平台
腾讯Bugly
2023-04-23
1.6K0
微信移动端数据库组件WCDB系列(二) — 数据库修复三板斧
本文来自:微信移动客户端开发团队公众号(WeMobileDev) 前言 长久以来SQLite DB都有损坏问题,从Android、iOS等移动系统,到Windows、Linux 等桌面系统都会出现。由于微信所有消息都保存在DB,服务端不保留备份,一旦损坏将导致用户消息被清空,显然不能接受。 我们即将开源的移动数据库组件 WCDB (WeChat Database),致力于解决 DB 损坏导致数据丢失的问题。 之前一篇文章《微信 SQLite 数据库修复实践》介绍了微信对SQLite数据库修复以及降低损坏率的
腾讯Bugly
2023-04-23
1.7K0
Android性能优化典范之多线程篇
本文涉及的内容有:多线程并发的性能问题,介绍了 AsyncTask,HandlerThread,IntentService 与 ThreadPool 分别适合的使用场景以及各自的使用注意事项,这是一篇了解 Android 多线程编程不可多得的基础文章,清楚的了解这些 Android 系统提供的多线程基础组件之间的差异以及优缺点,才能够在项目实战中做出最恰当的选择。 1. Threading Performance 在程序开发的实践当中,为了让程序表现得更加流畅,我们肯定会需要使用到多线程来提升程序的并发执行
腾讯Bugly
2023-04-23
1.3K1
微信 Android 热补丁实践演进之路
继插件化后,热补丁技术在2015年开始爆发,目前已经是非常热门的 Android 开发技术。其中比较著名的有淘宝的 Dexposed、支付宝的 AndFix 以及 QZone 的超级热补丁方案。微信对热补丁技术的研究并不算早,大约开始于2015年6月。经过研究与尝试现有的各个方案,我们发现它们都有着自身的一些局限性。微信最终采用不同于它们的技术方案,走出了自己的实践演进之路。 另外一方面,技术应当只是热补丁方案中的一环。随着对热补丁的多次尝试与应用,微信建立起自身的流程规范,同时也不断的尝试拓展它的应用场景
腾讯Bugly
2023-04-17
3120
当dex分包遇上NoClassDefFoundError&ClassNotFoundException
简介 本文记录的是:国庆节前夕,解决Crash率高达9.08%问题成功避免加班拿3倍工资的故事 PS: 除了在时间上两者相遇外,本文中提到的两个(top1&top2)crash问题与dex分包并没有关系 ---- 初见问题(2015-09-25) 2015-09-25:产品灰度第一天灰度结果:Crash率9.08%,主要是如下两个Crash所导致 TOP1: java.lang.NoClassDefFoundError 堆栈还原: java.lang.NoClassDefFoundError: com/ex
腾讯Bugly
2023-04-02
6280
安装包立减1M--微信Android资源混淆打包工具
上一篇文章我们讲述了Android减少安装包体积的一些tips,本文主要对前文提到的资源混淆做一个简单的分析。微信中的资源混淆工具主要为了混淆资源ID长度(例如将res/drawable/welcome.png混淆为r/s/a.png),同时利用7z深度压缩,大大减少了安装包体积,同时也增加了逼格,提升了反破解难度。 写在前言 资源混淆工具大约是在2014年4月实现,并在微信5.4中使用,减少了大约1M的空间。然后在8月在公司内部开源,现以推广到QQ邮箱、QQ空间、手机管家等多个产品中使用。 具体源码与使用
腾讯Bugly
2023-04-02
5500
Swift是花拳绣腿吗?——谈谈开发语言与程序员的职业发展
CSDN移动将持续为您优选移动开发的精华内容,共同探讨移动开发的技术热点话题,涵盖移动应用、开发工具、移动游戏及引擎、智能硬件、物联网等方方面面。如果您想投稿、参与内容翻译工作,或寻求近匠报道,请发送邮件至tangxy#csdn.net(请把#改成@)。 ---- 随着WWDC 2015的举行,Swift 2.0面世,不仅带来了更多的新特性,更被苹果寄予厚望,有可能代替Objective-C成为iOS平台的标准开发语言。那么Swift能否替代Objective-C成为新的王者?现有的项目是否需要迁移?我们
腾讯Bugly
2023-04-02
1.6K0
如何定位Obj-C野指针随机Crash(三):加点黑科技让Crash自报家门
本文主要介绍如何利用OC Runtime的特性,让OC野指针对象主动抛出自己的信息,秒杀某些全系统栈Crash。 陈其锋,腾讯SNG即通产品部音视频技术中心软件工程师,主要负责iOS平台音视频功能开发,热衷于移动开发,以及各类APP体验。 (注:本文由于涉及一些技术比较猥琐,可能会引起处女座同学的不适,如果有任何疑问欢迎一起讨论。另外,本文只讨论Arm 32位情况) 为什么错误地址是0x55555561? 我们在前文里曾经介绍过在内存释放后填充0x55使野指针出现后数据不能访问,从而使野指针变成了必现的
腾讯Bugly
2023-04-02
9520
Android 内存暴减的秘密?!
在 我这样减少了26.5M Java内存!中内存优化一期已经告一段落,主要做的事情是,造了几个分析内存问题的轮子,定位进程各种类型内存占用情况,分析了线程创建OOM的原因。当然最重要的是,优化了一波进程静息态的内存占用(减少26M+)。而二期则是在一期的基础之上,推进已发现问题的SDK解决问题,最终要的是要优化进程的动态Java内存占用! 通常来说不管是做什么性能优化,逃不出性能优化3步曲: 1. 找到性能瓶颈 2. 分析优化方案 3. 执行优化 上述三步看似第三步最能决定优化结果,而事实上,从笔者的几次
腾讯Bugly
2023-04-02
7940
《手管iPhoneX的适配总结》
| 导语 随着苹果发布会的结束,Xcode的GM版也上线了,也意味着iPhoneX适配之旅的开始。 一、设计关注篇 注意设计的基本原则:(苹果呼吁的) 原贴:https://developer.apple.com/library/content/documentation/DeviceInformation/Reference/iOSDeviceCompatibility/Displays/Displays.html#//apple_ref/doc/uid/TP40013599-CH108-SW1
腾讯Bugly
2023-04-02
4490
5分钟教你打造一个秒开的 Android App
背景 近日在开发过程中,发现每次点击app从桌面启动都有一个在桌面明显的等待时间,机型越低端的越明显,冷启动优化看来已经势在必行,所以怒而一顿研究再解决之。话不多说先上优化前后效果图: 买家秀(gif): 淘宝秀(gif): Android App启动流程: 俗话说要想优化好,流程不可少!关于android app启动的流程图如下: 总结一下一个完成的冷启动app过程应该是经过: Zygote Fork Proccess -> Application:attachBaseContext() -> Ap
腾讯Bugly
2023-04-02
6890
QQ会员基于 Hybrid 的高质量 H5 架构实践
前言 任何技术优化都依托于业务的发展,随着QQ会员增值业务的重心转移到手Q移动端,对H5页面不仅要求加载更快,还需承载丰富多彩的运营活动,同时由于每个页面都意味着KPI收入,任何可能导致页面功能不可用的发布行为都是不可接受的。 本文为SDCC 2016(杭州站)的分享实录,介绍QQ会员的前端开发团队在手Q的hybrid模式下对H5页面的性能优化、组件化和持续集成方面的实践。 分享实录: 首先简单介绍一下自己,作为一名80后老腊肉,呆过若干创业团队;2012年加入腾讯超级QQ团队,负责前端开发工作;2013年
腾讯Bugly
2023-04-02
7450
Android O 新特性和行为变更总结
1. Android O 新特性 前段时间解决了几个 QQ 音乐多窗口屏幕显示的 bug,虽然这个问题最终不是 Android O 版本的问题,多窗口是 Android 7.1 之后引入的,但是趁此机会了解一下 Android O 版本的新特性也不错。 在 Google IO 大会上介绍到的 Android O 新版本更新和优化主要集中在两个方面:Fluid Experiences 和 Vitals,Fluid Experience 主要包含了四个显著特性:Notification Dots, Pictur
腾讯Bugly
2023-04-02
1.3K0
vuejs+ts+webpack2框架的项目实践
作者简介:王鹤,高级前端工程师,隶属于腾讯SNG增值产品部。主要负责QQ个性化业务的功能开发及技术优化。目前专注于框架的研究,致力于提升效能,解放生产力。 一、框架的选型 没有什么框架是全能的,都有其适用场景。我们的最初的定位一定要围绕我们的业务来选择。我们个性化业务是基于移动端的多页面应用。我们综合考虑之后,决定使用vuejs+typescript+webpack2来作为现在和将来的核心主框架,未来的演变也基于此基础。 1、为什么使用vuejs 早些年,前端的MVVM框架呈现爆发式的增长,比如angula
腾讯Bugly
2023-04-02
1.4K0
微信Android模块化架构重构实践
本文来自:微信移动客户端开发团队公众号(WeMobileDev) 微信Android架构历史 微信Android诞生之初,用的是常见的分层结构设计。这种架构简单、清晰并一直沿袭至今。这是微信架构的v1.x时代。 图1-架构演进 到了微信架构的v2.x时代,随着业务的快速发展,消息通知不及时和Android 2.3版本之前webview内存泄露问题开始突显。由于代码、内存、apk大小都在增长,对系统资源的占用越来越多,导致微信进程容易被系统回收。因此微信开始转向多进程架构,独立的通信进程保持长连接的稳定性
腾讯Bugly
2023-04-02
8700
Kotlin 泛型详解
0. 引子 Kotlin 100% 与 Java 兼容,所以抛开语言表面上面的种种特质之外,背后的语言逻辑或者说“灵魂”与 Java 总是想通的。本文只涉及 Kotlin Jvm,Kotlin Js、Kotlin Native 的具体实现可能有差异。 最近一段时间在网上发了一套 Kotlin 的入门视频,涵盖了基础语法、面向对象、高阶函数、DSL、协程等比较有特色的知识点,不过有朋友提出了疑问:这门课为什么不专门讲讲泛型、反射和注解呢? 我最早听到这个问题的时候,反应比较懵逼,因为我居然没有感觉到 Kotl
腾讯Bugly
2023-04-02
1.2K0
微信移动端数据库组件WCDB系列(一)-iOS基础篇
本文来自:微信移动客户端开发团队公众号(WeMobileDev) 前言 ---- WCDB(WeChat DataBase)是微信官方的移动端数据库组件,致力于提供一个高效、易用、完整的移动端存储方案。 它包含三个模块: WCDB-iOS/Mac WCDB-Android 数据库损坏修复工具WCDBRepair 目前正在筹备开源中。 背景 ---- 对于iOS开发者来说,数据库的技术选型一直是个令人头痛的问题。 由于Apple提供的CoreData框架差强人意,使得开发者们纷纷将目光投向开源社区,寻找更好
腾讯Bugly
2023-04-02
2.5K0
Google 力挺 Kotlin,这是怎么回事!
今年 Google I/O 2017 开发者大会中,Google 宣布正式把 Kotlin 纳入 Android 程序的官方一级开发语言(First-class language)。Kotlin
腾讯Bugly
2023-04-02
6210
小程序发布三个多月后的一点思考
导语 今年1月9日凌晨,微信正式发布了小程序。小程序发布以后,引起了行业的关注,看好的人还是蛮多的。第一天上线,就有媒体说:“小程序上线了,我把APP都卸载了”。也有说:“小程序将引发一场大的革命”。 在之前小程序内测时,我也在微信群里与各位开发同学一起讨论过,大家也都普遍看好小程序的前景: 【Dev Club 讨论】聊一聊微信“小程序” 可是人有悲欢离合,月有阴晴圆缺。 好景不长,没几天,又有媒体说罗胖跑了,不玩小程序了。那些当时卸载app的,又默默的把APP装回去了。 当然也有不少支持者站在不同的角
腾讯Bugly
2023-04-02
3880
Android 新一代多渠道打包神器
关于作者: 李涛,腾讯Android工程师,14年加入腾讯SNG增值产品部,期间主要负责手Q动漫、企鹅电竞等项目的功能开发和技术优化。业务时间喜欢折腾新技术,写一些技术文章,个人技术博客:www.ltlovezh.com 。 ApkChannelPackage是一种快速多渠道打包工具,同时支持基于V1和V2签名进行渠道打包。插件本身会自动检测Apk使用的签名方法,并选择合适的多渠道打包方式,对使用者来说完全透明。 Github地址: https://github.com/ltlovezh/ApkChanne
腾讯Bugly
2023-04-02
1.2K0
点击加载更多
社区活动
【纪录片】中国数据库前世今生
穿越半个世纪,探寻中国数据库50年的发展历程
Python精品学习库
代码在线跑,知识轻松学
博客搬家 | 分享价值百万资源包
自行/邀约他人一键搬运博客,速成社区影响力并领取好礼
技术创作特训营·精选知识专栏
往期视频·千货材料·成员作品 最新动态
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档