1.android是什么

2005
google收购了ANdroid lnc. (有可能变成 google mobile)
开始 Dalvik VM的研究

2007
开发手机联盟成立
Sdk1.0预览发布

2008
Google 第一届手机开发者大赛
Google 第一个亲儿子 T-Mobile G1发布
SDK1.01 发布
Android 开发源代码(Apache License)

//------------android 是什么
手机设备的软件栈,包括
一个完整的操作系统
中间件
关键的应用程序

[/code


android 分层
应用层 一用框架层 系统运行库层 linux 内核层



//---------android -------------------底层是linux内核(android (iso系统)安全管理内存管理进程管理(进程之间通信管理)电源管理硬件驱动(摄像头,键盘驱动,wifi驱动,音频驱动)通信管理//--------Libraries--------------(系统运行库层,函数库)中间层 将一些底层的操作给暴露出来surface Manager :读写管理Open GL |ES: 图形特效,以及一些3D模型的渲染SGL:一个内置的2D图形引擎Meda Framework:多媒体播放的一些类容.Free Type: 安卓下的一些字体效果SSL:位于TCP/IP协议和各层协议之间,为数据通信提供支持SQLite : 移动平台下 有名 的 开源数据库管理WebKit: 开源浏览器的引擎libc: 标准的 c 的库函数//-----------Android runtime-----------Dalibike Virtual Machine:  为了优化了 jvm   侵犯了版权 google重写了运行时JVM :window  Core libraies:核心库//-----------application FrameWork------------  android SDK 1.Activity Manager: 活动的管理  (打开 ,关闭一个界面)2.window Manager: 窗体管理者 (弹出,关闭 对一个对话框)3.Content Providers:内容数据的共享者4.View System:制定控件运行的先后关系5.package Manage:程序的管理器 6.TelePhone Manage: 管理手机上的打电话 发短信7.Resouce Manager: 资源管理8.Location Manager:GPS  获取位置 9.Notification Manager:  短信通知等 //------------Appliactions-------------------- 手机只带的应用home;桌面 phone:拨打电话  brower:浏览器 game: 游戏 //------------比较-------------JVM                                 Dalvik VM .java > .class > .jar               .java > .class  > .dex  >.odex基于栈的架构  (内存)    < 效率      基于寄存器的架构(存在CPU中的一小块内存)                                    不支持部分java库,  Swing 和AWT




2.android 开发环境的搭建
1.下载 与系统 符合的 JDK http://www.oracle.com/technetwork/java/javaee/downloads/java-ee-sdk-6u3-jdk-6u29-downloads-523388.html记住要配置 JDK环境变量2.下载 Android SDK ADT 套件  (包含了eclipse工具啦,这样就不用我们在myeclipse中配置这配那的了)http://developer.android.com/index.html  -->get  SDK3.下载后  找到 SDK Manager.exe 运行下 后要下载一些工具 这个 会很慢,一般都不会成功,因为 google中 地址中 "-" 解析不出来 这里 有个办法: 所以修改 hosts 文件 C:\Windows\System32\drivers\etc  -->hosts--> 加入 74.125.237.1dl-ssl.google.com 这样 就可以更新下来了啦


//使用  android SDK Mansger 来下载一些 需要的工具 平台,支持库 驱动等

1.Document For  Android  SKD :帮助文档2.SDK Platform: SDK平台  下载后,  才能创建这个平台的模拟器,和编译android 代码3.Samples for SDK : SDK 的实例代码 4. ARM  : 处理器产商, 处理器的架构  不生产处理器   (摩托罗拉,三星) 95%使用 arm 处理器  Intel X86 : lenovo  v880  用的比较少  (window 平台上 使用后,模拟器速度会快点)  MIPS : 有流行的趋势   上面都是  cpu 模拟器  5.Gooogle  API: 比如 google 地图 (mapview) 等6.Sources for Android SDK : 源码 ----Extras1.android Support libary : 新的控件 支持 低版本的 用户兼容的 支持库2.google adWeb  ads  SDK : 广告的 在应用中嵌入 广告  (使用他 赚钱)3.Google Play Service:4.Google Play  billing Library:  需要钱的应用   就往帐号上大钱的这样一个支持库5.Google web Driver: 模拟器的 照相机  使用 电脑的 摄像头的驱动6.Google USE  driver:  插上手机到 电脑上, 需要的驱动 


//------创建 模拟器
打开 android2\adt-bundle-windows-x86_64-20130219\eclipse eclipse.exe
里面就可以创建模拟器了
有个 手机 图标 :里面就可以创建 不同平台 不同频宽的 模拟器



打开后就可以设置里面 语言啦 你知道的

//----------启动中出现的一些问题
//--1.eclipse 打开就报错: 应该即使  JDK 安装的版本 不符合你系统的要求 比如 64位系统  32 位的jdk//--2.点击  start 模拟器无法运行    invalid command -line parameter:  Files\ANdroid\android-sdk\tools/emulator-arm.ext: Hint:usr  @foo to  .... 方法一: 检测 JDK 安装的路径是不是有中文  有 就就该  方法二: 添加 Android_SDK_HOME 环境变量 : 指向 android SDK目录  然后重启 Android_SDK_HOME :D:\TDDOWNLOAD\android2\adt-bundle-windows-x86_64-20130219\sdk//--3. 之前 开启过 模拟器 不知道什么原因 这次启动不了   start 弹出窗下出现        WARNING: SD Card image already in  use     WARNING: Cache partition already in use  ...     其实就是  出现共享数据 持久化 的问题(   这次启动的模拟器还是用的之前模拟器的数据)   每个模拟器都对应系统中个一个文件    C:\Users\Bin\.android\avd\HVGA.avd     只要删除 文件夹里面的 把里面的[文件夹: :twisted: ] 删除掉就可以 (lock)  //--4 模拟器没有注册网络  (使用的桥连接 连接window系统的网络)  修改 本地连接中的 IP只用 自定义Ip   DNS服务器 



//--------SDK 目录中 常见工具的使用
D:\TDDOWNLOAD\android2\adt-bundle-windows-x86_64-20130219\sdk1.add-ons: 存放一些工具 ,驱动  2.extras: 附加的一些工具,支持一些jar ,web摄像头的 驱动 D:\TDDOWNLOAD\android2\adt-bundle-windows-x86_64-20130219\sdk\samples3.samples: 实例代码   (apiDemo 这个 里面的例子) 可以在模拟器的 API demo 看到效果   里面还有很多游戏 和应用     示例代码也是分平台的  也需要在  Android SDK Manager 中下载后才有D:\TDDOWNLOAD\android2\adt-bundle-windows-x86_64-20130219\sdk\platforms4.platform: 开发支持的平台D:\TDDOWNLOAD\android2\adt-bundle-windows-x86_64-20130219\sdk\platform-tools5.platform-tools:平台相关的工具     在  cmd 中  运行里面的工具命令    adb.exe  :android程序的调试桥(window+ ,360手机助手 等都是这个东西,只是换了外貌)



//------adb.exe 的使用
1.到网站上 下载一个  apk 的程序  就可以使用  adb 来安装   http://www.appchina.com/ 到这个网站上去下载   com.yingyonghui.market_825_30024412.apk   讲这个工具进行安装 cmd  --cd d: D:\TDDOWNLOAD\android2\adt-bundle-windows-x86_64-20130219\sdk\platform-toolsadb  install com.yingyonghui.market_825_30024412.apk  --就可以看到模拟器中多了一个安装程序 adb uninstall com.yingyonghui.market(包名) 就可以卸载了(也可以通过手机里面应用管理卸载)adb devices 查找所有的  模拟器  (有多个时候有用)adb -s emulator-554 inatall com.yingyonghui.market_825_30024412.apk 将这个应用安装到指定的emulator-554 这个模拟器上adb -s emulator-5554 push file:///C:/Users/Bin/Desktop/getface.jpg  /sdcard/a.jpg--\将桌面的图片  导入到 模拟器中 adb -s emulator-5554 pull /sdcard/a.jpg c:\aa.jpg --将手机里的图片导入到  桌面 ctrl+11 就会变成 横竖屏幕小键盘的 9 和 7 也可以借还 横竖屏--配置 adb 的环境变量 讲 adb的路径 添加到  path路径中去就可以了如果 我们电脑上装了 windows+  或者 360手机安全卫士的  如果 adb 的版本不同 会出现给一些奇怪的问题  所以 建议卸载 第三方软件emulator-5554emulator-5556 是两个模拟器的 端口号 ,  可以相互之间打电话 和  发短信


//--接下来就来创建我们第一个 HelloWorld 工程 哈哈
不用说啦

file--> new -->Android Application Project-->Application Name: 安装到手机上的应用名称 Project Name:项目名称Package Name:包名Minimun  Required  SDK :支持最小版本的 应用 一般为 2.1  2.2Target SDK:支持最大版本的额 应用 目前  4.2Compile with :编译用的 SDK 版本 Theme:是否使用的 自动布局//-->next Mark this project as a library: 标记该应用为 一个 项目中的 jarCreate activity: 创建一个窗体  Create custom launcher icon: 创建一个自定义 图标Working sets: 此项目需要引用的 其他项目//-->nextclipart :选择自定义的一个图片//-->nextCreate Activity:创建一个窗体  选择一个系统自定义好的窗体 //--nextActivity Name:窗体的名称Layout Name:布局名称 Navigation Type: 导航类型 //--OK  创建好了


// ------解释下 项目中的 各个文件的 作用


assets 目录:资产目录,存放一些应用程序的资源文体Android 4.2.2 :使用的 android  SDK 版本  libs:三方的支持的jar 包,会自动添加到build path里面res:应用程序的资源文件drawable:存放 图片资源AndroidManifest.xml: 应用程序的清单文件.gen: 自动生成的 java文件目录src: java的源代码的存放目录main 函数1.读取apk文件 中的 清单文件软件安装的过程0.开发工具帮助我们生成apk文件  (安装包)1.拷贝一些文件到系统的某个目录(windows)  android: 讲apk文件拷贝到 /data/data/目录下 (创建一个文体)   /data/data/com.itheima.helloworld/  保存数据2.在系统的注册表里面配置一些信息(windows)  android: 下面两个文件就类似注册表文件  /data/system/package.xml   /data/system/package.list  <package name="com.itheima.helloworld" > (eclipse 工具 DDMS视图中 就有直接导出这两个文件的 功能 其实就是 使用的 adb pull  命令)变异资源文件 生存对应的R文件打包 .java -->.class--> .devaapt: android appliaction package tools 工具 ddms: dalvik debug manager system  (eclipse 视图中有个 DDMS 视图 File Explorer:列出该设备中所有的文体 )


更多相关文章

  1. Android(安卓)5.0以上移动网络开关
  2. vim+ctags+cscope 打造Android源码阅读工具
  3. Android(安卓)XML解析
  4. Android(安卓)中使用自定义字体的方法
  5. 【Android】Android(安卓)UI 开发_问答_2
  6. android使用ant编译找不到apkbuilder.jar的错误的解决方法
  7. Android国际化设置问题
  8. Android(安卓)入门 和 环境搭建
  9. Android(安卓)studio教程学习笔记4——TextView

随机推荐

  1. Android 自定义字体(otf,ttf等等)
  2. Android面试题目之三: 字符串转整形
  3. Android 浅析 Volley
  4. 自定义的Spinner文字居中
  5. Android(安卓)Material Design:Coordinato
  6. Android Studio 1.0正式稳定版下载地址
  7. Android(安卓)Monkey测试
  8. Android的一些开源库
  9. [android]-记录日志到sd卡
  10. Android反射机制详解