我的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操作系统,它的编译和移植不论在过程还是技术方面都和嵌入 ...
随机推荐
- iOS索引列开发详解
做苹果开发的朋友在地区列表可能会遇到在页面的右侧有一列类似与导航的索引列,这次有机会遇到了,细细研究了一下,原来没有想象中的困难,只需要简单的几步就能做出自己的索引列.本来想和搜索条在一块讲解,后来考 ...
- 适应laytpl 渲染模板数据
前言 当我们异步读取数据过来的时候,还要通过手动赋值,显示在页面上吗,那样你就太OUT了,哥告诉你个新方式. 那就是 laytpl 插件 用法一:渲染单条数据 <table id="B ...
- https://blog.helong.info/blog/2015/03/13/jump_consistent_hash/
转载请说明出处:http://blog.csdn.net/cywosp/article/details/23397179 一致性哈希算法在1997年由麻省理工学院提出的一种分布式哈希(DHT) ...
- 数据结构与算法分析C++表述第二章编程题
把昨天看的第二章巩固一下,做一做编程习题. 2.6: 第一天交2元罚金,以后每一天都是前一天的平方,第N天罚金将是多少? 这个题目和2.4.4-3介绍的幂运算基本一致.若按相同的递归思路分析,比那个问 ...
- MFC操作excel
环境:VS2013+office2007 头文件: #pragma once #ifndef __MYEXCEL_H_ #define __MYEXCEL_H_ #include "CApp ...
- [原创]如何在Parcelable中使用泛型
[原创]如何在Parcelable中使用泛型 实体类在实现Parcelable接口时,除了要实现它的几个方法之外,还另外要定义一个静态常量CREATOR,如下例所示: public static cl ...
- Intellij Idea 工具在java文件中如何避免 import .*包
Intellij Idea工具在java文件中怎么避免import java.utils.*这样的导入方式,不推崇导入*这样的做法!Editor->Code Style->Java-> ...
- win7下开启telnet命令
win7下开启telnet命令 win7上telnet这条命令默认被关闭了. 开启telnet方法如下: 一,打开控制面版 二,选择程序 三,选择打开或关闭windows功能 在弹出窗口中把 Teln ...
- GCD的简单用法
/* 创建一个队列用来执行任务,TA属于系统预定义的并行队列即全局队列,目前系统预定义了四个不同运行优先级的全局队列,我们可以通过dispatch_get_global_queue来获取它们 四种优先 ...
- int型时间字符串转日期
string re ="201611"; DateTime d1 = DateTime.ParseExact(re, "yyyyMMdd", null);