第二章 搭建Android 开发环境

虽然在这一章中讲的是Android底层开发环境,但是相应伴随的还有Android NDK程序来测试Linux驱动,HAL程序库。底层开发不仅需要交叉编译环境,还要开发应用环境。

所使用到的工具有:JDK6或以上版本,Eclipse3.4或以上版本,ADT,CDT,Android SDK,Android NDK,交叉编译环境  ,Android源代码,用于调试开发板的串口工具:minicom。

安装SDK

第一种方法:官网上下载JDK,gar.gz解压,然后在Linux终端输入命令配置环境变量。http://www.oracle.com/technetwork/java/javase/downloads/index.html

打开profile       gedit /etc/profile

在文件最后输入     export PATH=./developer/jdk6/bin:$PATH

重新加载        sourec /etc/profile

. /etc/profile

查看文件        echo $PATH

注意:PATH和等号之前及等号和点之间不能有空格、tab等字符。

第二种方法:在终端直接执行下列命令,在联网的前提下,但不需要在配置PATH环境变量。

add-apt-repository "deb http://archive.canonical.com/ lucid partner"

apt-get update

apt-get install sun-java6-jdk

搭建Android应用程序开发环境:

1.安装Android SDK

进入http://developer.android.com/sdk/index.html下载Linux版本的Android SDK会得到一个压缩文件,将其复制到某个目录下,然后解压,进入新增的目录中寻找android脚本文件,开始执行,选择自己需要的版本联络网下载,platforms中有很多资源,platforms-tools和tools中有很多常用的工具,建议加入PATH环境变量中。命令如下:

打开profile       gedit /etc/profile

在文件最后输入     

export ANDROID_SDK_PATH=/sdk/android/android-sdk-linux

export PATH=./developer/jdk6/bin$PATH

重新加载        sourec /etc/profile

2.安装Eclipse

在官网上同上找到点击下载,解压找到Eclipse即可开始执行。

3.安装ADT及配置

在线情况下help->Install New Software->add->add repository->name输入->在Location文本框输入http://dl-ssl.google.com/android/eclipse->ok,然后一路next直到finish。

离线安装只有在add repository中点击Archive选择离线安装即可,剩余一样。

在Eclipse中window->preference->左侧android->右侧SDK Location输入android SDK 安装目录->APPLE->ok。

4.建立ADV新建用new,新建好用start启动,则可以启动模拟器。

安装Android NDK开发环境

1.下载Android NDK在上述的同一个网站中,选择Linux版本即可。方法同Android程序驱动开发一样,在最后的脚本是ndt-build,添加到环境变量中。

2.安装CDT,地址如下

http://eclipse.org/cdt/downloads.php

http://download.ecplise.org/tools/cdt/releases.indigo

3.用命令方式编译Android NDK

4.导入Android NDK案例,import

5.配置Android NDK集成开发环境

Ecplise->properties->Builders->New->Choose configuration type->Program->ok弹出对话窗口填写,切换到Refresh,刷新,finish,切换到Builde Opotion->Specify Resources->jni,重新编译代码。 

配置交叉编译环境

http://www.mentor.com/embedded-software/sourcery-codebench/edition/lite-edition/

在网址中选择交叉编译的链接,虽然不是直接得到地址,可以点击“Download the GUN/Linux Release”,输入一些信息可以成功。发送到你所填写的Email地址中。

进入CodeSourcery的下载界面后,选择第一个链接,Linux版本的安装格式是bin格式,可以打开命令安装,执行下面操作。

sh pankage.bin交叉编译完成。

经过这一章的学习,明白了Linux驱动开发环境,Android应用程序开发环境,Android NDK开发环境,交叉编译环境,HAL程序库底层都是密切相关的,每个开发环境都是有紧密的步骤,要细心,对每个细节都不放过,反复思索多产生问题的根源,等到完成以后与他人分享成果,心得,可以加进学习。

Android 系统移植与驱动开发--第二章搭建Android环境核心步骤及心得的更多相关文章

  1. Android系统移植与驱动开发----第一章

    第一章 Android系统移植与驱动开发 Android源代码定制完全属于自己的嵌入式系统,但是支持的设备不多,所以要移植,而在移植的过程中使用的不得不提的是驱动开发. Android系统构架主要包括 ...

  2. Android深度探索HAL与驱动开发 第二章 搭建Android开发环境

    通常以应用移植和系统移植的为Andorid系统移植的主要部分.同时为了适应不同平台硬件设备,对源代码进行相应的修改.除了要移植相适应的CPU架构,最重要是移植Linux驱动. 但是由于一些特别的原因, ...

  3. 第一章 Android系统移植与驱动开发概述

    本书第一章首先简单概要地介绍了关于Android系统移植和驱动开发的相关内容. 所谓“移植”是指为特定的自己的设备,如手机定制Android的过程.自己开发一些程序(移植)装载在设备上,使得Andro ...

  4. 第一章Android系统移植与驱动开发概述--读书笔记

    以前,初步学习过嵌入式Linux驱动开发的基础课程,对于驱动开发可以说是有了一点点微末的基础吧.首先我们要对Android嵌入式系统有一个初步的认识,Android系统发展到今天已经具备了完善的架构. ...

  5. 深入浅出 - Android系统移植与平台开发(十一)- Android系统的定制(瘋耔修改篇一)

    首先非常感谢原文作者为我们提供的知识库,因为有你们的贡献,我们的开发难度更显简单 原文 :   http://blog.csdn.net/mr_raptor/article/details/30113 ...

  6. Android深度探索HAL和驱动开发(卷1) 第一章 Android系统移植和驱动开发

    由于Android是基于Linux内核的,因此,Android和其他Linux系统的核心部分差异非常小.然而不同版本的Android使用的Linux内核的版本有细微的差异,所以不同Android驱动可 ...

  7. 第一章:Android系统移植与驱动开发概述

    Android是基于Linux内核的,与Linux内核没有太大的区别,只是增加了一些自己独有的驱动,随着Android发布版本的不断升级,他所使用的Linux内核也在不断升级,以适应新的安卓版本,为他 ...

  8. Android系统移植与驱动开发

    21世纪,Android发展非常迅速,在市场上占有很大的比例,遥遥领先与iOS,很大程度上是因为任何人都可以利用Android的源代码定制完全属于自己的嵌入式开发系统,而不需要向Google交一分钱. ...

  9. 深入浅出 - Android系统移植与平台开发(十)- Android编译系统与定制Android平台系统(瘋耔修改篇二)

    第四章.Android编译系统与定制Android平台系统 4.1Android编译系统 Android的源码由几十万个文件构成,这些文件之间有的相互依赖,有的又相互独立,它们按功能或类型又被放到不同 ...

随机推荐

  1. [Android分享] 彻底理解ldpi、mdpi、hdpi、xhdpi、xxhdpi

    来自: http://www.eoeandroid.com/thread-565562-1-1.html?_dsign=42bed080 非常感谢楼主分享 这个问题我相信困惑了好多人包括很多老鸟,而且 ...

  2. python模块之re正则表达式

    41.python的正则表达式      1. python中re模块提供了正则表达式相关操作 字符: . 匹配除换行符以外的任意字符 \w 匹配字母或数字或下划线或汉字      \W大写代表非\w ...

  3. C++关于构造函数的深拷贝与浅拷贝

    首先拷贝构造函数的声明方法: 类名::类名(const 类名&) 1.浅拷贝的实现程序: #include "stdafx.h" #include <iostream ...

  4. [BZOJ 1833] [ZJOI2010] count 数字计数 【数位DP】

    题目链接:BZOJ - 1833 题目分析 数位DP .. 用 f[i][j][k] 表示第 i 位是 j 的 i 位数共有多少个数码 k . 然后差分询问...Get()中注意一下,如果固定了第 i ...

  5. latch介绍

    latch是一种锁,用来实现对Oracle所有共享数据结构的串行化访问.共享池就是这样一个例子, 这是系统全局区中一个庞大的共享数据结构,Oracle正是在这里存储已解析,已编译的SQL. 修改这个共 ...

  6. java学习之变量

    看完了常量,那我们来看下变量. 变量顾名思义,也就是能变化的量,也就是说已经定义之后它的值仍然是可以变的,不像常量一经定义便不能够改变了.比如说现在我们需要一个数,需要用户输入之后才能,确定这个数是几 ...

  7. OpenCV 2.4.3在VS2010上的应用

    一.下载和安装:    1.OpenCV 2.4.3下载:http://www.opencv.org.cn/index.php/Download#Version_2.4.3    2.下载完成后,解压 ...

  8. 「Poetize8」Divisible

    描述 Description 设F[i]为斐波那契数列的第i项,F[1]=1,F[2]=1,F[i]=F[i-1]+F[i-2](i>=3). 输入格式 InputFormat 输入包含若干行( ...

  9. ♫【异步】短小强悍的JavaScript异步调用库

    短小强悍的JavaScript异步调用库 var queue = function(funcs, scope) { (function next() { if(funcs.length > 0) ...

  10. QTP关于AOM的Javascript启动方式

    序 QTP的AOM模型想必大家都很熟悉了,平时常用的就是通过VBS脚本的方式编写启动程序(也是我现在用的方法).其实,还有很多其他的方式,如Java,C#,JS,这些语言都是通过调用QTObjectM ...