Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

What is the difference between some "Android Development/SDK tools"?

What is the difference between the Android Development Tools and the Android SDK Tools and the Android SDK Platform-tools and the Android SDK Build-tools?

And why not merge some of them into fewer groups? The 4 tools confused me when I downgrading/upgrading them.

like image 917
herbertD Avatar asked Jun 15 '13 07:06

herbertD


People also ask

What are Android SDK tools?

Android SDK Platform-Tools is a component for the Android SDK. It includes tools that interface with the Android platform, primarily adb and fastboot . Although adb is required for Android app development, app developers will normally just use the copy Studio installs.

Which SDK is better for Android Studio?

The Android SDK is optimized for Android Studio, and hence to effectively reap its benefits, you will need to install Android Studio. Having the Android SDK managed from within Android Studio is easier since support for languages like Java, Kotlin, and C++ is handled automatically.

What is difference between Android Studio and SDK?

Android SDK belongs to "Frameworks (Full Stack)" category of the tech stack, while Android Studio can be primarily classified under "Integrated Development Environment".


2 Answers

SDK Tools

The SDK tools are installed with the SDK starter package and are periodically updated. The SDK tools are required if you are developing Android applications. The most important SDK tools include the Android SDK Manager (android sdk), the AVD Manager (android avd) the emulator (emulator), and the Dalvik Debug Monitor Server (ddms). A short summary of some frequently-used SDK tools is provided below.

android

Lets you manage AVDs, projects, and the installed components of the SDK.

Dalvik Debug Monitor Server (ddms)

Lets you debug Android applications.

dmtracedump

Generates graphical call-stack diagrams from trace log files. The tool uses the Graphviz Dot utility to create the graphical output, so you need to install Graphviz before running dmtracedump. For more information on using dmtracedump, see Profiling with Traceview and dmtracedump

Draw 9-patch

Allows you to easily create a NinePatch graphic using a WYSIWYG editor. It also previews stretched versions of the image, and highlights the area in which content is allowed.

Android Emulator (emulator)

A QEMU-based device-emulation tool that you can use to design, debug, and test your applications in an actual Android run-time environment.

Hierarchy Viewer (hierarchyviewer)

Lets you debug and optimize an Android application's user interface.

hprof-conv

Converts the HPROF file that is generated by the Android SDK tools to a standard format so you can view the file in a profiling tool of your choice.

layoutopt

Lets you quickly analyze your application's layouts in order to optimize them for efficiency.

mksdcard

Helps you create a disk image that you can use with the emulator, to simulate the presence of an external storage card (such as an SD card).

Monkey

Runs on your emulator or device and generates pseudo-random streams of user events such as clicks, touches, or gestures, as well as a number of system-level events. You can use the Monkey to stress-test applications that you are developing, in a random yet repeatable manner.

monkeyrunner

Provides an API for writing programs that control an Android device or emulator from outside of Android code.

ProGuard

Shrinks, optimizes, and obfuscates your code by removing unused code and renaming classes, fields, and methods with semantically obscure names.

Systrace

Lets you analyze the execution of your application in the context of system processes, to help diagnose display and performance issues.

sqlite3

Lets you access the SQLite data files created and used by Android applications.

traceview

Provides a graphical viewer for execution logs saved by your application.

zipalign

Optimizes .apk files by ensuring that all uncompressed data starts with a particular alignment relative to the start of the file. This should always be used to align .apk files after they have been signed.

Platform Tools

The platform tools are typically updated every time you install a new SDK platform. Each update of the platform tools is backward compatible with older platforms. Usually, you directly use only one of the platform tools—the Android Debug Bridge (adb). Android Debug Bridge is a versatile tool that lets you manage the state of an emulator instance or Android-powered device. You can also use it to install an Android application (.apk) file on a device.

The other platform tools, such as aidl, aapt, dexdump, and dx, are typically called by the Android build tools or Android Development Tools (ADT), so you rarely need to invoke these tools directly. As a general rule, you should rely on the build tools or the ADT plugin to call them as needed.

Note: The Android SDK provides additional shell tools that can be accessed through adb, such as bmgr and logcat.

like image 99
Tarsem Singh Avatar answered Sep 19 '22 08:09

Tarsem Singh


Well, the Android Development Tools(ADT) is a plugin that is used in combination with Eclipse to develop apps.There is an ADT bundle that is a package that contains everything you need to start creating apps.

However the SDK Tools is a downloadable component for the Android SDK. It includes the complete set of development and debugging tools for the Android SDK.

What I'd recommend is that you download the ADT Bundle. It contains everything you need. At last Google I/O Android Studio was introduced but It's still in its beta version. It basically does what ADT does and allows you to view how your app will appear on many different devices.

like image 31
akinfermo Avatar answered Sep 19 '22 08:09

akinfermo