我的Android第一章
一、android是什么
基于linux系统下开发的开源系统
二、android的具体架构是什么
硬件[智能设备底层的硬件],驱动[软件和硬件之间沟通的桥梁],Linux系统[一款功能强大代码开源的系统],Java类库[java中的一些依赖类],jvm虚拟机
简单的说,我们如果做安卓的软件开发,需要java知识+sdk+ecplise工具 来做到Android的开发
三、android的开发环境是什么
sdk[android开发需要的依赖],Android模拟器[我们开发android最出名的就是手机,所以要一款软件能够模拟手机,例如海马玩模拟器,夜神模拟器]
,jdk[android目前开发还是在java代码的编写下的,所以jdk必不可少],ecplise[学过java的同学都很熟悉了,这是一款java开发的集成工具软件,要注意的是,我们要下载的是专门为android开发使用的ecplise所以与一般的ecplise不同]
说一下Android中的几个术语:
android sdk:android sdk 包含了一个调试器、库、一个模拟器、文档、示例代码和教程
adt:用于eclipse的Android开发工具、插件是eclipse ide的扩展,用以支持Android应用程序的创建和调试
android操作系统:是一种基于Linux的开源的收集操作系统
apk是Android package的所系,即是Android安装包
Android的四大组件(activity,service,broadcast receiver,content provider)
四、Android开发的一些概念
android中手机被当做服务器,接受各种请求,而客户端则由sdk中的adp.exe来充当
试着寻找adp.exe:
第一步骤:
第二步骤:
第三步骤:
以上就是寻找adp.exe的步骤,这里声明一点,当我们使用android开发使用的sdk和ecplise的时候会自动使用
sdk中的命令,所以我们只需要了解sdk中目录下的文件的作用就行了,不需要去用它
五、环境的配置
1)需要jdk:
下载jdk:http://www.oracle.com/technetwork/java/javase/downloads/index.html
或者解压已经有的jdk
2)配置环境便量
JAVA_HOME=D:\java\jdk1.7.0_79 -->jdk所在目录
path=%JAVA_HOME%/bin; -->jdk中bin目录作用是为了在任意目录下调用jdk中的命令
CLASSPATH=.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;%JAVA_HOME%\jre\lib\rt.jar->这里我们直接可以复制
ANDROID_HOME=E:\学习\android\adt-bundle-windows-x86_64-20140702\sdk -->sdk所在目录
3.校验
win+r 输入cmd 进入命令行 输入 java -version 验证jdk是否配置成功
六、简单的连接手机
做了那么多,我们终于要试一下怎么把 ecplise 与 手机[海马模拟器]连接起来
需要的配置:1.一部手机。2.ecplise。3.sdk。4.jdk
1.一部手机[我们在电脑中可以使用下载海马模拟器来模拟手机,这款软件可以模拟一台手机的使用]
2.ecplise[需要指定为android整合开发的ecplise]
3.sdk[这是android开发所需要的包]
4.jdk[这是android开发的环境变量]
执行步骤:
1.打开ecplise , 指定工作空间
2.安装模拟器[海马玩模拟器,夜神模拟器]
3.进入ecplise
4.进入ddms视图连接
以上就是ddms视图
如图所示,ddms视图中会自动搜索海马模拟器,或者我们的手机,当我们的手机被搜索到的时候,图片如下所示
整个ecplise连接手机模拟器的步骤就是这样
七、打印输出HelloWorld【android小案例】
第一步骤:确保你的手机和ecplise连接中
第二步骤:切换ecplise中的java页面
第三步骤:新建项目
在Package Exploer视图中右键
统一选择了4.4,这里我的海马模拟器是4.2的,之后我们可以看一下有什么样的异常
下一步
我们来了解一下完成后的项目中的目录结构
开始做一个在android中的helloworld
下面我们开始:
第一步骤:选中控件
第二步骤:改变控件中的值为 "你好 Android"
1)打开src中的MainActivity.java文件
2)编写的代码
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//前面的代码不变
//后面添加代码由于继承自Activity,使用它的方法
//参数R.id.button1找的是R.java中的id.button1
//每当我们在activity_main.xml中生成一个控件R.java
//也会在id中生成对应的整形句柄用来标识这个控件
//那么此时t1就是button1 ,button1 又等于之前我们生成的控件
TextView t1 = (TextView)this.findViewById(R.id.button1);
//调用方法设置值
t1.setText("你好 Android"); }
3)右键项目
注:这时候会遇到版本问题
按照图片来走
这里我们需要将版本改回可以搜索到的4.2 即是 17 版本的sdk
重新执行项目
现在我们的模拟器就可以搜索到了
这里我们需要等待
此时切换我们的模拟器
这样我们整个简单的demo就完成了,希望大家能够互相交流,这里我们要注意如果连接不上或者出现文件缺失等情况,可以重新启动ecplise和模拟器,或者删除项目重新创建来做到搭建项目,希望有所帮助
我的Android第一章的更多相关文章
- 疯狂Android第一章:Android环境配置以及基本概念
第一章 无关痒痛:Android Studio安装,配置,基本功能介绍! 重点内容:Android应用基本结构分析. 基础概念部分(只需知道作用,原理后见代码): Activity:安卓系统中负责与用 ...
- 我的Android第一章:Android环境搭建
今天是Android第一天的学习,对于学习任何一门课程时我们都要对该课程要有基本的了解和认识,了解该课程学点什么内容,学了这门知识我门能够做些什么,这也是对于我们这些刚入门的学习人员来说是一个必须要弄 ...
- 第一章 Android系统移植与驱动开发概述
本书第一章首先简单概要地介绍了关于Android系统移植和驱动开发的相关内容. 所谓“移植”是指为特定的自己的设备,如手机定制Android的过程.自己开发一些程序(移植)装载在设备上,使得Andro ...
- [Learn Android Studio 汉化教程]第一章 : Android Studio 介绍
注:为了看上去比较清晰这里只转载了中文 原地址: [Learn Android Studio 汉化教程]第一章 : Android Studio 介绍 本章将引导您完成安装和设置开发环境,然后你就可 ...
- Android群英传》读书笔记 (1) 第一章 Android体系与系统架构 + 第二章 Android开发工具新接触
第一章 Android体系与系统架构 1.Dalvik 和 ARTDalvik好比是一辆可折叠的自行车,平时是折叠的,只有骑的时候,才需要组装起来用.ART好比是一辆组装好了的自行车,装好就可以骑了. ...
- Android系统移植与驱动开发----第一章
第一章 Android系统移植与驱动开发 Android源代码定制完全属于自己的嵌入式系统,但是支持的设备不多,所以要移植,而在移植的过程中使用的不得不提的是驱动开发. Android系统构架主要包括 ...
- Android开发艺术探索笔记——第一章:Activity的生命周期和启动模式
Android开发艺术探索笔记--第一章:Activity的生命周期和启动模式 怀着无比崇敬的心情翻开了这本书,路漫漫其修远兮,程序人生,为自己加油! 一.序 作为这本书的第一章,主席还是把Activ ...
- Android群英传笔记——第一章:Android体系与系统架构
Android群英传笔记--第一章:Android体系与系统架构 图片都是摘抄自网络 今天确实挺忙的,不过把第一章的笔记做一下还是可以的,嘿嘿 1.1 Google的生态圈 还是得从Android的起 ...
- 第一章 Android系统的编译和移植实例
第一章 Android系统的编译和移植实例 这一章节主要介绍了Android系统的编译和移植技术,作为建立在Linux内核的基础上的Android操作系统,它的编译和移植不论在过程还是技术方面都和嵌入 ...
随机推荐
- 使用git@osc管理现有项目
首先安装git和powershell集成git工具 参考 http://www.cnblogs.com/kreo/p/4685988.html 打开windows powershell,进入项目目录, ...
- mysql小结
1.使用密码登录mysql mysql -u root -p 2.查看所有的数据库 show databases; 3.创建数据库 create database <数据库名>; 4.创建 ...
- css3知识
一.box-sizing 属性 规定两个并排的带边框的框 二.align-items (适用于父类容器上) 设置或检索弹性盒子元素在侧轴(纵轴)方向上的对齐方式. 值: flex-start:弹性盒子 ...
- Python实例学习-文件备份
1. 介绍 通过实例学习Python的使用,该实例来自文献[1]中的第11章解决问题. 由于没有搞清楚Win7下如何通过命令行调用zip命令,所以采用7z[2],采用7-zip命令行版本[3],版本号 ...
- find命令的拾遗
find -maxdepth 1 -regextype posix-extended -type f -regex "\./${name}[-\.].*\.(gz|bz2|tgz|zip|t ...
- csuoj 1117: 网格中的三角形
http://acm.csu.edu.cn/OnlineJudge/problem.php?id=1117 1117: 网格中的三角形 Time Limit: 3 Sec Memory Limit: ...
- Java绘图
paintComponent(Graphics g)方法: 1.不调用super.paintComponent(g)的话,rePaint()的时候就会把你写的paintComponent中的内容绘制上 ...
- 2.4 C#的变量
在C#中,不仅有常量,还有变量,而且最常用的还是变量.下面是变量的知识. C#的变量有3个步骤:声明.赋值.使用. 变量声明的方法:数据类型 变量名; 变量赋值的方法:变量名=变量的值: 下面是这3个 ...
- SSH整合报错:org.hibernate.hql.internal.ast.QuerySyntaxException: User is not mapped[......]
非常诡异的报错,信息如下:org.hibernate.hql.internal.ast.QuerySyntaxException: User is not mapped [select count(* ...
- 夺命雷公狗-----React---19--表单的值的修改
少了1个e,在代码部分补回,否则会报错 <!DOCTYPE> <html> <head> <meta charset="utf-8"> ...