为什么微信android图片质量会比iphone的差? 我们团队最初也纠结过这个问题,费了半天劲.绕了好大圈,直到最后才发现,原来这是谷歌犯得一个“小”错误,而且一直错到了今天. 谷歌的错就在于:libjpeg. libjpeg是广泛使用的开源JPEG图像库(参考 http://en.wikipedia.org/wiki/Libjpeg ),安卓也依赖libjpeg来压缩图片.通过查看源码,我们会发现安卓并不是直接封装的libjpeg,而是基于了另一个叫Skia的开源项目(http://en.w…
       经常看到有人问:“安卓版微信发出去的图片怎么那么渣!比iPhone的差远了!”.不只是微信,很多应用安卓版的图片质量就是要比iPhone版逊色很多,这到底是怎么回事? 我们团队最初也纠结过这个问题,费了半天劲.绕了好大圈,直到最后才发现,原来这是谷歌犯得一个“小”错误,而且一直错到了今天.     谷歌的错就在于:libjpeg. libjpeg是广泛使用的开源JPEG图像库(参考 http://en.wikipedia.org/wiki/Libjpeg ),安卓也依赖libjpe…
由于设计师或者产品经理使用的移动设备大部分是iPhone,所以在做设计时,容易忽略Android和iOS的差异,按照自己的使用习惯进行设计,导致大部分设计师或产品经理做出的设计都是基于iOS规范或习惯.而安卓则照搬iOS.这对于安卓开发而言是个灾难,很多组件本可以直接调用系统,由于按照iOS的设计,则需要开发自己写,研发成本变得很高. 如果设计师或者产品经理有的异常场景状态没有想到,导致安卓开发没有组件调用,为了省事就直接调用安卓自带组件,导致整个产品在视觉风格上面既有产品风格的组件又有安卓系统…
这是一个典型的Android应用在从小到大的成长过程中的“踩坑”与“填坑”的历史.互联网的变化速度如此之快,1年的时间里,可以发生翻天覆地的变化.今天在这里,重新和大家回顾微信客户端架构的演进过程,以及其背后的开发团队.流程的变化与思考. 拓荒 微信1.0 for Android的测试版本于2011年1月发布.这是微信Android客户端的第一个版本,软件架构采用早期标准的Android系统应用设计. [图1] 第一个版本是两个人用了一个多月的时间开发出来的,其中一个还是刚刚毕业没多久的实习生.…
转自: http://www.infoq.com/cn/articles/wechat-android-app-architecture 微信Android客户端架构演进之路 作者 赵原 发布于 2015年12月31日 | 注意:GTLC全球技术领导力峰会帮助深具远见卓识的技术人审时度势,提升领导力!4 讨论 分享到:微博微信FacebookTwitter有道云笔记邮件分享    已保存     我的阅读清单   去年7月,笔者在InfoQ举办的ArchSummit深圳2014的架构师峰会上,分…
首先,感谢微信android团队的分享 微信中的资源混淆工具主要为了混淆资源ID长度(例如将res/drawable/welcome.png混淆为r/s/a.png),同时利用7z深度压缩,大大减少了安装包体积,同时也增加了逼格,提升了反破解难度.本文主要是对此做一个简单分析. 写在前言 资源混淆工具大约是在2014年4月实现,并在微信5.4中使用,减少了大约1M的空间.然后在8月在公司内部开源,现以推广到QQ邮箱.QQ空间.手机管家等多个产品中使用. 具体源码与使用方法详细在github中:…
韩梦飞沙  韩亚飞  313134555@qq.com  yue31313  han_meng_fei_sha 凡信(超仿微信Android版)开源了,内有源码下载 - IM Geek开发者社区-移动开发者社区-开源社区-IM Geek官网 腰果Cashew,基于原生实现,整体上使用了DataBinding - Android免费源码 - 秀源码 - Android源码社区_免费没毛病 Android Demo源码下载与使用 - 云通信 - 产品文档 - 帮助与文档 - 腾讯云 秀源码这个 可以…
自己使用的是微信Android客户端,使用img标签的src属性将图片设置好了以后,在微信中调试,点击图片竟然放大,自己没写放大图片的方法,也没有调用wx.previewImage()方法,最后查找,原来是微信Android客户端已经在底层支持了img标签自动放大的功能,说是bug还是改进?因为传统的浏览器是不带图片放大效果的,需要自己写方法,好了,明白了问题所在,解决就好了: 传统方式: $(document).on(‘click’, ‘img’, e => { e.preventDefaul…
微信小程序中的iPhone X适配问题 小程序中下方的导航会被iPhone X下面的那条黑线盖住[微笑脸],所以要专门为了iPhone X做样式上的适配[微笑脸] wx.getSystemInfo({ success: function (res) { //console.log(res.model) //console.log(res.language)//zh_CN(en) //console.log(res.model=="iPhone X") if (res.model==&q…
1.申请你的AppID 请到 开发者应用登记页面 进行登记,登记并选择移动应用进行设置后,将获得AppID,可立即用于开发.但应用登记完成后还需要提交审核,只有审核通过的应用才能正式发布使用. 2.下载微信终端开发工具包 开发工具包主要包含3部分内容:(其中,只有libammsdk.jar是必须的) libammsdk.jar(每个第三方应用必须要导入该sdk库,用于实现与微信的通信) API文档(供开发者查阅使用) 界面小工具源码(封装了界面表现的工具类,以及一些界面风格) 下载: Andro…