前言,承接之前的 IOS开发涉及有点概念&相关知识点,这次归纳的是Android开发相关,好废话不说了。。

先声明下,Android开发涉及概念比IOS杂很多,可能有很多都题不到的。。

首先由于Android是基于Linux,而Linux又是用c山寨Unix的,但是为什么Android不用开发App,其实我也不懂,我想可能是java比较简单。

同样的,IOS为啥没用java,这个我也想可能是因为IOS是封闭的吧。。晕,又废话了。。好,开始吧,不过这次很多要查资料了,很多名词、单词不会啊!

首先还是系统架构的分层架构

1.Linux内核层 Linux Kernel,应该也是内存管理、进程、电源管理等,还有驱动什么的

2.类库&运行时 Library&Runtime

  A.Lib:Sys C lib,Media lib,3D lib&OpenGL,Sqlite;C/C++编写的

  B.Runtime:Android每个应用程序都是一个独立的Dalvik VM (即App的执行文件.dex)进程

3.框架层 Framework,即可为java调用系统功能的API

  A.可视化视图,即View,和IOS一样,可见的控件都是继承于View的

  B.内容提供者,活动管理器,窗口管理器

  C.其他什么通知、资源管理器等

4.应用层,也就是App啦。。

开发主体相关

1.JAVA,这个也不用说的

2.SDK&JDK,

  A.JDK,Java的JDK环境肯定是要的

  B.SDK,AVD模拟器也在里面,还有很多Android版本和SDK版本也在里面

3.Eclipse,这个也不用多说了,不过其涉及几个工具

  A.adt,android dev tooKit,

  B.sdk,也就是上面说的软件开发工具包,

  C.NDK,原生开发包,跳过JVM和C/C++等对接用的

  D.Cygwin,这个也说下,模拟Linux环境,有时要用的,没有Linux的话

  E.DDMS&Logcat,开发时基本要用到的,就是调试模拟器管理系统和调试信息Log输出查看类了

接着再来个项目目录介绍先

1.src,也不用说的

2.gen,R类,自动生成的

3.asserts,需用AssetsManager类通过全路径进行访问,打包时都会加上

4.res,资源文件夹,R.java文件中自动生成标记,打包时不一定加上

  A.drawable,一般的界面相关图标、xml等文件

  B.raw,一般的字体文件

  C.layout,布局、界面文件

  D.values,颜色、颜色、文字、本地化、单位等字符串描述文件

  E.menu,菜单列表资源文件

  F.anim&xml等,动画、xml资源文件等,还有、样式主题等

5.AndroidManifest.xml,大名鼎鼎的系统配置入口文件,几大组件、各种权限都要在里面注册什么的,N多,不过一般用到查就是了(一般查官网哦)

说完这个还有个四大组件要先说的(里面N多内容,这里不多细说)

1.Activity,活动,可以说就是UI,不过我觉得更有点像Controller

  A.View,通过添加各种View组件呈现,setContentView()、Layout(View)、findViewById(),这个可能有点多,还是后面用UI来说吧

  B.Intent和IntentFilter,意图,用在不同组件间传递信息的对象,Activity传值靠Binder机制(不同进程调用)

  C.生命周期,前面还有进程生命周期,后面还有服务的生命周期,有点多,不过都挺像的,就给个图吧

  这里主要还涉及存储Activity状态处理,一般方法是onSaveInstanceState,onCreate 、onStart 、onResume 、onPause 、onStop 、onDestroy 、onRestart

  http://images.cnblogs.com/cnblogs_com/kofi/201104/201104101952161244.png

  http://pic002.cnblogs.com/images/2012/325852/2012120122450787.png

  D.TaskStack,任务栈,也就是多个Activity界面替换,进栈出栈的过程

2.Service

3.ContentProvider

4.BroadcastReceiver

开发用到相关知识点及概念

1.UI相关

2.数据存储,MD,总算好像把UI部分涉及写完了下!

3.网络

4.多线程

一些冷门,我不搞他不清楚啊

1.

2.

....

Android内容实在有点多,明天什么时候再接着写吧。。。

PS,原来还有想接着写J2EE的体系,看来还得想想先了。。。

Android开发涉及有点概念&相关知识点(待写)的更多相关文章

  1. IOS开发涉及有点概念&相关知识点

    前言,IOS是基于UNIX的,用C/C+/OC直通系统底层,不想android有个jvm. 首先还是系统架构的分层架构 1.核心操作系统层 Core OS,就是内存管理.文件系统.电源管理等 2.核心 ...

  2. 学Android开发,入门语言java知识点

    学Android开发,入门语言java知识点 Android是一种以Linux为基础的开源码操作系统,主要使用于便携设备,而linux是用c语言和少量汇编语言写成的,如果你想研究Android,就去学 ...

  3. Android开发环境——模拟器AVD相关内容汇总

     Android开发环境将分为SDK相关内容.Eclipse ADT相关内容.模拟器AVD相关内容.调试器DDMS相关内容.日志LogCat相关内容.连接驱动ADB相关内容.内存泄露检测工具MAT相关 ...

  4. Android开发网上的一些重要知识点[经验分享]

    1. android单实例运行方法 我们都知道Android平台没有任务管理器,而内部App维护者一个Activity history stack来实现窗口显示和销毁,对于常规从快捷方式运行来看都是s ...

  5. Android开发环境——Eclipse ADT相关内容汇总

     Android开发环境将分为SDK相关内容.Eclipse ADT相关内容.模拟器AVD相关内容.调试器DDMS相关内容.日志LogCat相关内容.连接驱动ADB相关内容.内存泄露检测工具MAT相关 ...

  6. Android开发中的神坑和知识点记录

    1.SDK Manager.exe闪退的问题 http://blog.csdn.net/fambit025/article/details/26984345 1.找到android.bat,在源码处找 ...

  7. Android开发环境搭建相关文章列表(转载)

    Android开发虽然有所了解,但是一直没有搭建开发环境去学习,Android的更新速度比较快了,Android1.0是2008年发布的,截止到目前为止Android已经更新Android5.0.1, ...

  8. Android开发环境配置(win7_64bit)

    Android开发环境配置(win7_64bit) 目录 1.概述 2.Android开发涉及的技术 3.Android常用开发环境搭建 4.注意事项 >>看不清的图片可在新标签打开查看大 ...

  9. Android开发学习总结(一)——搭建最新版本的Android开发环境

    Android开发学习总结(一)——搭建最新版本的Android开发环境(转) 最近由于工作中要负责开发一款Android的App,之前都是做JavaWeb的开发,Android开发虽然有所了解,但是 ...

随机推荐

  1. [JBoss] - 在Jboss 7.1 AS中打印hibernate的SQL方法

    因为JBoss使用的是log4j,JBoss的系统日志级别默认是INFO.而Hibernate或IBatis要打印SQL,级别为DEBUG,所以,程序设置了log4j级别为DEBUG会被JBoss系统 ...

  2. [solr] - 索引数据删除

    删除solr索引数据,使用XML有两种写法: 1) <delete><id>1</id></delete> <commit/> 2) < ...

  3. Apache Shiro 使用手册(二)Shiro 认证

    认证就是验证用户身份的过程.在认证过程中,用户需要提交实体信息(Principals)和凭据信息(Credentials)以检验用户是否合法.最常见的"实体/凭证"组合便是&quo ...

  4. Oracle存储过程 输出参数赋值异常:“Oracle.DataAccess.Types.OracleString”的类型初始值设定项引发异常。

    场景: 写了一个有返回参数的存储过程,在个另开发人员机器上都正常.其它机器报如题错误.让人郁闷的是,所有调用方都是客户端,根本不存在网上众贴所说的版本不一致问题. 分析: 虽然网上的帖子没有根本解决问 ...

  5. C++11:POD数据类型

    版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] 啥是POD类型? POD全称Plain Old Data.通俗的讲,一个类或结构体通过二进制拷贝后还能保持其数据不变,那么它就是 ...

  6. 通过group by和having去除重复

    $sql="SELECT peisonghao FROM ecs_order_info_ly GROUP BY peisonghao HAVING COUNT(*) >1"; ...

  7. BackTrack 5 开启SSHD服务

    BackTrack 5 开启SSHD服务 1 service ssh start 但启动后,仍然无法从远程连接,会有提示: 1 Read from socket failed: Connection ...

  8. JS-改变页面的颜色(二)

    需求:点击页面的按钮,改变页面的颜色 思路:一先画出最简单的页面,二想办法获取页面的body节点,三想办法修改body节点的背景颜色属性,四通过一个方法获取随机的颜色值           和第一个例 ...

  9. jdbc中c3p0的配置信息

    <c3p0-config> <!-- 这是默认配置信息 --> <default-config> <!-- 连接四大参数配置 --> <prope ...

  10. 实现Base64加密解密

    using System; using System.Text;   namespace Common { /// <summary> /// 实现Base64加密解密 /// </ ...