Android开发技术周报 Issue#39
新闻
-
Google 收购 Android 十周年,多图看 Android 十年间的变迁
往事一回首,十年就过去了。由于 Google 当年是悄悄地做了这笔收购交易,所以外界其实没有多数人知道 Google 收购 Android 的具体时间点。按照维基百科上“Google 公司收购列表”这个词条上给出的信息,Google 是在 2005 年 8 月 17 日收购了 Android;现在看上去,维基百科上的这个日期恐怕要修改了一下了。
-
近日谷歌和黑莓走得更近了,两家公司宣布将会联手创造一款更符合企业需求的安卓操作系统。该系统将会注重黑莓BES12企业设备部署服务与安卓5.0 Lollipop和Google Play的整合。
-
谷歌公布了Android M开发者预览版2,在第一个版本基础上修复了不少BUG,同时也带来了一些新特性,这些我们早上已经有报道。尽管如此,到现在有不少网友发现了该版本并不稳定,依然存在一些漏洞。
教程
-
今年的Google IO大会,给Andorid开发者带来了很多新东西,比如新的Material Design支持库,还有Data Binding技术,使用Data Binding,我们可以很方便的实现 MVVM设计模式。
-
Android ViewDragHelper完全解析 自定义ViewGroup神器
在自定义ViewGroup中,很多效果都包含用户手指去拖动其内部的某个View(eg:侧滑菜单等),针对具体的需要去写好onInterceptTouchEvent和onTouchEvent这两个方法是一件很不容易的事,需要自己去处理:多手指的处理、加速度检测等等。
-
本文对市面上的Android安全键盘进行了总结,详细分析了为什么采用安全键盘,怎么样实现安全键盘等问题。以及各个产品线使用的安全键盘有何优劣点。以方便开发者对自我开发安全项目键盘进行总结与学习。
-
越来越多的黑客盯上了移动应用,每天都会增加,因为移动应用中有黑客感兴趣的东西,如用户数据。硬编码(Hard-coded,注,固定写死,不能修改的)安全秘钥,SD 卡中以明文存放的个人信息,数据库中未加密存储的用户名和密码,收集的分析(analytics)并以明文方式发到远程服务器,这些情况都使得攻击更容易(得手)。
-
Android应用通常使用PFUNIX、PFINET、PFNETLINK等不同domain的socket来进行本地IPC或者远程网络通信,这些暴露的socket代表了潜在的本地或远程攻击面,历史上也出现过不少利用socket进行拒绝服务、root提权或者远程命令执行的案例。特别是PFINET类型的网络socket,可以通过网络与Android应用通信,其原本用于linux环境下开放网络服务,由于缺乏对网络调用者身份或者本地调用者pid、permission等细粒度的安全检查机制,在实现不当的情况下,可以突破Android的沙箱限制,以被攻击应用的权限执行命令,通常出现比较严重的漏洞。
-
上一篇文章中提到过,系统出厂的app应用,其实就是被安装到/system分区的app,这些app在Android源码树中被编译后打包到了system.img镜像中,系统启动时,以只读的方式挂载/system目录,因此,非root手机用户是无法删除这些app的。
代码&开源库
-
一个方便你在App中应用自定义字体的库。
-
一个可以让你很方便的给App添加操作提示导航的库。
-
带视觉差的侧滑返回,类似于新版微信和lofter的侧滑返回效果。
-
一个可以并行执行下载任务的管理器。
-
很赞的LsitView折叠效果。
-
加载动画效果很赞的加载控件。
-
Fit Chart is an Android view similar to Google Fit wheel chart. 一个类似Google Fit里环形图表控件。
-
一个流式接口的Sqlite库。
-
android-percent-support-extend
对于android-percent-support的扩展库。
-
一个可以让你在App内查看应用的自己数据库内容的库。
-
Jake 大神开源的一个把Java8 的Date包移植到Android中来的库,主要就是替换joda。Java 8 date api的主要设计者就是joda的创建者,新的API对joda做了不少改进。另外移植过来的包大小比joda小,api数目也少,值得试试。
工具
-
Android Studio with Android NDK Preview Support Available
We've just release Android Studio 1.3 RC 1 to the canary channel, which includes the preview of Android NDK C/C++ support!(不能FQ可以点这里)
-
ALFI(Android Library Finder)——最快的方式获取依赖库。
-
Android Studio plugin allowing to calculate sizes in different densities like xxxhdpi, xxhdpi, xhdpi, hdpi, mdpi, ldpi and tvdpi.
-
兰贝壳儿
兰贝壳儿是一个辅助安卓开发的 eclipse 插件工具。主要提供三个功能:自动打包多渠道包的apk、项目工程文件或文件夹在资源管理器中打开、工程依赖的其他jar包管理(使用maven的dependency格式)。