ITPub博客

首页 > > > Android7.1 howto_build_SDK

Android7.1 howto_build_SDK

作者:dapan 时间:2018-10-23 14:13:40 0 删除 编辑

写Android的同学,编译相关的东西,需要的可以保存,不需要的请略过

文档是Android 7.1的

Copyright (C) 2009 The Android Open Source Project


Licensed under the Apache License, Version 2.0 (the "License");

you may not use this file except in compliance with the License.

You may obtain a copy of the License at


apache.org/licenses/LIC


Unless required by applicable law or agreed to in writing, software

distributed under the License is distributed on an "AS IS" BASIS,

WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

See the License for the specific language governing permissions and

limitations under the License.



Subject: How to build an Android SDK & ADT Eclipse plugin.

Date: 2009/03/27

Updated: 2015/09/09



Table of content:

0- License

1- Foreword

2- Building an SDK for MacOS and Linux

3- Building an SDK for Windows

4- Building an ADT plugin for Eclipse

5- Conclusion




----------

0- License

----------


Copyright (C) 2009 The Android Open Source Project


Licensed under the Apache License, Version 2.0 (the "License");

you may not use this file except in compliance with the License.

You may obtain a copy of the License at


apache.org/licenses/LIC


Unless required by applicable law or agreed to in writing, software

distributed under the License is distributed on an "AS IS" BASIS,

WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

See the License for the specific language governing permissions and

limitations under the License.




-----------

1- Foreword

-----------


This document explains how to build the Android SDK and the ADT Eclipse plugin.


It is designed for advanced users which are proficient with command-line

operations and know how to setup the pre-required software.


Basically it's not trivial yet when done right it's not that complicated.




--------------------------------------

2- Building an SDK for MacOS and Linux

--------------------------------------


First, setup your development environment and get the Android source code from

git as explained here:


source.android.com/sour


For example for the cupcake branch:


$ mkdir ~/my-android-git

$ cd ~/my-android-git

$ repo init -u android.googlesource.com -b master -g all,-notdefault,tools

$ repo sync


Then once you have all the source, simply build the SDK using:


$ cd ~/my-android-git

$ . build/envsetup.sh

$ lunch sdk-eng

$ make sdk


This will take a while, maybe between 20 minutes and several hours depending on

your machine. After a while you'll see this in the output:


Package SDK: out/host/darwin-x86/sdk/android-sdk_eng.<build-id>_mac-x86.zip


Some options:


- Depending on your machine you can tell 'make' to build more things in

parallel, e.g. if you have a dual core, use "make -j4 sdk" to build faster.


- You can define "BUILD_NUMBER" to control the build identifier that gets

incorporated in the resulting archive. The default is to use your username.

One suggestion is to include the date, e.g.:


$ export BUILD_NUMBER=${USER}-`date +%Y%m%d-%H%M%S`


There are certain characters you should avoid in the build number, typically

everything that might confuse 'make' or your shell. So for example avoid

punctuation and characters like $ & : / \ < > , and .




------------------------------

3- Building an SDK for Windows

------------------------------


Full Windows SDK builds are now only supported on Linux -- most of the

framework is not designed to be built on Windows so technically the Windows

SDK is build on top of a Linux SDK where a few binaries are replaced. So it

cannot be built on Windows, and it cannot be built on Mac, only on Linux.


I'll repeat this again because it's important:


To build the Android SDK for Windows, you need to use a *Linux* box.



A- Pre-requisites

-----------------


Before you can even think of building the Android SDK for Windows, you need to

perform the steps from section "2- Building an SDK for MacOS and Linux" above:

setup and build a regular Linux SDK. Once this working, please continue here.


Under Ubuntu, you will need the following extra packages:


$ sudo apt-get install tofrodos


tofrodos adds a unix2dos command



B- Building

-----------


To build, perform the following steps:


$ . build/envsetup.sh

$ lunch sdk-eng

$ make win_sdk


Note that this will build both a Linux SDK then a Windows SDK.

The result is located at

out/host/windows/sdk/android-sdk_eng.${USER}_windows/



C- Building just the tools

--------------------------------------


You can also build isolated windows tools directly on Linux without building

the full SDK.


To build, perform the following steps:


$ cd ~/my-android-git

$ . build/envsetup.sh

$ lunch sdk-eng

$ make winsdk-tools


A specific tool can be built using:


$ make host_cross_adb


Then the binaries are located at

out/host/windows-x86/bin/adb.exe



-------------------------------------

4- Building an ADT plugin for Eclipse

-------------------------------------


We've simplified the steps here.

It used to be that you'd have to download a specific version of

Eclipse and install it at a special location. That's not needed

anymore.


Instead you just change directories to your git repository and invoke the

build script by giving it a destination directory and an optional build number:


$ mkdir ~/mysdk

$ cd ~/my-android-git # <-- this is where you did your "repo sync"

$ sdk/eclipse/scripts/build_server.sh ~/mysdk $USER



The first argument is the destination directory. It must be absolute. Do not

give a relative destination directory such as "../mysdk" -- this would make the

Eclipse build fail with a cryptic message:


BUILD SUCCESSFUL

Total time: 1 minute 5 seconds

**** Package in ../mysdk

Error: Build failed to produce ../mysdk/android-eclipse

Aborting


The second argument is the build "number". The example used "$USER" but it

really is a free identifier of your choice. It cannot contain spaces nor

periods (dashes are ok.) If the build number is missing, a build timestamp will

be used instead in the filename.


The build should take something like 5-10 minutes.



When the build succeeds, you'll see something like this at the end of the

output:


ZIP of Update site available at ~/mysdk/android-eclipse-v200903272328.zip

or

ZIP of Update site available at ~/mysdk/android-eclipse-<buildnumber>.zip


When you load the plugin in Eclipse, its feature and plugin name will look like

"com.android.ide.eclipse.adt_0.9.0.v200903272328-<buildnumber>.jar". The

internal plugin ID is always composed of the package, the build timestamp and

then your own build identifier (a.k.a. the "build number"), if provided. This

means successive builds with the same build identifier are incremental and

Eclipse will know how to update to more recent ones.




-------------

5- Conclusion

-------------


This completes the howto guide on building your own SDK and ADT plugin.

Feedback is welcome on the public Android Open Source forums:

source.android.com/disc


If you are upgrading from a pre-cupcake to a cupcake or later SDK please read

the accompanying document "howto_use_cupcake_sdk.txt".


-end-

原文作者:;如有侵权,请联系管理员删除。

请登录后发表评论 登录
全部评论

注册时间:2020-08-07

  • 博文量
    4504
  • 访问量
    87173