Skip to content

Latest commit

 

History

History
93 lines (46 loc) · 6.88 KB

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

File metadata and controls

93 lines (46 loc) · 6.88 KB

##业界新闻

###1)如何评价美团外卖商家版强杀竞争对手的商家版 App 进程?

一段代码引发的关于不正当竞争的讨论。

###2)Swift正在蚕食Objective-C的市场

关于Objective-C市场份额萎缩的更详尽的报道。

###3)苹果真贴心,更新iOS 9不用担心空间不够

尽管iOS 9的升级空间从4.6GB降至现在的1.3GB,依然有不少低存储空间的设备会有安装空间不够的问题。 有开发者发现,在升级iOS 9 Beta2时,小存储版本iPhone/iPad在安装过程中,如果出现系统空间不够时,苹果会自动为你解决。

###4)这10点让你认清苹果新系统El Capitan

苹果的新系统 El Capitan 带来了不少新鲜玩意,但更多的是对已有功能的优化升级,新的字体,全新的分屏功能,以及更加智能的 Spotlight 功能,以及不再鸡肋的地图和备忘录……虽然不是颠覆性的创新,但细细体验,真的是用户最想要,最能提高用户体验的改进!

##Android开发

###1)Android应用程序UI硬件加速渲染的动画执行过程分析

通常我们说一个系统不如另一个系统流畅,说的就是前者动画显示不如后者流畅,因此动画显示流畅程度是衡量一个系统流畅性的关键指标。为什么这样说呢?这是因为流畅的动画显示需要60fps的UI刷新速度,然而这却不是一个容易达到的速度。Android 5.0通过引入Render Thread尽最大努力提升动画显示流畅性。本文就分析Render Thread显示动画的过程,以便了解它是如何提高动画显示流畅性的。

###2)详解Android开发中常用的 DPI / DP / SP

Android的碎片化已经被喷了好多年,随着国内手机厂商的崛起,碎片化也越来越严重,根据OpenSignal的最新调查,2014年市面上有18796种不同的Android设备,作为开发者,一个无法回避的难题就是需要适配各种各样奇奇怪怪的机型。

###3)Android Studio分模块自动化构建实战

众所周知,AndroidStudio中应该尽量使用Module来进行模块的划分,既能达到模块解耦的目的,也能在必要的时候轻松实现分模块打包,特别是在SDK项目中。那么什么是分模块打包呢?就是我们可以根据第三方使用者的需求,自动化的提供SDK的全量版本,部分功能版本以及最小功能版本等等。

###4)Android应用分析进阶教程之一- 初识JEBAPI

JEB是Android应用静态分析的de facto standard,除去准确的反编译结果、高容错性之外,JEB提供的API也方便了我们编写插件对源文件进行处理,实施反混淆甚至一些更高级的应用分析来方便后续的人工分析。

###5)如何使用Android Studio把自己的Android library分享到jCenter和Maven Central

关于通过Android Studio发布Android library的文章很多,但这一篇应该说是目前最为详尽的。

##iOS开发

###1)iOS应用程序的生命周期

iOS应用程序一般都是由自己编写的代码和系统框架(system frameworks)组成,系统框架提供一些基本infrastructure给所有app来运行,而你提供自己编写的代码来定制app的外观和行为。因此,了解iOS infrastructure和它们如何工作对编写app是很有帮助的。

###2)iOS 9: UIStackView入门

同iOS以往每个迭代一样,iOS 9带来了很多新特性。UIKit框架每个版本都在改变,而在iOS 9比较特别的是UIStackView,它将从根本上改变开发者在iOS上创建用户界面的方式。本文将带你学习怎样使用UIStackView创建用户界面。

###3)使用Jenkins搭建iOS开发的CI服务器

持续集成CI(continuous integration)是一种可以增加项目可见性,降低项目失败风险的开发实践。iOS开发中CI的选择有很多,比如可以使用Apple提供的Bots来完成自动化构建和单元测试,其优点就是和Xcode深度集成,只需几步配置就可以完成,缺点就是不够灵活,可定制化程度不高。这篇文章主要讲解如何使用开源社区的一个CI工具Jenkins来搭建iOS开发的CI环境。如果是搭建单独CI服务器的话,就需要一台单独的mac机器了。

###4)iOS9适配系列教程

iOS9适配问题的总结。

##技术纵横

###1)Go 1.5新特性:支持Android,实验性支持iOS(演讲幻灯)

Go语言开发团队成员Andrew Gerrand在2015年2月份FOSDEM上的演讲幻灯。幻灯中介绍说,Go 1.5计划在2015年8月份发布,目前已经进入功能冻结阶段。其他主要内容:

  • Go 1.5会将GC工具链从C切换到Go;Go 1.5的工具链或运行时中都不会有C代码了;
  • Go 1.5支持一些新的GOOS/GOARCH组合;不再支持Apple OS X 10.6;
  • Go 1.5可以制作Go可用的Go共享库(shared libraries);
  • Go 1.5会支持Android,并试验性支持iOS。

###2)NGINX引入线程池 性能提升9倍

NGINX采用了异步、事件驱动的方法来处理连接。这种处理方式无需(像使用传统架构的服务器一样)为每个请求创建额外的专用进程或者线程,而是在一个工作进程中处理多个连接和请求。为此,NGINX工作在非阻塞的socket模式下,并使用了epoll 和 kqueue这样有效的方法。

###3)如何设计一个比较完备的、有用户黏性的用户激励体系?

像百科、论坛这样没有实际物质利益激励的社区或者app,如何通过完善的精神层面激励,提高用户黏性?常用的手段有哪些?设计用户成长体系的时候需要注意哪些问题?

##开源函数库与工具

###1)GuillotineMenu-Android

Yalantis出品的一个开源函数库,实现炫酷的菜单效果。