* Fastboot - [[Android Fastboot]] is a tool to boot and manipulate the partitions on an Android development phone.

+

==== adb ====

−

* toolchains -

+

adb is the android debugger - it also doubles as file transfer agent.

−

* logging system -

+

The setup consists of an <tt>adbd</tt> on the target in the <tt>/sbin</tt> directory. On the host two programs are run: the <tt>adb</tt> application (in the SDK's <tt>tools</tt> directory) and an adb server, started by the adb application.

+

+

For emulators, adb will usually run automagically.

+

+

For real boards - with debugging over USB, you might need to do work, as is documented here: http://developer.android.com/guide/developing/device.html#setting-up .

+

+

For real boards that do not have a USB connection but have Ethernet instead, you might need to do a few tricks.

+

* make sure that adbd runs on the board. If it doesn't run, you might want to check the <tt>init.rc</tt> file.

+

* make sure that the network connection between host and the board is working - test pinging both ways.

+

* on the host, type the following (and yes, you need to specify the board's IP address on the host):

+

ADBHOST=<target-ip> tools/adb kill-server

+

ADBHOST=<target-ip> tools/adb shell

+

* you should now get a prompt on the board, you can exit the prompt if you want.

+

* <tt>tools/adb devices</tt> should now list the device.

+

+

==== aapt ====

+

The Android Asset Packaging Tool is used to create, inspect and manage Android packages.

+

+

You can use this to see details about a package, it's resources, and xml information.

+

+

The [http://developer.android.com/guide/developing/tools/aapt.html Android developer page on aapt] is somewhat meager.

+

+

See [[Android aapt]] for substantially more information.

+

+

==== ddms ====

+

The Dalvik Debug Monitor Server is a host-based tool which interacts with and Android target system

+

and can show numerous bits of information, including the log, cpu and memory utilization, and

+

lots of details about individual processes.

+

+

See the [http://developer.android.com/guide/developing/tools/ddms.html DDMS developer guide]

+

+

+

==== Fastboot ====

+

[[Android Fastboot]] is a tool to boot and manipulate the partitions on an Android development phone.

+

+

==== Toolchains ====

+

Android provides pre-built toolchains (C/C++ compilers and linkers), but requires the installation of a java compiler (JDK) from an external source.

+

+

As of NDK version r5 (December 2010), the toolchains can now be used in standalone cross-compiler mode.

+

See docs/STANDALONE-TOOLCHAIN.html in the NDK for information about this. Previously, the toolchains

+

could be used within the build system, but it was difficult and error prone to compile native programs outside the Android build system with them.

The officially supported integrated development environment (IDE) is [http://www.eclipse.org/ Eclipse] (currently 3.4 or 3.5) using the Android Development Tools (ADT) Plugin, though developers may use any text editor to edit Java and XML files then use command line tools (Java Development Kit and Apache Ant are required) to create, build and debug Android applications as well as control attached Android devices (e.g., triggering a reboot, installing software package(s) remotely).

Android SDK

host-side tools

adb

adb is the android debugger - it also doubles as file transfer agent.
The setup consists of an adbd on the target in the /sbin directory. On the host two programs are run: the adb application (in the SDK's tools directory) and an adb server, started by the adb application.

ddms

The Dalvik Debug Monitor Server is a host-based tool which interacts with and Android target system
and can show numerous bits of information, including the log, cpu and memory utilization, and
lots of details about individual processes.

Fastboot

Android Fastboot is a tool to boot and manipulate the partitions on an Android development phone.

Toolchains

Android provides pre-built toolchains (C/C++ compilers and linkers), but requires the installation of a java compiler (JDK) from an external source.

As of NDK version r5 (December 2010), the toolchains can now be used in standalone cross-compiler mode.
See docs/STANDALONE-TOOLCHAIN.html in the NDK for information about this. Previously, the toolchains
could be used within the build system, but it was difficult and error prone to compile native programs outside the Android build system with them.

Emulator

The emulator is a version of QEMU, which mimics the instruction set of an ARM processor, and
the hardware that one might find on a mobile phone. The emulator runs on an x86 system,
but executes an ARM linux kernel and programs. The flow of control is:

Eclipse

The officially supported integrated development environment (IDE) is Eclipse (currently 3.4 or 3.5) using the Android Development Tools (ADT) Plugin, though developers may use any text editor to edit Java and XML files then use command line tools (Java Development Kit and Apache Ant are required) to create, build and debug Android applications as well as control attached Android devices (e.g., triggering a reboot, installing software package(s) remotely).

Hardware

Serial Cable for G1

You can build a serial cable to use with the G1, which is helpful to see kernel boot messages
on the serial console.