平安科技移动开发二队技术周报(第一期)
业界新闻
1)流行iOS网络通信库AFNetworking曝SSL漏洞
AFNetworking是一款大名鼎鼎的开源网络库,能够让开发人员们在iOS和OS X程序中增加网络功能。可是,这款库没有检查SSL证书是否是颁发给某个合法域名。这直接导致了不论什么使用了早于2.5.3版本号的AFNetworking的iOS程序都存在漏洞,即使程序由SSL加密数据,黑客能够窃取和篡改数据。
2)Android 和 iOS 应用可轻松移植为 Windows 10 通用应用
关于微软 Windows 10 将兼容 Android 应用的传言已经出现近一年。微软在 Build 2015 上给出了正式答案,和传言有些许不同。简而言之,Android 和 iOS 应用可移植为 Windows 10 通用应用。
3)Sky:一个基于 Dart 的高性能移动应用 UI 框架
除游戏之外的Android应用通常使用Java语言来开发,而谷歌内部的一个团队正在探索全新的应用开发方式。他们利用了谷歌自主的网页开发语言Dart来开发Android应用。这帮助他们专注于速度,并能够与网页进行深度整合。
4)Google提议使用Jsonnet来增强JSON
Google开源了一门配置语言Jsonnet来代替JSON。它全然向后兼容并增加了一些新特性:凝视、引用、算术运算、条件操作符,数组和对象内含,引入,函数,局部变量,继承等。
Jsonnet程序被翻译为兼容JSON的数据格式。
Android开发
1)Android Studio入门指南
总结的比較全面的适用于国内开发人员的Android Studio安装和基本使用教程。献给最终想从Eclipse+Ant转向Android Studio+Gradle的开发人员们。
2) Gradle插件用户指南
Android Studio中使用Gradle的简单高速新手教程。推荐刚从Eclipse+Ant开发模式转到Android Studio+Gradle开发模式的同学们看一看。
3)常见Android Native崩溃及错误原因
Android NDK开发中常见的Native Crash原因分析
4)Android性能优化典范系列 第一季 第二季
Google公布的系列短视频教程。这两篇文章是对其的总结,第一季主要讨论Android的渲染机制,内存与GC,电量优化,第二季包括的内容电量优化,网络优化,Wear上怎样做优化,使用对象池来提高效率,LRU Cache,Bitmap的缩放,缓存,重用,PNG压缩。自己定义View的性能,提升设置alpha之后View的渲染性能,以及Lint,StictMode等等工具的使用技巧。
5)Instagram是怎样提升TextView渲染性能的
在Android中,文本的渲染是非常慢的。
即使在一个像Nexus 5这种新设备上,一段有十几行复杂文本的图片说明的初始绘制时间可能会达到50ms,而其文本的measure阶段就须要30ms。这些都发生在UI线程。在滚动时会导致app跳帧。
6)Android中推断app何时启动和关闭的技术研究
Android开发中不可避免的会遇到须要检查app何时进入前台,何时被用户关闭。奇怪的是,要达到这个目的并不easy。
检查app第一次启动并不难,但要推断它何时又一次打开和关闭就没有那么简单了。
7)怎样检查 Android 应用的内存使用情况
Android是为移动设备而设计的,所以应该关注应用的内存使用情况。虽然Android的Dalvik虚拟机会定期执行垃圾回收操作,但这也不意味着就能够忽视应用在何时何处进行内存分配和释放。为了提供良好的用户体验,做到系统在不同应用间流畅切换,当用户和应用无交互时,避免应用不必要的内存消耗是非常重要的。
iOS开发
1) Objective-C 拾遗:从Heap and Stack到Block
语言基础知识的再探索
2)携程App的网络性能优化实践
携程无线开发总监陈浩然在QCon全球软件开发大会(北京站)上的演讲,总结了携程在App网络性能优化方面的一些实践经验。
3)iOS应用架构谈系列 开篇 view层的组织和调用方案
安居客iOS app开发人员的iOS架构经验分享。眼下出了两篇文章。
4)iOS图形性能进阶与測试
这篇文章主要是学习完Advanced Graphics and Animations for iOS Apps这个session后的总结和对应细节的延伸和细化。主要内容为图形性能与測试工具两个章节。
5)View Debugging in Xcode6
我们在开发app的时候常常会遇到一些在代码中难以发现的view中的bug或者自己主动布局约束。这时候。掌握view调试的技巧就显得非常重要—可是在Xcode6出现之前,调试view从未如此简单。
开源函数库与工具
1) Mac上面一款有用的Android工具
使用Mac开发的筒靴能够安装一个,这款简便小工具一键实现例如以下功能:
1. 手机截屏
2. 手机视频录制
3. 轻松安装APK
4. 执行自己定义脚本
2)adb-idea
一个Android Studio和Intellij IDEA插件。用于加速日常Android的开发。主要提供的功能有:
- 卸载app
- 杀掉app
- 启动app
- 又一次启动app
- 清除app数据
- 清除app数据并又一次启动
3)QCon2015的嘉宾演讲资料
刚刚结束的QCon 2015的嘉宾演讲资料汇总,感兴趣的筒靴们能够翻阅一下。
4)Cmd Markdownclient
作业部落的Markdown编辑器全平台(Windows/Mac/Linux/浏览器)client公布,非常好用的一款MarkDown编辑器,支持作业部落的云端同步和公布。