Windows下下载Android源代码的方法
- 格式:docx
- 大小:159.97 KB
- 文档页数:5
一、前言Google Android发布了NDK,引起了很多发人员的兴趣。
NDK全称:Native Development Kit,官方下载地址:/sdk/ndk/index.html1.NDK是什么The Android NDK is a toolset that lets you embed components that make use of native code in your Android applications.Android applications run in the Dalvik virtual machine. The NDK allows you to implement parts of your applications using native-code languages such as C and C++. This can provide benefits to certain classes of applications, in the form of reuse of existing code and in some cases increased speed.英语不好的,自己GOOGLE吧。
简而言之,NDK就是一套基于C和C++底层开发API的集成工具组件,使用NDK开发编译的应用程序同样可以基于虚拟机Dalvik上“疯跑”。
如果你问为啥推出NDK,敝人以为C和C++开发的应用程序其卓越性能不用提了,至少C和C++被反编译的可能性降低了很多,要比JAVA安全保密多了。
2.ANDROID NDK 带来了什么a)一套工具,基于本机编译的C和C++源代码库。
b)一种部署在ANDROID设备上,可以将so和java一起打包成APK的方法。
c) A set of native system headers and libraries that will be supported in all future versions of theAndroid platform, starting from Android 1.5. Applications that use native activities must be run onAndroid 2.3 or later.(自个理解吧,最好别用GOOGLE,我试过了不是人话。
Android: Android源码下载方法详解分类:Android平台安卓源码下载地址:/source/downloading.html相信很多下载过内核的人都对这个很熟悉git clone git:///kernel/common.git kernel但是这是在以前,现在如果这么执行的话,会显示如下内容Initialized empty Git repository in /home/star/working/kernel/.git/[0: 149.20.4.77]: errno=Connection refusedfatal: unable to connect a socket (Connection refused)通过浏览器输入/,发现该网站已经被重定向为/source/downloading.html可以在该页面的最后发现内核的下载方法。
下面我们介绍一下Android源码下载的步骤。
工作环境:操作系统:Ubuntu 10.04 或Ubuntu10.10git程序:1.7.0.4 或1.7.1转载请注明出处:/pku_android方法一:1.1 初始化安装环境参考网页/source/initializing.html主要要做的就是安装jdk和安装一些软件包$ sudo apt-get install git-core gnupg flex bison gperf build-essential \zip curl zlib1g-dev libc6-dev libncurses5-dev x11proto-core-dev \libx11-dev libreadline6-dev libgl1-mesa-dev tofrodos python-markdown \libxml2-utils如果已经安装了,就不许要这步了1.2 无论下载内核和源码,都需要进行如下操作参考网页/source/downloading.html$ mkdir ~/bin$ PATH=~/bin:$PATH$ curl https:///dl/googlesource/git-repo/repo > ~/bin/repo如果出现: repo init error: could not verify the tag 'v1.12.7',执行下面的命令:curl /git-repo-downloads/repo > ~/bin/repo $ chmod a+x ~/bin/repo建立一个文件夹,以便下载的内容保存其中$ mkdir WORKING_DIRECTORY$ cd WORKING_DIRECTORY@@@ 以下可以脚本实现autogit.rar @@@1.3 内核下载$ git clone https:///kernel/common.git kernel命令行最后面的kernel的意思是保存在这个文件夹下,所以可以是任何名字,该文件夹不需要自己去创建,最后的这个不写也没问题如果想下载其他版本的内核$ git clone https:///kernel/goldfish.git$ git clone https:///kernel/msm.git$ git clone https:///kernel/omap.git$ git clone https:///kernel/samsung.git$ git clone https:///kernel/tegra.git下载过程中,会有如下信息,速度快慢取决于网速了。
Android开发教程第一部分:安装SDK这里介绍如何安装Android的SDK开发包和配置开发环境。
如果你还没有下载SDK,点击下面的链接开始。
Download the Android SDK系统和软件配置要求要通过Android SDK中提供的代码和工具进行Android应用程序的开发,需要一个合适的用于开发的电脑和合适的开发环境,具体要求如下:支持的开发环境EclipseEclipse 3.2,3.3(Europa)Android开发工具插件(可选)其他的开发环境或者IDEJDK5.0或者JDK6.0(仅有JRE是不够的)安装SDK下载好SDK包后,将zip文件解压缩至合适的地方。
在下文中,我们默认你的SDK安装目录为$SDK_ROOT 你可以选择将$SDK_ROOT/tool s加入到你的路径中1.Linux下,打开文件~/.bash_profile或者~/.bashrc,找到设定PATH环境变量的一行,将$SDK_ROOT/tools的完整路径加入其中。
如果没有找到设定PATH变量的行,你可以自己添加一行:export PATH=${PATH}:<你的$SDK_ROOT/tools的完全路径>2.Mac下,在你的home目录中找到文件.bash_profile,和Linux的一样处理。
如果还没有在机器上设定这个文件,你可以创建一个.ba sh_profile文件。
3.Windows下,右键点击【我的电脑】,选择【属性】,在【高级】页中,点击【环境变量】按键,在弹出的对话框中双击“系统变量”中的变量“Path”,将$SDK/tools的完全路径加入其中。
通过将$SDK/tools加入系统路径,在运行adb和其它一些命令行工具时就不需要键入完全路径名了。
需要注意到是,当你升级了SDK后,如果安装路径有变动的话,不要忘记了更新你的PATH变量的设置,将其指向变动后的路径。
安装Eclipse插件(ADT)如果你选择Eclipse作为Android的开发环境,可以安装一个专门为Android定制的插件:Android Development Tools(ADT),ADT插件集成了对Android工程和工具的支持,它包含了大量功能强大的扩展,使得创建、运行、调试Android程序更简单更快捷。
Android 4.2源码的下载和编译环境的安装及源码的编译Google于2012.11.14发布了Android4.2的源码,下面把本人在ubuntu10.04 的64位系统上下载源码,和编译源码做个记录备份,也供有需要的人参考,若是在下载编译安装Android源代码遇到问题,可加QQ群交流: 217706590,难免有错,敬请见谅,还忘勿吝啬指出。
源代码下载、编译环境安装、源代码编译和运行模拟器的可能出现的一些错误在本文最后一章节,若出现类似错误,可以参考。
1、源码的下载源代码的下载,首先需要安装以下软件:curl 和git-core1.1安装curl:在终端中执行:sudo apt-get install curl1.2安装git-core1.2.1在用户目录下新建bin文件在终端中执行:mkdir ~/bin将~/bin添加环境变量,作用是:要将git软件下载安装在此目录,在别的目录运行可能会找不到此软件,所以要添加到环境变量中在终端中执行:PA TH=~/bin:$PATH1.2.2安装git-core在终端中执行:curl https:///dl/googlesource/git-repo/repo§> ~/bin/repo给repo执行权限:chmod a+x ~/bin/repo1.3 下载源代码1.3.1进入要源代码将要保存的目录如我的源代码保存在:、/opt/android/src在终端中执行:cd /opt/android/src 进入到src目录中1.3.2 获取repo最新的配置repo init -u https:///platform/manifest§若是执行错误则用以下命令:~/bin/repo init -u https:///platform/manifest§1.3.3 下载源代码对于下载不同版本的android,指定一个manifest分支(即只指明android对应的版本),使用-b参数(即下载某个版本的源代码),如:对于4.2的版本,将命令修改为repo init -u https:///platform/manifest§ -b android-4.2_r1若是执行错误则用以下命令:~/bin/repo init -u https:///platform/manifest§ -b android-4.2_r1 执行以上命令后,会在/opt/android/src目录中生成一个.repo的目录,此目录保存了将要下载的源代码的相关信息同步获取源码#~/bin/repo sync如果中间出现中断,这个很正常,你可以再次输入~/bin/repo sync 命令来进行下载。
Android SDK开发包国内下载地址不知道是因为最近kaihui还是怎么的,打开android sdk官方网站特别的慢,想下载最新版本的platform几乎变成不可能完成的任务,不知道为什么Google不像Apache那样在各国设立镜像站。
为了预防今后再出现这样的情况,这次干脆把android开发所需要的各种包总结一下,顺便提供本地下载链接,省得以后找起来麻烦。
通过分析SDK Manager里要用到的repository文件,我下载了目前google提供的各类安卓开发包并上传到了网盘。
由于网盘有CDN支持,即使不用迅雷,下载速度依然很快。
如果你从官网下载很慢,不妨试试这些国内链接。
更新2015/3/11:完善了sysimg部分,增加了Level 21的x86平台sysimg链接。
更新2015/1/5:增加了android 5.0的sample下载。
更新2014/12/19:增加了Support包下载,更新了doc资源版本和下载链接;更新了Andr oid Studio版本到1.0.1,更新了SDK Tools到r24。
更新2014/12/2:更新了SDK Tools的版本,从22.6到23.0.2;增加了Android Studio下载。
更新2014/10/23:增加了部分Android-L资源下载。
更新2014/10/23:感谢CodeDream分享的另一个国内下载网址,内容比较全(没有adt-b undle)速度较快,推荐。
更新2014/8/15:更新了level14-17的samples包;增加了level18-20的samples包;增加了level20版本的源码包;增加了level18-20的platform包。
更新2014/8/7:增加了level18和level19的源码包,并更新了其他版本源码包的链接。
更新2014/7/1: 百度和微云的大部分链接都失效了,重新更新了adt-bundle和sdk的下载链接,部分文件版本有升级。
Android系统开发编译环境配置主机系统:Ubuntu9.04(1)安装如下软件包sudo apt-get install git-coresudo apt-get install gnupgsudo apt-get install sun-java5-jdksudo apt-get install flexsudo apt-get install bisonsudo apt-get install gperfsudo apt-get install libsdl-devsudo apt-get install libesd0-devsudo apt-get install build-essentialsudo apt-get install zipsudo apt-get install curlsudo apt-get install libncurses5-devsudo apt-get install zlib1g-devandroid编译对java的需求只支持jdk5.0低版本,jdk5.0 update 12版本和java 6不支持。
(2)下载repo工具curl /repo >/bin/repochmod a+x /bin/repo(3)创建源代码下载目录:mkdir /work/android-froyo-r2(4)用repo工具初始化一个版本(以android2.2r2为例)cd /work/android-froyo-r2repo init -u git:///platform/manifest.git -b froyo初始化过程中会显示相关的版本的TAG信息,同时会提示你输入用户名和邮箱地址,以上面的方式初始化的是android2.2 froyo的最新版本,android2.2本身也会有很多个版本,这可以从TAG信息中看出来,当前froyo的所有版本如下:* [new tag] android-2.2.1_r1 -> android-2.2.1_r1* [new tag] android-2.2_r1 -> android-2.2_r1* [new tag] android-2.2_r1.1 -> android-2.2_r1.1* [new tag] android-2.2_r1.2 -> android-2.2_r1.2* [new tag] android-2.2_r1.3 -> android-2.2_r1.3* [new tag] android-cts-2.2_r1 -> android-cts-2.2_r1* [new tag] android-cts-2.2_r2 -> android-cts-2.2_r2* [new tag] android-cts-2.2_r3 -> android-cts-2.2_r3这样每次下载的都是最新的版本,当然我们也可以根据TAG信息下载某一特定的版本如下:repo init -u git:///platform/manifest.git -b android-cts-2.2_r3(5)下载代码repo syncfroyo版本的代码大小超过2G,漫长的下载过程。
Android NDK安装2011-07-30 00:21前面介绍Windows下Android 开发环境配置,主要是面向JAVA开发环境,对只做APK上层应用开发人员来讲,基本够用了,由于Linux系统的权限限制和Android封装架构限制,很多涉及底层设备、接口、驱动控制的应用开发,不得不使用到本文的NDK开发环境(基于Android源码或内核源码修改),开发语言使用C/C++,NDK开发更接近于Linux开发,需要更多关于Linux应用编程知识。
本文就介绍一下NDK环境搭建及基础编程思想。
本文演示环境:Windows 7 Ultimate+Cygwin+NDK r4。
基础阅读:Windows下Android开发环境搭建和配置Android开发入门之环境概念介绍一、下载android NDK您可以下载NDK r4 for Windows或NDK r5 for Windows安装包,下载地址:地址:/sdk/ndk/index.html下载后解压缩到你的工作目录,例如:E:\Android\develop,结果如下图:Android NDK包含build、docs、samples、sources、GNUmakefile、ndk-build、ndk-gdb及readme等内容。
samples下面包含几个实例开发演示项目,第一次接触NDK开发,建议先从示例开始。
下面先看一下编译环境配置。
二、下载Cygwin由于NDK开发大都涉及到C/C++在GCC环境下编译、运行,所以在Windows环境下,需要模拟Linux模拟编译环境,下载地址:/下载后是个setup.exe文件,使用过程如下:第一步:运行setup程序,第一步图略,直接点击Next进入下一步。
第二步:选择安装方式,第一次可以采用Direct Connection在线下载安装,如有现成的离线包,可以选择离线安装(Install from Local Directory)。
apk源代码查看(2010-12-13 12:24:35)转载▼标签:杂谈一、获得APK源代码:工具下载:需用到dex2jar和JD-GUI这2个工具dex2jar下载地址:/files/dex2jar-0.0.7-S NAPSHOT.zipJD-GUI下载地址:windows版JD-GUI:/files/jdgui.zipLinux版JD-GUI:/files/jd-gui-0.3.2.linu x.i686.tar.gz步骤:1.把apk文件改名为.zip,然后解压缩,得到其中的classes.dex文件,它就是java文件编译后再通过dx工具打包成的,所以现在我们就用上述提到的2个工具来逆方向导出java源文件2.把classes.dex拷贝到dex2jar.bat所在目录。
在命令行模式下定位到dex2jar.bat所在目录,运行dex2jar.batclasses.dex ,生成classes.dex.dex2jar.jar3.运行JD-GUI工具(它是绿色无须安装的)打开上面的jar文件,即可看到源代码---------------------------------------------------------------------------------二.反编译apk生成程序的源代码和图片、XML配置、语言资源等文件。
工具下载:在/p/android-apktool/下载获得,apktool-1.0.0.tar.bz2和apktool-install-windows-2.1_r01-1.zip两个包。
1.解压缩下载的两个文件包,apktool-install-windows-2.1_r01-1.zip解压缩后得到的包里有aapt.exe和apktool.bat.(注意要把apktool-1.0.0.tar.bz2解压后的一个.jar文件copy进来)2.打开命令窗口(开始>运行,输入cmd,回车。
windows 下android开发环境搭建初学android开发,网上搜到的内容,记录一下供以后参考一、基本概念:1、Android是什么?Android是Google主导开发的基于Linux开源智能移动终端操作系统。
Android架构如下(源于Google官方):2、什么是Android开发环境?Android开发环境当然是用来设计应用于移动设备的系统和软件。
3、可以使用哪些语言来开发?开发语言可以使用Java也可以使用C/C++语言,前者Android开发我们称做JDK(Java Development Kit)开发,后者开发我们称之为NDK(Native Development Kit)开发。
4、Android开发环境可以搭建在哪些系统?Android开发环境可以搭建在目前主流系统(Mac、Windows、Linux)的任何一种上,只因为Android相关开发工具的跨平台特性。
5、开发工具a) JDK(Java Development Kit)Java Development(JDK)是用于开发、编译和测试使用Java语言编写的应用程序、applet 和组件,JDK包含以下几个部分:∙开发工具——指工具和实用程序,可帮助您开发、执行、调试和保存以Java编程语言编写的程序。
∙运行时环境——由JDK 使用的Java Runtime Environment (JRE) 的实现。
JRE 包括Java 虚拟机(JVM)、类库以及其他支持执行以Java 编程语言编写的程序的文件。
∙附加库——开发工具所需的其他类库和支持文件。
∙演示applet 和应用程序——Java 平台的编程示例源码。
∙样例代码——某些Java API 的编程样例源码。
∙ C 头文件——支持使用Java 本机界面、JVM工具界面以及JavaTM 平台的其他功能进行本机代码编程的头文件。
∙源代码——组成Java 核心API 的所有类的Java源文件。
1. 首先,到/p/msysgit/downloads/list下载Git-xxx.exe,下载完成后安装Git。
2. Android代码仓库的地址访问该地址。
可以看到Android项目中,所有的包的列表。
单个包源码的下载方式:创建目录,运行Git,在Git提供的shell,切换路径到你刚才创建的目录下(cd命令),然后运行下表命令(以common.git为例)git clone git:///kernel/common.git3.在linux下可以使用repo批量下载,可惜的是repo没有windows 版本。
4. windows直可以使用批量脚本。
脚本文本如下,持贝以下字符一个文本文件中,命名为:autoget.sh,将该文本保存到用来下载源码的目录中。
运行Git,在Git提供的shell,切换路径到你刚才创建的目录下(cd命令),运行./autogit.sh#Create by CreatAutoGetShmkdir kernelcd kernelgit clone git:///kernel/common.gitgit clone git:///kernel/experimental.gitgit clone git:///kernel/msm.gitgit clone git:///kernel/omap.gitcd ..mkdir platformcd platformgit clone git:///platform/bionic.gitmkdir bootablecd bootablemkdir bootloadercd bootloadergit clone git:///platform/bootable/bootloader/legacy.gi tcd ..git clone git:///platform/bootable/diskinstaller.gitgit clone git:///platform/bootable/recovery.git cd ..mkdir bootloadercd bootloadergit clone git:///platform/bootloader/legacy.git cd ..git clone git:///platform/build.gitgit clone git:///platform/dalvik.gitgit clone git:///platform/development.git mkdir externalcd externalgit clone git:///platform/external/aes.gitgit clone git:///platform/external/alsa-lib.git git clone git:///platform/external/alsa-utils.git git clone git:///platform/external/apache-http.gitgit clone git:///platform/external/astl.gitgit clone git:///platform/external/bison.gitgit clone git:///platform/external/bluez.gitgit clone git:///platform/external/bzip2.gitgit clone git:///platform/external/clearsilver.gitgit clone git:///platform/external/dbus.gitgit clone git:///platform/external/dhcpcd.git git clone git:///platform/external/dosfstools.gitgit clone git:///platform/external/dropbear.git git clone git:///platform/external/e2fsprogs.gitgit clone git:///platform/external/eglib.gitgit clone git:///platform/external/elfcopy.git git clone git:///platform/external/elfutils.git git clone git:///platform/external/embunit.git git clone git:///platform/external/emma.git git clone git:///platform/external/esd.gitgit clone git:///platform/external/expat.gitgit clone git:///platform/external/fdlibm.git git clone git:///platform/external/freetype.git git clone git:///platform/external/fsck_msdos.gitgit clone git:///platform/external/genext2fs.gitgit clone git:///platform/external/giflib.gitgit clone git:///platform/external/googleclient.gitgit clone git:///platform/external/grub.gitgit clone git:///platform/external/gtest.gitgit clone git:///platform/external/hcidump.git git clone git:///platform/external/icu4c.gitgit clone git:///platform/external/iptables.git git clone git:///platform/external/jdiff.gitgit clone git:///platform/external/jhead.gitgit clone git:///platform/external/jpeg.gitgit clone git:///platform/external/junit.gitgit clone git:///platform/external/lcc.gitgit clone git:///platform/external/libffi.gitgit clone git:///platform/external/libpcap.git git clone git:///platform/external/libpng.git git clone git:///platform/external/libxml2.git git clone git:///platform/external/mtpd.gitgit clone git:///platform/external/netcat.gitgit clone git:///platform/external/neven.git git clone git:///platform/external/opencore.gitgit clone git:///platform/external/openssl.git git clone git:///platform/external/oprofile.git git clone git:///platform/external/ping.gitgit clone git:///platform/external/ppp.gitgit clone git:///platform/external/protobuf.git git clone git:///platform/external/qemu.gitgit clone git:///platform/external/safe-iop.git git clone git:///platform/external/skia.gitgit clone git:///platform/external/sonivox.git git clone git:///platform/external/sqlite.gitgit clone git:///platform/external/srec.gitgit clone git:///platform/external/strace.git git clone git:///platform/external/tagsoup.git git clone git:///platform/external/tcpdump.git git clone git:///platform/external/tesseract.git git clone git:///platform/external/tinyxml.git git clone git:///platform/external/tremor.git git clone git:///platform/external/webkit.gitgit:///platform/external/wpa_supplicant.git git clone git:///platform/external/xdelta3.git git clone git:///platform/external/yaffs2.gitgit clone git:///platform/external/zlib.gitcd ..mkdir frameworkscd frameworksgit clone git:///platform/frameworks/base.git mkdir optcd optgit clone git:///platform/frameworks/opt/com.google.a ndroid.gitgit clone git:///platform/frameworks/opt/com.google.a ndroid.googlelogin.gitgit clone git:///platform/frameworks/opt/emoji.gitcd ..mkdir policiescd policiesgit:///platform/frameworks/policies/base.git cd ..cd ..mkdir hardwarecd hardwaregit clone git:///platform/hardware/alsa_sound.gitgit clone git:///platform/hardware/libhardware.gitgit clone git:///platform/hardware/libhardware_legacy. gitgit clone git:///platform/hardware/msm7k.git git clone git:///platform/hardware/ril.gitcd ..git clone git:///platform/manifest.gitmkdir packagescd packagesmkdir appscd appsgit clonegit:///platform/packages/apps/AlarmClock.git git clone git:///platform/packages/apps/Browser.gitgit clone git:///platform/packages/apps/Calculator.git git clone git:///platform/packages/apps/Calendar.git git clone git:///platform/packages/apps/Camera.gitgit clone git:///platform/packages/apps/Contacts.git git clone git:///platform/packages/apps/Email.gitgit clone git:///platform/packages/apps/GoogleSearch. gitgit clone git:///platform/packages/apps/HTMLViewer.gi tgit clone git:///platform/packages/apps/IM.git git clone git:///platform/packages/apps/Launcher.gitgit clone git:///platform/packages/apps/Mms.gitgit clone git:///platform/packages/apps/Music.gitgit clone git:///platform/packages/apps/OTAProvisionin gClient.gitgit clone git:///platform/packages/apps/PackageInstall er.gitgit clone git:///platform/packages/apps/Phone.gitgit clone git:///platform/packages/apps/Settings.gitgit clone git:///platform/packages/apps/SoundRecorder .gitgit clone git:///platform/packages/apps/Stk.gitgit clone git:///platform/packages/apps/Sync.gitgit clonegit:///platform/packages/apps/Updater.gitgit clone git:///platform/packages/apps/VoiceDialer.git cd ..mkdir inputmethodscd inputmethodsgit clone git:///platform/packages/inputmethods/LatinI ME.gitgit clone git:///platform/packages/inputmethods/Open Wnn.gitgit clone git:///platform/packages/inputmethods/Pinyi nIME.gitcd ..mkdir providerscd providersgit clone git:///platform/packages/providers/Applicatio nsProvider.gitgit clonegit:///platform/packages/providers/CalendarP rovider.gitgit clone git:///platform/packages/providers/ContactsP rovider.gitgit clone git:///platform/packages/providers/Download Provider.gitgit clone git:///platform/packages/providers/DrmProvi der.gitgit clone git:///platform/packages/providers/GoogleCo ntactsProvider.gitgit clone git:///platform/packages/providers/GoogleSu bscribedFeedsProvider.gitgit clone git:///platform/packages/providers/ImProvide r.gitgit clone git:///platform/packages/providers/MediaProvider.gitgit clone git:///platform/packages/providers/Telephony Provider.gitgit clone git:///platform/packages/providers/UserDictio naryProvider.gitcd ..cd ..git clone git:///platform/prebuilt.gitgit clone git:///platform/recovery.gitmkdir systemcd systemgit clone git:///platform/system/bluetooth.git git clone git:///platform/system/core.gitgit clone git:///platform/system/extras.git mkdir wlancd wlangit clone git:///platform/system/wlan/broadcom.gitgit clone git:///platform/system/wlan/ti.gitcd ..cd ..mkdir vendorcd vendormkdir asuscd asusgit clone git:///platform/vendor/asus/eee_701.gitcd ..mkdir csrcd csrgit clone git:///platform/vendor/csr/unifi-105x.gitgit clone git:///platform/vendor/csr/unifi-60xx.gitcd ..mkdir htccd htcgit clone git:///platform/vendor/htc/dream-open.git cd ..mkdir qcomcd qcomgit clone git:///platform/vendor/qcom/surf.git cd ..cd ..cd ..mkdir toolscd toolsgit clone git:///tools/android-issuetrackerredirect.git git clone git:///tools/executablewar.gitgit clone git:///tools/gerrit-contactstore.gitgit clone git:///tools/gerrit-keyapplet.gitgit clone git:///tools/gerrit.gitgit clone git:///tools/gimd.gitgit clone git:///tools/gwtexpui.gitgit clone git:///tools/gwtjsonrpc.gitgit clone git:///tools/gwtorm.gitgit clone git:///tools/manifest.gitgit clone git:///tools/protobuf.gitgit clone git:///tools/repo.gitmkdir testcd testgit clone git:///tools/test/manifest.gitgit clone git:///tools/test/project0.git5. Android的代码库结构改变后,以上脚本将不能适应改变后的结构。
Ubentu编译Android源码(AOSP)前⾔:⼀直想要编译⼀下Android 源码,之前去google 看,下载要下载repo。
当时很懵逼,repo 是个什么?(repo 是⼀个python 脚本,因为Android 源码git 仓库太多,帮助管理git 仓库的,你不需要知道⾥⾯什么实现。
会⽤就⾏。
)然后往下看,看到⽹上说,编译Android AOSP 只能⽤Ubuntu,当时⾃⼰的⼼也哇哇凉啊。
⾃⼰只有⼀个⼯作的电脑,⾃⼰的电脑配置太低。
看⽹上说,还要200G 的空间。
(有⼀个拦路虎)之前⾃⼰给⾃⼰的windos 安装过双系统,但是好像⼀直启动不了。
现在想想,应该是因为当时没有设置引导盘的顺序吧。
现在我⽤⼀个usb 连接了⼀个1T的硬盘,⾥⾯安装了Ubentu . 如果我插了这个硬盘,启动的就是ubuntu, 如果没有,就是⼯作的windows 。
⼯作学习两不误。
不知道什么动⼒让我突破了所有上⾯的拦路虎,依然决然去编译源码。
⾯试的时候,别⼈提到过,我说我想,但是没有做到,别⼈说,那么你为了编译源码,你第⼀步应该怎么做? 我说⾸先下载源码,安装Ubuntu。
终于⼀步⼀步⾛过来了。
感谢⾯试的那个⼈给我指点,让我思考。
⼀路⾛来,少些艰⾟。
下载代码⽤了两天,还是下载的清华镜像的,公司的⽹太慢了,43G 下载了两天,然后正好周末,编译成功花费了两天周末时间,但是还是很值得的。
⾥⾯有很多坑,给⼤家分享下。
下载AOSP:google 的AOSP 的话,因为FQ和数据量太⼤,考虑国内的镜像。
这个⽹址是清华⼤学的镜像站。
由于⾸次同步需要下载约 30GB 数据,过程中任何⽹络故障都可能造成同步失败,我们强烈建议您使⽤初始化包进⾏初始化。
也就是我们直接下载⼀个git仓库。
这样的话,不会说,⽂件太⼤,git clone 的时候⽼是中断。
下载下载完成后记得根据 checksum.txt 的内容校验⼀下。
当时我是⽤Windows 迅雷下载的⽂件。
通过清华⼤学镜像下载Android源码并编译源码之前看源码都是在Windows下⽤SourceInsight看,虽然达到了研究源码的效果,但终究还是有遗憾。
趁着周末,准备在Ubuntu虚拟机上下载编译源码。
之前下源码时,有了解⼀些Android源码的情况。
⽹上的教程很多也是从⾕歌官⽹下源码,但是最近蓝灯不好⽤,FQ效率有点低,⽽且FQ 的⽹速肯定⽆法和国内的⽹速相⽐。
所以,从国内的镜像下载源码⽆疑是个更好的选择。
国内的镜像也有好⼏个,不过我最终选择了清华⼤学的镜像,也许这是学⽣时代的情怀影响了我。
根据教程内容,下载Android源码。
中间也遇到⼏个坑。
以下是下载步骤:1.打开终端2.依次输⼊以下命令:mkdir ~/binPATH=~/bin:$PATHcurl https:///git/git-repo -o ~/bin/repo #使⽤tuna的git-repo镜像chmod a+x ~/bin/repo3.打开bin⽂件夹下的repo⽂件,将REPO_URL = 'https:///git-repo'改为REPO_URL = 'https:///git/git-repo'4.使⽤每⽉更新的初始化包。
使⽤⽅法如下:wget -c https:///aosp-monthly/aosp-latest.tar # 下载初始化包tar xf aosp-latest.tarcd aosp# 解压得到的 aosp⼯程⽬录# 这时 ls 的话什么也看不到,因为只有⼀个隐藏的 .repo ⽬录repo sync # 正常同步⼀遍即可得到完整⽬录# 或 repo sync -l 仅checkout代码初始化包有40多G,趁着昨晚⽹速快,电脑下着,⾃⼰先去睡觉了,第⼆天起来已经下好了。
执⾏最后⼀⾏命令结束后,aosp⽂件夹⾥可以看到源码,这个源码是最新的(Android P),要其他版本的源码的话,可以切其他分⽀。
Ubuntu 10.04下编译Android源码全过程一、获取Android源代码Git是Linux Torvalds(Linux之父)为了帮助管理Linux内核开发而开发的一个开放源码的分布式版本控制软件,它不同于Subversion、CVS这样的集中式版本控制系统。
在集中式版本控制系统中只有一个仓库(Repository),许多个工作目录(Working Copy),而在Git这样的分布式版本控制系统中(其他主要的分布式版本控制系统还有BitKeeper、Mercurial、GNU Arch、Bazaar、Darcs、SVK、Monotone等),每一个工作目录都包含一个完整仓库,它们支持离线工作,本地提交可以稍后提交到服务器上。
因为Android是由Kernel、Dalvik、Bionic、Prebuilt、build等多个项目组成,如果我们分别使用Git来逐个获取显得很麻烦,所以Android项目编写了一个名为Repo的Python的脚本来统一管理这些项目的仓库,使得项目的获取更加简单。
在Ubuntu 8.04上安装Git只需要设定正确的更新源,然后使用apt-get就可以了,apt-get是一条Linux命令,主要用于自动从互联网的软件仓库中搜索、安装、升级、卸载软件或操作系统。
apt-get命令一般需要root权限执行,所以一般跟着sudo命令。
sudo apt-get install git-core curl这条命令会从互联网的软件仓库中安装git-core和curl。
其中curl是一个利用URL语法在命令行方式下工作的文件传输工具,它支持很多协议,包括FTP、FTPS、HTTP、HTTPS、TELENT等,我们需要安装它从网络上获取Repo脚本文件。
curl /repo >~/bin/repo这句命令会下载repo脚本文件到当前主目录的/bin目录下,并保存在文件repo中。
1、下载apktool,可以去Google的官方下载,地址:/p/android-apktool/得,apktool1.3.2.tar.bz2和apktool-install-windows-2.2_r01-3.tar.bz2两个包都要下。
解压apktool1.3.2.tar.bz2得到apktool.jar放到 C:\Windows ,解压apktool-install-windows-2.2_r01-3.tar.bz2到C:\Windows下,记住了,解压后的几个文件放到同一文件夹。
2、打开命令窗口(开始 > 运行,输入cmd,回车。
)进入到apktool.bat的文件夹里。
输入:apktool d C:\***.apk C:\***文件夹(命令行解释:apktool d 要反编译的文件输出文件夹)4、如果出了以下的问题:Exception in thread "main" ng.UnsupportedClassVersionError: Bad version n umber in .class fileat ng.ClassLoader.defineClass1(Native Method)at ng.ClassLoader.defineClass(ClassLoader.java:620)atjava.security.SecureClassLoader.defineClass(SecureClassLoader.java:124)at .URLClassLoader.defineClass(URLClassLoader.java:260)at .URLClassLoader.access$100(URLClassLoader.java:56)at .URLClassLoader$1.run(URLClassLoader.java:195)at java.security.AccessController.doPrivileged(Native Method)at .URLClassLoader.findClass(URLClassLoader.java:188)at ng.ClassLoader.loadClass(ClassLoader.java:306)at uncher$AppClassLoader.loadClass(Launcher.java:268)at ng.ClassLoader.loadClass(ClassLoader.java:251)at ng.ClassLoader.loadClassInternal(ClassLoader.java:319)版本问题,装了个jre6,在360中的软件管家可以找到的,记得装完后配置path路径,果然,ok。
androidsdk安装及开发环境部署引⾔在windows安装Android的开发环境不简单也说不上算复杂,本⽂写给第⼀次想在⾃⼰Windows上建⽴Android开发环境投⼊Android浪潮的朋友们,为了确保⼤家能顺利完成开发环境的搭建,⽂章写的尽量详细,希望对准备进⼊Android开发的朋友有帮助。
本教程将分为五个步骤来完成Android开发环境的部署。
第⼀步:安装JDK。
第⼆步:配置Windows上JDK的变量环境。
第三步:下载安装Eclipse 。
第四步:下载安装Android SDK 。
第五步:为Eclipse安装ADT插件。
第⼀步:安装JDK下载到本地电脑后双击进⾏安装。
JDK默认安装成功后,会在系统⽬录下出现两个⽂件夹,⼀个代表jdk,⼀个代表jre。
JDK的全称是Java SE Development Kit,也就是Java 开发⼯具箱。
SE表⽰标准版。
JDK是Java的核⼼,包含了Java的运⾏环境(Java Runtime Environment),⼀堆Java⼯具和给开发者开发应⽤程序时调⽤的Java类库。
我们可以打开jdk的安装⽬录下的Bin⽬录,⾥⾯有许多后缀名为exe的可执⾏程序,这些都是JDK包含的⼯具。
通过第⼆步讲到的配置JDK的变量环境,我们可以⽅便地调⽤这些⼯具及它们的命令。
JDK包含的基本⼯具主要有:javac:Java编译器,将源代码转成字节码。
jar:打包⼯具,将相关的类⽂件打包成⼀个⽂件。
javadoc:⽂档⽣成器,从源码注释中提取⽂档。
jdb:debugger,调试查错⼯具。
java:运⾏编译后的java程序。
第⼆步:配置Windows上JDK的变量环境很多刚学java开发的⼈按照⽹上的教程可以很轻松配置好Windows上JDK的变量环境,但是为什么要这么配置并没有多想。
我们平时打开⼀个应⽤程序,⼀般是通过桌⾯的应⽤程序图标双击或单击系统开始菜单中应⽤程序的菜单链接,⽆论是桌⾯的快捷图标还是菜单链接都包含了应⽤程序的安装位置信息,打开它们的时候系统会按照这些位置信息找到安装⽬录然后启动程序。
Android2.3源码下载(针对Windows环境)(2)>正文我最近在自学Android,当遇到问题时也只能看看开发文档,或者上网查资料解决,远有直接看源码来得直接。
国内倒是有个Android镜像网站,但不提供下载源码的链接;苦于没有下源码的地方,一气之下,上网搜索所有关于下载Androi d源码的方法和资料,看得朦朦胧胧的,不过还是终得正果。
下面总结下载And roid源码的整体过程(其实非常Easy!):一、前期准备1.下载Msysgit工具Windows环境下的Git客户端程序,下载地址:/p /msysgit/参见下图:2.安装Msysgit工具参见下图:3.在磁盘上建立一个文件夹存放Git工具下载下来的Android源码,参见下图:4.打开Git命令行窗口右键点击刚刚新创建的文件夹,参见下图:Git命令行窗口,参见下图:二、开始下载1.访问Android源码下载网站这个网站于SVN+APACHE那样的管理方式,访问地址: http://android.git. /参见下图:这一步很重要,再往下继续之前,先熟悉一下这个网站;尤其是上图红框部分,它们都是Android所属项目的路径。
你可以随便点击一个进去看看,里面还有链接,参见下图:可以让你查看它的下级目录,参见下图:为什么要说明这个?我一开始不知道有这个功能,找了半天才找到我想要的;因此以后想下载其它项目的源码,通过这个功能我们就会很容易地下载了。
2.在Git命令行中输入下载命令我们先来看下载命令语法,参见下图:解释说明:上图红框中“+”后面的project path就是上一步看到的那一栏子路径。
观察上一步的页面,可以知道Android的项目源码分散在各处;所以要有针对性去下载我们所需要的源码,这才是王道。
不过我找了老半天才找到我急需要的Android应用程序框架源码,位置在platform/frameworks/base.git。
声明:本资料中的所有内容均从网络收集并结合自己验证整理而成,如有问题,请及时联系。
――Windows-EclipseAndroid NDK开发环境搭建指南日期:2011-11-25收集者:Saratime目录1 Cygwin的搭建 (4)1.1 简介 (4)1.2 Cygwin的安装 (4)1.3 下载Android NDK (10)1.4 在Cygwin中配置NDK环境变量 (10)2 Eclipse的配置 (12)2.1 安装Eclipse CDT组件 (12)2.2 用NDK来编译程序 (13)2.3 配置C/C++的编译器 (13)插图目录图1-1 Cygwin Setup启动页面 (5)图1-2 选择下载源 (5)图1-3 选择安装目录 (6)图1-4 选择存放下载文件的位置 (7)图1-5 选择网络连接方式 (7)图1-6 选择下载站点 (8)图1-7 选择包 (9)图1-8 安装进度页面 (9)图2-1 Eclipse CDT安装页面 (13)图2-2 Config页面 (14)图2-3 新建编译器 (14)图2-4 配置编译器Main (15)图2-5 配置Refresh (16)图2-6 配置Refresh—设定目录 (16)图2-7 配置Build Options选项—设定目录 (17)图2-8 配置Build Options选项—设定目录 (17)1 Cygwin的搭建由于NDK编译代码时必须要用到make和gcc,所以必须先搭建一个linux环境,然后再在Eclipse中配置自动编译环境。
1.1 简介cygwin是一个在windows平台上运行的unix模拟环境,它对于学习unix/linux操作环境,或者从unix到windows的应用程序移植,非常有用。
通过它,就可以在不安装linux的情况下使用NDK来编译C、C++代码了。
下面我们按照下面的步骤,一步一步的安装cygwin吧。
Windows下下载Android源代码的方法
大家好,这篇文章我将教大家如何在Windows环境下下载Android源码,Android 自2007年11月5号发布以来,发展速度如此之快,和它走开源的路是分不开的。
我们在开发中有什么不明白不清楚的,直接把Android 源码下下来研究就可以了,看源代码将会让你提升很快!
在这之前大家先熟悉俩个代码版本管理工具SVN,以及Git。
SVN(Windows环境下最常用的):
svn(subversion)是近年来崛起的版本管理工具,是cvs的接班人。
目前,绝大多数开源软件都使用svn作为代码版本管理软件。
Git:
Git 是用于 Linux 内核开发的版本控制工具。
与常用的版本控制工具 CVS, Subversion 等不同,它采用了分布式版本库的方式,不必服务器端软件支持,使源代码的发布和交流极其方便。
Git 的速度很快,这对于诸如 Linux kernel 这样的大项目来说自然很重要。
Git 最为出色的是它的合并跟踪(merge tracing)能力。
而Google Android的项目是基于Git进行版本管理的,所以经常在Linux环境下开发的人,就不用我多说了,而大都数在Windows环境开发的人,就比较陌生了。
那下面我就手把手教你如何在Windows环境下Git Android源码。
第一步:Msysgit工具的下载(这个是Google为Windows环境下开发的Git客户端程序):
/p/msysgit/ 下载地址如图:
第二步:安装Msysgit软件(一直默认到底),如下图:
第三步:建立一个文件夹用来存放Git下来的Android 源码(我这里以G:/Android Src)为例,如下图:
第四步:右击Android Src文件夹选择Git Bash出现如下图所示:
第五步:查找我们要下载源代码的地址。
Android的源代码是放在下面地址下: /
这里以Launcher为例,我们Ctrl + F查找:输入Launcher如下图所示:
点击链接进入另一个页面:
第六步在Git Bash端输入如下命令,命令格式(如上图图示)
git clone git:///platform/packages/apps/Launcher.git
在Receiving Objects: 100%时候,我们在G:/Android Src/文件夹下多一个工程Launcher,这正是
我们所要的,如下图所示:
Ok通过以上的步骤我们就把Android Launcher的源代码拿到手了,下面就剩下你研究了!。