- Android Looper 和 Handler 分析
- Android MediaScanner 详尽分析
- Android 深入浅出之 Binder 机制
- 第一部分 AudioTrack 分析
- 第二部分 AudioFlinger 分析
- Android 深入浅出之 Audio 第三部分 Audio Policy
- Android 深入浅出之 Zygote
- Android 深入浅出之 Surface
- Linux Kernel 系列一 开篇和 Kernel 启动概要
- Linux Kernel 系列二 用户空间的初始化
- Linux Kernel 系列三 Kernel 编译和链接中的 linker script 语法详解
- 第五章 深入理解常见类
- linux kernel 系列四 嵌入式系统中的文件系统以及 MTD
- 随笔之 Android 平台上的进程调度探讨
- Android 4.0 External 下功能库说明
- 随笔之 Android 不吐不快
- Android Rom 移植知识普及
- 深入理解 Android 系列书籍的规划路线图
- Android 4.1 初识 - 7月12号
- Android 4.1 初识 - 7月13号
- Android 4.1 Surface 系统变化说明
- Android BSP 成长计划随笔之虚拟设备搭建和 input 系统
- 深入理解 Android 写作背后的故事
- 随笔之 GoldFish Kernel 启动过程中 arm 汇编分析
- Android Project Butter 分析
- Android Says Bonjour
- MTP in Android
- DRM in Android
- Tieto 公司 Android 多窗口解决方案展示
- 深入理解 SELinux SEAndroid 之二
- 深入理解 SELinux SEAndroid(最后部分)
- 前言
- 附录
- 第一章 准备工作
- 第二章 深入理解 Netd
- 第三章 Wi-Fi 基础知识
- 第四章 深入理解 wpa_supplicant
- 第五章 深入理解 WifiService
- 第六章 深入理解 wi-Fi Simple Configuration
- 第七章 深入理解 Wi-Fi P2P
- 第八章 深入理解 NFC
- 第九章 深入理解 GPS
- Google I/O 2014 之 Android 面面观
- 深入理解 Android 之 Java Security 第一部分
- 深入理解 Android 之 Java Security 第二部分(Final)
- 深入理解 Android 之设备加密 Device Encryption
- 第一章 阅读前的准备工作
- 第二章 深入理解 JNI
- 第三章 深入理解 init
- 第四章 深入理解 Zygote
- 第五章 深入理解常见类
- 第六章 深入理解 Binder
- 第七章 深入理解 Audio 系统
- 第八章 深入理解 Surface 系统
- 第九章 深入理解 Vold 和 Rild
- 第十章 深入理解 MediaScanner
- 第一章 开发环境部署
- 第二章 深入理解 Java Binder 和 MessageQueue
- 第三章 深入理解 SystemServer
- 第四章 深入理解 PackageManagerService
- 第五章 深入理解 PowerManagerService
- 第六章 深入理解 ActivityManagerService
- 第七章 深入理解 ContentProvider
- 第八章 深入理解 ContentService 和 AccountManagerService
- 第一章 开发环境部署
- 第二章 深入理解 Java Binder 和 MessageQueue
- 第三章 深入理解 AudioService
- 第四章 深入理解 WindowManagerService
- 第五章 深入理解 Android 输入系统
- 第六章 深入理解控件(ViewRoot)系统
- 第七章 深入理解 SystemUI
- 第八章 深入理解 Android 壁纸
- 边缘设备、系统及计算杂谈(16)——Apache 学习
- 边缘设备、系统及计算杂谈(17)——Ansible 学习
- ZFS 和 LVM
- Android 4.2 蓝牙介绍
- 了解一下 Android 10 中的 APEX
- 关于 Android 学习的三个终极问题
- 深入理解 Android 之 AOP
- Android 系统性能调优工具介绍
- 深入理解 SELinux SEAndroid(第一部分)
- Android Wi-Fi Display(Miracast)介绍
- 深入理解 Android 之 Gradle
随笔之 Android 不吐不快
今天又看到Android5.0的一些信息,实在忍不住了。说说我个人(一家之言)对它的看法。
ICS从去年11月放出4.0,到12月还是12年1月又放出来4.0.3,短短3个月,放出两个版本的SDK,实在是过于仓促。
细节没怎么看,目前知道媒体引擎这块,有准备将stagefrightplayer换成nuplayer,专门针对流媒体的(大体是这样,严格的各位不用拍砖),但可恶的是该东西根本没做完嘛!
ICS后kernel基于3.0,很多厂商都来不及做适配。不知道5.0又想基于kernel哪个版本了。似乎几个大厂也跟不上步骤,否则如何4.O还未出几款手机呢?不过保不齐,那些大厂已经知道Goolge再开发5.0,所以就不急着去弄。步伐迈得太快了,Goolge自己也只是拿亲儿子一款手机在那整,有本事也来支持下其他厂商的手机?
以前没机会去看Java层的framework,今次一看。代码真的不咋样。尤其是重要的ActivityManagerService,非常混乱。这可是调度的核心啊。反正看android源码,一点美感都没有。所以导致我有一个很深的疑惑一个如此流行的东西,是靠技术取胜 还是靠别的什么取胜?各位看官不妨回答一下。
另外,ICS中,对平板和手机UI方面做了整合(实际从HoneyComb就开始了),加了所谓的fragment,又搞出来一堆回调函数!(谷哥哥,回调太多了,会把人搞晕的)。每个应用也便得巨复杂无比,大量使用设计模式,实际上对java程序员要求高了。应用不好改啊,各位!
ICS似乎想抛弃gcc编译器了,君不见在external下引入了LLVM(具体名字不太记得了,但苹果就是用这个编译器吧。《程序员》前几期一直有个栏目在讲苹果的故事,大概是12年1月期就提到了这个巨牛叉无比的LLVM,牛叉到什么程度呢?假设new出来的东西,忘记delete的话,该编译器会自动在某个地方插入delete。大概就是类似的说法。各位觉得不可能吧?不过大牛说了:既然编译器在编译的时候能提示说是否忘记delete,那为何编译器不能自动把delete加上?)。用上LLVM,好处很多,编译速度快几倍,内存耗费少几成。而且编译错误的提示更人性化,不像GCC那样,编译错误提示乃天书。
总结:google毕竟没搞过桌面OS,所以对这块积累不深。这是看代码得到的一个直观结论。升级太快,真的受不了,而且对资源要求越来越高。对各位程序员来说,要么做中间件(比如视音频开发,多媒体播放,webkit等不局限于android架构的),要么做BSP。UI的话,如果你很喜欢做,那也还行。UI最容易和特定平台绑定,android UI架构并不好。数年之后,鹿死谁手还不知道呢。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论