- 浏览: 55391 次
- 性别:
- 来自: 深圳
最新评论
Android 入门 (一) 试用
Android的版本
android的版本有很多 0.9 ,1.0 ,1.5,1.6,2.0,2.1
09年4月15日 cupcake android 1.5
09年9月15 Donut android 1.6 : linux内核升级到2.6.29。cdma , wvga ,qvga 的支持
支持OpenCore2媒体引擎 , TTS
09年10月28日 android 2.0 Eclair
支持 HTML5
Revamped graphics architecture for improved performance that enables better hardware acceleration.
2010年1月 android 2.1 Flan
features 和2.0一样,主要是修改一些bugs
Android平台的代码
1 安装工具repo :
curl http://android.git.kernel.org/repo >~/bin/repo
chmod a+x ~/bin/repo
2 下载平台的代码
代码放在/media/H/android下面
1. 创建一个目录,放代码:
mkdir android
cd android
2. 运行 repo init 下载最新的源代码:
repo init -u git://android.git.kernel.org/platform/manifest.git
3. 当提示输入姓名和E-mail时,输入姓名和gmail的邮件地址。成功后会提示如下信息:
repo initialized in /android
4 下载
repo sync
Notes: 如果要下载别的版本的代码,比如cupcake 则在第2步
repo init -u git://android.git.kernel.org/platform/manifest.git -b cupcake
下载eclair 则
repo init -u git://android.git.kernel.org/platform/manifest.git -b eclair
android编译
Host : ubuntu 9.04
Java ,javac 版本 1.6
(一) 源码的编译
编译很简单 直接在android目录下 make ,等上5,6小时就可以了,不过android的编译系统要求java,javac的版本是1.5的,在build/core/main.mk里,
会对java,javac的版本进行检测。如果版本不对,则出现问题:
Checking build tools versions...
************************************************************
You are attempting to build with the incorrect version
of java.
Your version is: java version "1.6.0_0".
The correct version is: 1.5.
Please follow the machine setup instructions at
http://source.android.com/download
solution 1 :编辑 build/core/main.mk
修改
java_version := $(shell java -version 2>&1 | head -n 1 | grep '[ "]1/.5[/. "$$]')
javac_version := $(shell javac -version 2>&1 | head -n 1 | grep '[ "]1/.5[/. "$$]')
为
java_version := $(shell java -version 2>&1 | head -n 1 | grep '[ "]1/.6[/. "$$]')
javac_version := $(shell javac -version 2>&1 | head -n 1 | grep '[ "]1/.6[/. "$$]')
缺点: 但编译sdk的时候还是会出现问题 。
make sdk
Docs droiddoc: out/target/common/docs/services
javadoc: 错误 - 在 doclet 类 DroidDoc 中,方法 start 已抛出异常 java.lang.reflect.InvocationTargetException
com.sun.tools.javac.code.Symbol$CompletionFailure: 未找到 sun.util.resources.OpenListResourceBundle 的类文件
solition 2:安装1.5版本的jdk:
$ sudo apt-get install sun-java5-jdk flex
$ sudo update-java-alternatives -s java-1.5.0-sun
(二)SDK的编译
在编译完源码后,再执行 make sdk
在out/host/linux-x86/sdk下面有
android-sdk_eng.lawrencekang_linux-x86 android-sdk_eng.lawrencekang_linux-x86.zip sdk_deps.mk
模拟器的运行
现设置好环境变量
export PATH=$PATH:/media/H/android/out/host/linux-x86/bin
export ANDROID_PRODUCT_OUT=/media/H/android/out/target/product/generic
export ANDROID_SWT=/media/H/android/out/host/linux-x86/
然后执行 emulator
用法有:
1 用缺省的virtual device 运行模拟器
emulator
2 用某个皮肤来运行
emulaor -skin QVGA-L
emulator -skin WVGA800 则用WVGA800的皮肤来运行模拟器
但显示 :
emulator: emulator window was out of view and was recentred
我们可以通过-scale 选项来解决这个问题,针对我们这个WVGA skin,用./emulator -skin WVGA -scale 0.9来启动模拟器就没问题了
3 直接指定大小
emulator -skin 800x480
不过google的网站http://developer.android.com/上有这样一段话 :
The
Android SDK includes several Emulator skins that you can use to control
the resolution and density of the emulated device's screen. To select a
specific skin for running the emulator, create an AVD that uses that
skin. Please do not use deprecated emulator options such as -skin to
control the skin used by an emulator instance. For more information
about AVDs, see Android Virtual Devices.
意思是最好不要用-skin来运行模拟器,而要用-avd
创建avd用的工具是android
android
出现问题:
Error: Error parsing the sdk.
Error: /media/H/androidcupcake/out/host/linux-x86/platforms is missing.
Error: Unable to parse SDK content.
但在out/host/linux-x86/sdk/android-sdk_eng.lawrencekang_linux-x86/tools目录下 ./android 则可以
原来在out/host/linux-x86/sdk/android-sdk_eng.lawrencekang_linux-x86/下面有platforms目录,可见android会查找
上一级目录下的platforms目录
将platforms 和add-ons copy到 out/host/linux-x86下面
然后运行 android就可以了
创建的avd放在 ~/.android/avd下面
假如创建了一个foo ,则emulator -avd foo
模拟器跑起来后 ,还可以用adb shell 来执行 终端命令。
发表评论
-
(图片缩放)自动适配屏幕支持缩放旋转,自动居中的imageview
2013-04-19 17:01 6713废话不多说,直接代码。该imageview 只能代码里ne ... -
使用jdk中keytool生成证书
2012-05-23 15:56 18059-genkey 在用户主目录中创建一个默认文件 ... -
android 反编译
2012-05-23 15:02 1078转载自:http://blog.csdn.net/sun ... -
android 混淆
2012-05-23 14:49 5782注意:这里介绍的混淆是2.3SDK以后我方式。 ... -
weiview 笔记
2012-03-01 17:25 1763WebView在开发过程中应该注意几点: 1 ... -
android获取屏幕分辨率之DisplayMetrics
2011-12-22 10:12 2395android分辨率对于开发者来说是一项重要的信息。下面就来介 ... -
Ubuntu Android 的 USB 调试模式
2011-09-02 14:35 1848在Android开发者网站中, 它提供了在 Ubuntu ... -
Android 中的BroadCastReceiver
2011-08-30 14:04 1113Android 中的BroadCastReceive ... -
android桌面默认的5个应用图标的加载和存储
2011-08-30 14:01 27481) 桌面安装之后有5个默认的图标:search、contac ... -
访问其它程序的SharedPreferences中的数据
2011-08-30 13:58 2550I:访问本程序的(FirstApp) SharedPrefe ... -
android apk 程序签名
2011-08-30 13:53 948[前言] 我们平时在 ... -
ubuntu 10.10下搭建android开发环境 安装必要工作用软件
2011-08-30 13:50 1423在ubuntu下进行开发,就必须要熟悉ubuntu下常用的,能 ... -
androidSDK开发包tools工具介绍(一)--draw9patch
2011-04-27 11:16 2584开发环境的搭建就不做赘述了,网上一搜一大把。SDK ...
相关推荐
需要注意的是,编译Android源码可能需要大量的计算资源,包括内存和磁盘空间。此外,由于源码的复杂性,可能需要解决依赖问题、编译错误或配置问题。熟悉Android的构建系统,如`build.gradle`文件和`Android.mk`文件...
2. **内存和硬盘空间**:编译Android源码需要大量的内存和硬盘空间,建议至少使用8GB内存和100GB以上的硬盘空间。 3. **编译时间**:完整编译整个Android源码可能需要数小时甚至更长时间,因此建议根据需求仅编译所...
- 首先,安装Java Development Kit(JDK),这是编译Android源码的基础。官方推荐使用Sun JDK 1.5版本,尽管1.6版本也能用于部分编译过程,但在特定环节如make sdk时,仍需1.5版本的javadoc。 - 设置环境变量,将...
这个"Android源码反编译工具包"就是专为这种需求设计的,它包含了查看和分析Android应用源码所需的各种工具。下面将详细介绍这个工具包的关键组件和使用流程。 首先,反编译过程通常包括以下几个步骤: 1. **...
编译Android源码并生成`classes.jar`是一项复杂但极其有价值的工作,它能帮助开发者深入理解Android系统的运行机制,对优化应用性能、解决系统级问题或开发定制化ROM都有重大意义。通过学习这些知识,开发者可以更好...
AndroidKiller是一款常用的Android应用分析工具,它可以帮助开发者或安全研究人员查看APK的源代码、资源文件、反编译Dex文件等,以理解应用的工作原理或寻找潜在的安全漏洞。 在描述中提到的“修复反编译源码卡死”...
本文将对Android源代码的结构进行分析,帮助大家更好地理解和掌握Android系统。 首先,Android系统的源代码结构可以分为以下几个主要部分: 一、系统体系结构 Android系统体系结构是一种分层结构,包括应用层、...
文档"Android系统源代码情景分析"可能会详细解析上述某些关键点,通过实际案例和代码片段,帮助读者更好地理解和应用源码知识。这将有助于开发者解决实际问题,如系统崩溃调试、新功能实现、系统升级等问题。 总结...
3. **编译Android源码**:要编译Android源码,开发者需要搭建AOSP(Android Open Source Project)环境,安装必要的工具如Repo、JDK、NDK等,并执行make命令来构建系统。 4. **源码修改**:修改Android源码可能包括...
通过上述步骤,大多数在Ubuntu 64位环境下编译Android源码时遇到的常见错误均可得到妥善解决。然而,鉴于Android源码的复杂性,实际编译过程中可能还会遇到其他类型的错误或警告,开发者应持续关注编译日志,灵活...
- **JavaCC 4.0**:通过`sudo apt-get install javacc`安装,JavaCC是一个Java解析器生成器,用于处理源代码级别的语法分析。 - **Android SDK**:安装后需配置环境变量,确保Ant能够找到SDK路径。 - **...
### Linux下编译Android内核源码遇到的问题及解决方案 #### 概述 在尝试编译Android内核源码的过程中,经常会遇到各种错误提示。本文将针对这些常见的编译错误进行详细解析,并提供相应的解决办法。这对于那些正在...
要编译Android系统的源码,首先需要准备一个合适的开发环境。通常推荐使用64位Linux发行版,如Ubuntu或Fedora等。以下是一些关键步骤: 1. **安装必要的软件包**:确保已安装Git、make、gcc等工具。 2. **配置环境...
《Android系统源代码情景分析源码》是一份深入学习Android操作系统源码的宝贵资料,主要涵盖了应用层和系统层的源码分析。这份资源对于开发者来说是提升技术水平、理解Android系统内部运作机制的重要工具,旨在帮助...
Android编译系统的主要任务是将Java源代码编译成DEX(Dalvik Executable)文件,然后将DEX文件打包成APK文件。 二、Android编译系统组件 Android编译系统主要包括以下几个组件: 1、Java编译器:Java编译器负责...
在Android开发领域,有时需要对Android平台的源码进行深入研究或定制,这就涉及到了下载和编译Android源码的过程。下面将详细讲解这个过程。 一、下载Android源码 1. **主机环境准备**:这里以Fedora10为例,确保...
确保虚拟机软件与宿主机操作系统兼容,以免出现不兼容问题导致无法正常安装Ubuntu或运行Android源代码。 3. **安装Ubuntu系统**:使用VMWare创建一个新的虚拟机,并安装Ubuntu操作系统。建议使用Ubuntu 11.04版本的...
在Android开发领域,有时我们需要对APK应用进行深入分析,比如理解其工作原理、查找漏洞或进行二次开发,这时就需要用到Android源代码反编译工具。本工具包专为这些目的而设计,包含了实现这一目标所需的一系列工具...
《深入解析Android 15源代码》 在移动操作系统领域,Android一直占据着重要的地位,其开源特性使得开发者能够深入理解系统内部运作机制,从而进行更高效、更个性化的开发。"android-15源代码"是Android SDK的一个...