写点什么

Android 开发周报:Flyme OS 开源、经典开源项目解析

2015 年 7 月 08 日

新闻

  1. 《魅族Flyme OS 源码上线GitHub》:近日魅族正式发布了MX5,并且在发布会上,魅族还宣布Flyme OS 开放适配。随后,魅族正式放出了Flyme 官方ROM 适配工具。在众多国产UI 当中,魅族Flyme 也算是一款比较有特色的产品。虽然有不少网友戏称之为『Bugme』,但是其还是有一定的受众群体的。本次魅族宣布Flyme OS 开放适配,也算是一个不错的消息,最起码会有不少没有魅族手机的用户有机会体验一下这款系统。这里是 Flyme 的 GitHub 页面
  2. 《Java 版权案谷歌上诉被驳回》:美国最高法院周一驳回了谷歌在一宗软件版权诉案中提出的上诉申请,维持原先的判决,即允许甲骨文向使用其 Java 编程语言的公司收取专利版税。而谷歌在其 Android 移动操作系统中使用了 Java API,这意味着谷歌将要为 Android 掏一大笔钱。

教程

  1. 《Android 百分比布局库解析与扩展》:百分比布局是网页中最常用的布局方式,近日谷歌发布了一个百分比布局的支持库 android-percent-support-lib 。该库提供了两种布局 PercentRelativeLayout 和 PercentFrameLayout 供开发者使用。随着 Android 手机碎片化的持续发展,App 开发时适配问题越来越成为耗时、不省力的工作,百分比布局最大的好处应该就是解决屏幕适配问题。此处为作者对该库的改进版,赶快行动吧。
  2. 《Chromium 和 WebKit 的智能指针实现原理分析》:C++ 不像 Java 一样,由虚拟机负责对象分配和释放。也就是说,开发人员使用 C++ 编写代码时,要自己负责对象分配和释放。WebKit 和 Chromium 都是使用 C++ 开发的,因此它们也面临上述问题。在解决对象释放问题时,要做到在对象不需要时自动释放,因为手动释放会带来忘记释放或者释放后又继续使用的隐患。智能指针是实现对象自动释放的有效技术手段。本文就分析 Chromium 和 WebKit 的智能指针的实现。
  3. 《DynamicLoadApk 源码解析》:DynamicLoadApk 是一个开源的 Android 插件化框架。插件化的优点包括:模块解耦、动态升级、高效并行开发(编译速度更快)、按需加载、内存占用更低等等。DynamicLoadApk 提供了 3 种开发方式,让开发者在无需理解其工作原理的情况下快速的集成插件化功能。本文详细解读了 DynamicLoadApk 的实现原理。
  4. 《SlidingMenu 源码解析》:SlidingMenu 应该是侧滑菜单中最受开发者欢迎的开源项目,SlidingMenu 的侧边栏可以是一个 Fragment,可包含任何 View,并且 SlidingMenu 支持左滑和右滑、可以自定义侧边栏显示动画。SlidingMenu 的使用也非常方便,逻辑清晰,代码量少。本文是 codekk 源码解析系列里关于 SlidingMenu 的一篇详细解析。
  5. 《Kotlin 在 Android 工程中的应用》:Kotlin 是由 JetBrains 设计的开放源码的编程语言,它正在 Java 开发者中变得越来越流行。Kotlin 通常被吹捧为 Java 的继承者,相比较 Java 而言,Kotlin 提供更为丰富的开发经验,因为它更现代,更具表现力和更简介。本文介绍了在 Android Studio 工程中如何使用 Kotlin 和 Kotlin 插件。
  6. 《从设计到实现,一步步教你实现 Android-Universal-ImageLoader- 缓存》:我们要对图片进行缓存,有两种方式:内存缓存和本地缓存。这两种方式的区别在于,内存缓存是缓存在 Android 系统为应用分配的运行内存之中,读取速度快,但是可能会带来 OOM 的问题;本地缓存一般缓存在 SD 卡中,读取速度较慢,但是缓存空间足。那么我们要怎么来实现内存缓存和本地缓存呢?阅读本文,学习如何写出代码结构清晰,类间耦合度低的代码。
  7. 《如何使用 Android Studio 把自己的 Android library 分发到 jCenter 和 Maven Central》:如果你想在你的项目中引入一个第三方的 library,你只需在 Android Studio 中添加一行代码到模块的 build.gradle 文件中,然后就可以使用这个 library 了。这种技术实在是太酷了,Android Studio 是从哪里得到这个 library 的?其内部是如何运作的?这篇文章将详细讲解该技术运行原理,以及如何把你开发的库发布,分享给世界各地的其他开发者。

开源项目

  1. dexposed :dexposed 是一款无侵入的运行期 AOP 框架,是阿里巴巴无线事业部的第一个重量级 Android 开源项目。该项目是基于 ROOT 社区著名开源项目 Xposed 改造剥离了 ROOT 部分,演化为服务于所在应用自身的 AOP 框架。它支撑了阿里大部分 App 的在线分钟级客户端 bugfix 和线上调试能力。
  2. bubbles-for-android :这是一个可以在桌面上添加聊天头像(或者其它的图标)的应用,支持拖动删除功能。
  3. TourGuide :TourGuid 一个非常赞的开源项目。对于一些复杂的 App,我们希望能够给用户一些引导操作。当用户首次打开应用的时候,可以按照给出的引导来熟悉 App。TourGuid 就是为这种场景而生的项目,动画效果很漂亮,马上收藏备用吧!

感谢徐川对本文的审校。

给InfoQ 中文站投稿或者参与内容翻译工作,请邮件至 editors@cn.infoq.com 。也欢迎大家通过新浪微博( @InfoQ @丁晓昀),微信(微信号: InfoQChina )关注我们,并与我们的编辑和其他读者朋友交流(欢迎加入 InfoQ 读者交流群)。

2015 年 7 月 08 日 10:305145
用户头像

发布了 121 篇内容, 共 34.8 次阅读, 收获喜欢 3 次。

关注

评论

发布
暂无评论
发现更多内容

架构师训练营第三周

Melo

Android APP启动白屏优化

小菜鸟学php

android白屏

当你输入get/set命令的时候,Redis做了什么

老胡爱分享

redis 源码分析

重学 Java 设计模式:实战责任链模式「模拟618电商大促期间,项目上线流程多级负责人审批场景」

小傅哥

设计模式 小傅哥 重构 代码优化 责任链模式

如何写出高质量的代码?(浅谈代码规范、重构、单元测试的重要性)

Nick

单元测试 重构 代码重构 代码规范

你真的了解敏捷吗?听马丁福勒聊敏捷

涛哥

敏捷 数字化转型

必知必会,程序员都应该会的Linux的50个知识点!

Java小咖秀

Linux 面试 运维 Shell 经验

TCP/IP协议族终于更新(第4版)了,世界著名计算机精选PDF美滋滋

周老师

Java 网络 计算机 TCP/IP 协议族

《零基础学 Java》 FAQ 之 17-怎么理解Java中的数组

臧萌

Java

为什么Web开发人员在2020年不用最新的CSS功能

Geek_Willie

CSS

培训机构出来的程序员常被鄙视,招谁惹谁了

程序员生活志

程序员 程序人生

架构师训练营第三周-总结

无心水

极客大学架构师训练营

架构师训练营作业 (第三周)

王海

极客大学架构师训练营

GitHub 热榜:一款堪称作业终结者的开源神器!

JackTian

GitHub 开源项目 工具类网站 学生党 Text-to-handwriting

架构师训练营第二周课后作业

赵凯

框架设计

思想不进化的人都是可怜人

Neco.W

提升认知 思考 进步 进化

Flink on Zeppelin (5) 高级特性篇

章剑锋_Jeff

大数据 flink 流计算 Zeppelin

小师妹学JVM之:JIT中的LogCompilation

程序那些事

JVM 「Java 25周年」 小师妹 性能调优 JIT

还在埋头干活?给程序员的几个忠告

四猿外

Java 深度思考 程序员 随笔杂谈 程序员成长

数据库如何弹性伸缩?

Aaron_涛

数据库 架构 云原生

【写作群星榜】6.12~6.19 写作平台优秀作者 & 文章排名

InfoQ写作平台官方

写作平台 排行榜

flutter开发

InfoQ_1c4a1f813eb1

第三周作业

LEAF

Cocoa 代码注释与文档生成

Edmond

ios CocoaPods 代码注释 Swift-Document iOS Document

一种极致性能的缓冲队列

小楼

Java 性能

英特尔宋继强:坚持科研的长期主义 推动AI向3.0时代跃迁

最新动态

跨云厂商部署 k3s 集群

米开朗基杨

k3s wireguard

对不起,我爱你

小天同学

小说 爱情 情感

SharePoint 往事之:一句话让 SharePoint 罢工

手艺人杨柳

SharePoint

互联网人的娱乐精神之28岁退休 & P8和生活助理的故事

码农神说

程序员 漫画 退休

加密与解密

返町

Android开发周报:Flyme OS开源、经典开源项目解析-InfoQ