Android学习-GUI开发-01-启动

OpenSource上开了几门关于Android的课程,考虑到公司的开发平台可能在4月份开始系统迁移到Android平台,打算系统学习下Android开发技术。


资源:

课程 

Programming Mobile Applications for Android Handheld Systems
by Dr. Adam Porter


参考代码: android系统2.3源码.rar (infoxa网站下载)
      

一: GUI系统构成

一个GUI系统通常包括下面几个方面:
1> 用户交互界面描述
问题:
     View、Layerout,控件,Glyph,以及它们之间如何组合
     IDE如何支持?
    如何开发自定义控件?
    是否支持动态生成描述文件?
    如何为特定像素设备开发像素级GUI设计?
2> 文字/字体,图片,几何描画(Canvas)支持
问题:    
     支持哪些字库? 
     支持哪些文字编码? 编码转换采用什么库?iconv吗? 性能如何?
     如何开发多国语言版本?能动态切换语言吗?
     图片格式支持哪些? 采用什么库解码? 性能如何?
    Canvas支持哪些接口?
    
3> 事件处理(按键,触摸,系统,用户自定义)
问题:
事件处理流程?
        是否支持拦截事件,只让当前app接收?

4> 如何与linux底层的FrameBuffer交互 (Client/Server? Window管理?脏矩阵如何计算?)
问题:
      从描画到linux的FrameBuffer经过哪些模块? 
      需要多少次bitblt?
      有办法直接映射到底层linux的FrameBuffer吗?

5> 生命周期
     多个Activity之间如何切换?
     什么时候退出?
    有办法访问linux下进程信息吗?如何强制干掉其他应用程序?

6> 权限管理
    如何控制资源的访问权限?
    能动态切换角色吗?
   如何切换到root?

学习任何一个GUI系统必然要搞清楚以上方面。

带着上面的问题开始学习之旅。

Android学习-GUI开发-01-启动

上一篇:【安卓笔记】进程优先级


下一篇:Android拍照且将图片上传至服务器