95702 Week 8 - Android Archetecture

作者 QIFAN 日期 2016-10-25
95702 Week 8 - Android Archetecture

Distributed Systems for Information Systems Management(95702), Fall16, Carnegie Mellon University
课程链接:http://www.andrew.cmu.edu/course/95-702/syllabus.html
👉👉👉 笔记大纲


Why Mobile?

  1. 移动设备联网趋势 (据ITU 2015年报告,全球将近97%的网络连接是通过2G及以上网络)
  2. 移动宽带比固话建设成本更低

Why Android?

  1. 基于linux
  2. 可用Java(iOS需要Object C和swift),群众基础强大

安卓架构:

  • 基于linux的小型计算机
  • 联网
  • 特定硬件(如手机,GPS,相机)
  • 支持程序写入的软件栈?

Activity

定义:一个有用户界面的Android程序

所有的Android程序都继承Activity或者继承Activity的子类

UI

一个Android的UI在xml文件和res目录下被定义。
两种编辑模式:

  • Design(WYSIWYG)
  • Text(xml)

res 组件

一些关键元素:

  • layout 如何安排UI
  • drawable 图形文件
  • menu 程序菜单
  • values 常量的值如静态字符,颜色等

交互问题

网络延迟

AsyncTask

对比

应用类型 implemente 的方法 配置文件
Java Application Any POJO main()
Web Application 继承 HttpServlet doGet(), init(), doPost() web.xml
Android Application 继承 Activity(或者任何继承Activity的子类如AppCompatActivity onCreat(), onPause() AndroidManifest.xml