Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5208c59a authored by Scott Main's avatar Scott Main Committed by Android (Google) Code Review
Browse files

Merge "docs: workflow index"

parents 65b04adb 8f524103
Loading
Loading
Loading
Loading
+51 −80
Original line number Diff line number Diff line
@@ -2,14 +2,14 @@ page.title=Introduction
@jd:body

<p>To develop apps for Android devices, you use a set of tools that are included in the Android SDK.
Once you've downloaded and installed the SDK, you can access these tools right from your Eclipse IDE,
through the ADT plugin, or from the command line. Developing with Eclipse is the preferred method because
it can directly invoke the tools that you need while developing applications.</p>
Once you've downloaded Android Studio and the Android SDK tools you can access these tools directly.
You can also access most of the SDK tools from the command line. Developing with Android Studio is the
preferred method because it can directly invoke the tools that you need while developing applications.</p>

<p>However, you may choose to develop with another IDE or a simple text editor and invoke the
tools on the command line or with scripts. This is a less streamlined way to develop because you
will sometimes have to call command line tools manually, but you will have access to the same
  number of features that you would have in Eclipse.</p>
number of features that you would have in Android Studio.</p>

<div class="figure" style="width:461px">
  <img src="{@docRoot}images/developing/developing_overview.png"
@@ -20,35 +20,40 @@ it can directly invoke the tools that you need while developing applications.</p
  </p>
</div>

<p>The basic steps for developing applications (with or without Eclipse) are shown in figure 1. The
development steps encompass four development phases, which include:</p>
<h2>App Workflow</h2>

<p>The basic steps for developing applications (with or without Android Studio) are shown in 
figure 1. The development steps encompass four development phases, which include:</p>

<ul>
  <li><strong>Setup</strong>
  <li><strong>Environment Setup</strong>
    <p>During this phase you install and set up your development environment. You also create
      Android Virtual Devices (AVDs) and connect hardware devices on which you can install your
      applications.</p>
    <p>See <a href="{@docRoot}tools/devices/index.html">Managing Virtual Devices</a>
      and <a href="{@docRoot}tools/device.html">Using Hardware Devices</a> for more
    <p>See <a href="{@docRoot}tools/workflow/devices/index.html">Managing Virtual Devices</a>
      and <a href="{@docRoot}tools/workflow/device.html">Using Hardware Devices</a> for more
      information.
  </li>
  <li><strong>Development</strong>
    <p>During this phase you set up and develop your Android project, which contains all of the
    source code and resource files for your application. For more information, see
    <a href="{@docRoot}tools/projects/index.html">Create an Android project</a>.</p>
  <li><strong>Project Setup and Development</strong>
    <p>During this phase you set up and develop your Android Studio project and application modules,
    which contain all of the source code and resource files for your application. For more
    information, see
    <a href="{@docRoot}tools/workflow/projects/index.html">Create an Android project</a>.</p>
  </li>
  <li><strong>Debugging and Testing</strong>
    <p>During this phase you build your project into a debuggable <code>.apk</code> package that you
    can install and run on the emulator or an Android-powered device. If you are using Eclipse,
    builds are generated each time you project is saved. If you're using another IDE,
    you can build your project using Ant and install it on a device using
    <a href="{@docRoot}tools/help/adb.html">adb</a>. For more information, see
    <a href="{@docRoot}tools/building/index.html">Build and run your application</a>.</p>
    <p>Next, you debug your application using a JDWP-compliant debugger along with the debugging
    and logging tools that are provided with the Android SDK. Eclipse already comes packaged with
    a compatible debugger. For more information see,
    <a href="{@docRoot}tools/debugging/index.html">Debug your application with the
      SDK debugging and logging tools</a>.</p>
  <li><strong>Building, Debugging and Testing</strong>
    <p>During this phase you build your project into a debuggable <code>.apk</code> package(s) 
    that you can install and run on the emulator or an Android-powered device. Android Studio uses 
    a build system based on <a href="http://www.gradle.org/" target="_android">Gradle</a> 
    that provides flexibility, customized build variants, dependency resolution, and much more. 
    If you're using another IDE, you can build your project using Gradle and install it on a device 
    using <a href="{@docRoot}tools/help/adb.html">adb</a>. For more information, see
    <a href="{@docRoot}tools/workflow/building/index.html">Build and run your application</a>.</p>
    <p>Next, with Android Studio you debug your application using the
    <a href="{@docRoot}tools/help/monitor.html">Android Debug Monitor</a> and device log messages
    (<a href="{@docRoot}tools/help/logcat.html">logact</a>) along with the IntelliJ IDEA intelligent
    coding features. You can also use a JDWP-compliant debugger along with the debugging and logging
    tools that are provided with the Android SDK. For more information see
    <a href="{@docRoot}tools/debugging/index.html">Debug your application with the SDK debugging and logging tools</a>.</p>
    <p>Last, you test your application using various Android SDK testing tools. For more
    information, see <a href="{@docRoot}tools/testing/index.html">Test your application
    with the Testing and Instrumentation framework</a>.</p>
@@ -56,21 +61,24 @@ development steps encompass four development phases, which include:</p>
  <li><strong>Publishing</strong>
    <p>During this phase you configure and build your application for release and distribute your
    application to users. For more information, see
      <a href="{@docRoot}tools/publishing/publishing_overview.html">Publishing Overview</a>.</p>
    <a href="{@docRoot}tools/publishing/publishing_overview.html">Publishing
    Overview</a>.</p>
  </li>
</ul>



<h2 id="EssentialTools">Essential command line tools</h2>

  <p>When developing in IDEs or editors other than Eclipse, be familiar with
  all of the tools below, because you will have to run them from the command line.</p>
  <p>When developing in IDEs or editors other than Android Studio, be familiar with
  all of the tools below, because you will have to run them from the command line or script.</p>

  <dl>
    <dt><a href="{@docRoot}tools/help/android.html">android</a></dt>

    <dd>Create and update Android projects and create, move, and delete AVDs.</dd>

    <dt><a href="{@docRoot}tools/devices/emulator.html">Android Emulator</a></dt>
    <dt><a href="{@docRoot}tools/help/emulator.html">Android Emulator</a></dt>

    <dd>Run your Android applications on an emulated Android platform.</dd>

@@ -84,9 +92,9 @@ development steps encompass four development phases, which include:</p>
  source and third-party tools:</p>

  <dl>
    <dt>Ant</dt>
    <dt><a href="http://www.gradle.org/">Gradle</a> </dt>

    <dd>To compile and build your Android project into an installable .apk file.</dd>
    <dd>To compile and build your Android project into an installable .apk file(s).</dd>

    <dt>Keytool</dt>

@@ -99,52 +107,15 @@ development steps encompass four development phases, which include:</p>
    JDK.</dd>
  </dl>

  <p>If you are using Eclipse and ADT, tools such as <code>adb</code> and <code>android</code>
  are automatically called by Eclipse and ADT so you don't have to manually invoke these tools.
  <p>If you are using Android Studio, tools such as <code>adb</code> and <code>android</code>
  are automatically called by Android Studio so you don't have to manually invoke these tools.
  You need to be familiar with <code>adb</code>, however, because certain functions are not
accessible from
  Eclipse, such as the <code>adb</code> shell commands. You might also need to call Keytool and
Jarsigner to
  sign your applications, but you can set up Eclipse to do this automatically as well.</p>
  accessible from Android Studio, such as the <code>adb</code> shell commands. You might also
  need to call Keytool and Jarsigner to sign your applications, but you can set up Android Studio 
  to do this automatically as well.</p>

<p>For more information on the tools provided with the Android SDK, see the
  <a href="{@docRoot}tools/index.html">Tools</a> section of the documentation.</p>
  <a href="{@docRoot}tools/help/index.html">Tools</a> section of the documentation.</p>


<h2 id="ThirdParty">Other Third-Party Development Tools</h2>
<p>
	The tools described in this section are not developed by the Android SDK team. The Android Dev Guide
	    does not provide documentation for these tools. Please refer to the linked documents in each
	    section for documentation.
</p>
<h3 id="IntelliJ">Developing in IntelliJ IDEA</h3>
<div style="float: right">
<img alt="The IntelliJ graphical user interface" height="500px"
src="{@docRoot}images/developing/intellijidea_android_ide.png"/>
</div>
<p>
	IntelliJ IDEA is a powerful Java IDE from JetBrains that provides
	full-cycle Android development support in both the free Community
	Edition and the Ultimate edition.
</p>
<p>
	The IDE ensures compatibility with the latest Android SDK and offers a
	smart code editor with completion, quick navigation between code and
	resources, a graphical debugger, unit testing support using Android
	Testing Framework, and the ability to run applications in either the
	emulator or a USB-connected device.
</p>
<p>
	<strong>Links:</strong>
</p>
<ul>
	<li>
    	<a href="http://www.jetbrains.com/idea">IntelliJ IDEA official website</a>
</li>
	<li>
    	<a href="http://www.jetbrains.com/idea/features/google_android.html">Android support in IntelliJ IDEA</a>
</li>
	<li>
    	<a href="http://wiki.jetbrains.net/intellij/Android">IntelliJ IDEA Android Tutorials</a>
	</li>
</ul>