9月24号,北京带着雾霾,有幸参加了MDCC中Android场,有幸见证tinker现场开源,也体会很多过来人走过的坑及艰苦卓绝的精神,让Android生态越来越好。

MDCC各分会场,最后都在这里:https://github.com/MDCC2016

百万哥也做了简单点评:

http://mp.weixin.qq.com/s?__biz=MzI1MjA5NDY0Nw==&mid=2649970964&idx=1&sn=e63b692f03bf2cd065fbae38d0933c0c&chksm=f1ef08ccc69881da96174ece5692280dce2bd125d1ab8d276ae16953ee401586429c51db95bc&scene=4#wechat_redirect

鸿洋也做了资料汇总:

http://mp.weixin.qq.com/s?__biz=MzAxMTI4MTkwNQ==&mid=2650821110&idx=1&sn=939998187ebbc83c5d58d708a84e838c&chksm=80b78568b7c00c7e65966d2d7c1ac3be8d2cebfe2ac81949a75e104eb5d186a7bed84e26c0d4&scene=0#wechat_redirect

我就说点自己的收获吧。毕竟大家收获都不一样。

  1. 更新(滴滴技术专家)分享滴滴国际化演进,在海处地图调研,值得借鉴,google service很大国产机装了没用的难题,及每个地图的优缺点问题。现在很多做直播的,借助于第三方SDK,估计同样也面临这样的问题。



    其次,珍对在国外网络访问慢的问题,进行了优化,加了专线来确保用户体验。

  2. 接下来是冯老师(作为独立开发者)分享的,回归初心,从容器化到组件化,近年来插件化,module化,已经越多,不再像过去那样,庞大的软件,改一行代码,测试,耗费开发人员较长时间,组件化作为独立模块,协同开发时,可以提供release版本进行集成,平时,只须在自己的dev分支上进行开发。大大提高开发效率。各模块之间解耦,当然这其中也面临相关的问题,如大量的反射方式,各rom厂商对系统的改动,就很容易产生各种问题,像我在会上请教了apk与apk数据之间如何共享的问题。冯老师建议可用contentprovider,目前我们一些基础数据还是用sharedprences来处理的。建议在项目的早期做拆分,避免后期组件化的抽离困难。



  3. 然后是由江华分享的网易云信IM推送保障及网络优化,介绍了几个拦路虎,没有采取进程永远保活且开各种守护进程的方案。自创心法,后面接着在网络优化相关经验展开了分享。



  4. 接下来就是绍文(微信事业部)大家近半年很热的hot fix技术,走过坑是在art平台,dalvik平台的差异,让全量合成技术面临挑战,最后借鉴studio install run的原理及市场实际情况,发展到目前的阶段。该项目已在现场开源,详细介绍可看微信开发团队公号:http://mp.weixin.qq.com/s?__biz=MzAwNDY1ODY2OQ==&mid=2649286384&idx=1&sn=f1aff31d6a567674759be476bcd12549&scene=0#wechat_redirect



  5. 下午,fb的王洁(来自fresco团队,妹子),分想了fresco一些思想及实现,主要用到了匿名共享内存Ashmem ,在native层处理,减少在java层内存的处理问题。现场有人提问,如果都来申请这样一个匿名共享内存,会不会导致机器很卡,等。这个Ashmem实际上是直接站在巨人的肩膀(Linux 共享内存机制)上的,对于Android基于Linux系统,各个app都是一个process,当然一个app也有可能多个process,共享内存的创建(open)、映射(mmap)、读写(read/write)以及锁定和解锁(pin/unpin)四个使用情景.详细了解Ashmem可以参考:http://blog.chinaunix.net/uid-20321537-id-3482938.html,另一个问题是说fresco用Drawee的问题,提问的小伙伴说他们之前都是用ImageView,现在切fresco,发现Drawee不是继承ImageView,王洁告知在起初定用Drawee,就不会把Drawee继承ImageView,我觉得应该有相应的解决方案吧,毕竟那么多人都在用fresco,哈哈。



  6. 然后接下来是个推祥观介绍如何开发优雅的SDK,用当下的MVC,MVP等设计一个SDK.现场提问,是说这么多渠道和客户,如何管理分支问题。SDK打包及升级不同客户,确实都是很实在的问题。这个实际上是可以做一些渠道的标识的。不同的客户和厂商。在发版可以记录。build不同的sdk,脚本也是可以做到的。



7. 接下来是数盟分享的android设备唯一Id,珍对目前市场,可以改mac,改imei,渠道商用模拟器造假的问题,最后我个人理解的就是用大数据方向相关知识,进行智能化分析真实用户的行为特征及模拟器用户假特征,进行算法校验。变成数字DNA。

8.接下来是阿里小伙分享的native内存泄漏的检验,前面听的是用一个类库可以捕获到native的trace信息,中途CSDN合影,就出去了。后面相关内容没有听到。

9. 最后合完影回来,已经到明云(步步高应用部leader,知乎优秀回答者)在讲Android应用性能优化经验分享了,从几个指标方向结合自己工作遇到的情部况,做了实操,为照顾大多数人,ppt上都写慢了步骤,感觉好心细。


最后的最后,就圆满结束了,然后就各种合影,各种相识素未谋面的大牛,全家福他们都放了,总之这次活动,非常赞,感谢秋百万的主持,感谢CSDN及创新工厂平台,感谢很有很多业内活跃Android社区的开发者。

第一时间获得博客更新提醒,以及更多android干货,源码分析,欢迎关注我的微信公众号,扫一扫下方二维码或者长按识别二维码,即可关注。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐