平安科技移动开发二队技术周刊(第一期)

平安科技移动开发二队技术周报(第一期)

平安科技移动开发二队技术周报(第一期)

业界新闻

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何时进入前台,何时被用户关闭。奇怪的是,要达到这个目的并不容易。检查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的开发,主要提供的功能有:

  1. 卸载app
  2. 杀掉app
  3. 启动app
  4. 重新启动app
  5. 清除app数据
  6. 清除app数据并重新启动

3)QCon2015的嘉宾演讲资料

刚刚结束的QCon 2015的嘉宾演讲资料汇总,感兴趣的筒靴们可以翻阅一下。

4)Cmd Markdown客户端

作业部落的Markdown编辑器全平台(Windows/Mac/Linux/浏览器)客户端发布,很好用的一款MarkDown编辑器,支持作业部落的云端同步和发布。