(Clarification) |
(Note the newer Fedoras and/or SDK versions do not need to disable audio) |
||
Line 66: | Line 66: | ||
=== Running Emulator === | === Running Emulator === | ||
---- | ---- | ||
{{admon/note|Note|This step was not necessary with Fedora 14 and r08 of the SDK}} | |||
Now we have created Android Virtual Device and we should start it, however, due to issues in AndroidSDK with sound, we will need to run it from command line | Now we have created Android Virtual Device and we should start it, however, due to issues in AndroidSDK with sound, we will need to run it from command line | ||
<pre> | <pre> |
Revision as of 16:25, 10 December 2010
Abstract
This page should provide "how-to" document about using Fedora Linux for developing applications for Android platform.
This document will cover requirements, steps how to go from source code till final application and how to use Android Emulator for testing of application.
Target Fedora version
F-12 and higher
Requirements
- Eclipse IDE (3.5 and higher is needed because of ADT plugin dependency on Equinox P2)
yum install eclipse-jdt
- Android SDK
Download SDK from page
http://developer.android.com
Install ADT plugin for Eclipse
- Start Eclipse, then select Help > Install new software...
- Click on the Available Software site hyperlink.
- In Available software sites dialog, click Add....
- In the Add Site dialog that appears, enter a name for the remote site (for example "Eclipse Update") in the "Name" field. In the Location field, enter one of these URLs, depending on your version of Eclipse:
http://download.eclipse.org/releases/galileo/
or
http://download.eclipse.org/releases/helios/
. This will add dependency which are required for ADT plugin.
- Again click on Add button and enter a name for the another remote site (for example, "Android Plugin") in the "Name" field. In the "Location" field, enter this URL:
https://dl-ssl.google.com/android/eclipse/
Note: If you have trouble acquiring the plugin, you can try using "http" in the URL, instead of "https" (https is preferred for security reasons).Click OK.
- Back in the Available Software view, you should now in see in drop down list "Android Plugin", select it and in box below see "Developer Tools" added to the list. Select the checkbox next to Developer Tools, which will automatically select the nested tools Android DDMS and Android Development Tools. Click Next.
- In the resulting Install Details dialog, the Android DDMS and Android Development Tools features are listed. Click Next to read and accept the license agreement and install any dependencies, then click Finish.
- Restart Eclipse.
Install Android SDK
- Download the SDK from http://developer.android.com/sdk/index.html
- Unpack it in your home directory, then rename it to ~/AndroidSDK
- Add into path environment variable ~/AndroidSDK in .bash_profile file in your home directory.
For example:
PATH=$PATH:$HOME/AndroidSDK:$HOME/AndroidSDK/tools export PATH
- Logout and login back to apply path change
Android Emulator
32 bit packages
# yum install glibc.i686 glibc-devel.i686 libstdc++.i686 zlib-devel.i686 ncurses-devel.i686 libX11-devel.i686 libXrender.i686 libXrandr.i686
AVD device
- cd into the ~/AndroidSDK directory and run tools/android to configure and create your first Android Virtual Device.
- Go to "Available Packages", select components for just those versions of Android you want to work with. For example:
- SDK Platform Android 2.1
- Documentation for Android SDK
- Click on "Install selected", then click on "accept all" and confirm with clicking on "Install". This will start component installation, when it will be done, click on close. When this will be done, we could proceed with creation of AVD device itself.
- Go to "Virtual Devices", Click on "New", this will open screen where you need to specify SD card size (I will use 62MiB), name of device (I will use "android_dev1", target (Android 2.1, if you want to develop for different target, you need to go to step 2 and install SDK platform for different version).
- Now click on "Create AVD" which will create Android Virtual Device.
Running Emulator
Now we have created Android Virtual Device and we should start it, however, due to issues in AndroidSDK with sound, we will need to run it from command line
./emulator -noaudio -avd android_dev1
And this will start emulator for us.
Hello Fedora
Configure Android in Eclipse
- Go to Window -> Preferences, click on Android and set SDK location to directory. (for example /home/user/AndroidSDK) and click on Apply.
- Click on apply to reload available targets
- choose target android SDK
- click on OK
Create a New Android Project
After you've created an AVD, the next step is to start a new Android project in Eclipse.
- From Eclipse, select File > New > Project. If the ADT Plugin for Eclipse has been successfully installed, the resulting dialog should have a folder labeled "Android" which should contain "Android Project". (After you create one or more Android projects, an entry for "Android XML File" will also be available.)
- Select "Android Project" and click Next.
- On next screen type Project Name ("HelloFedora"), Application name (Hello, Fedora), package name (com.example.hellofedora) which represent your namespace and name of activity in "Create Activity" box (HelloFedora). Choose target (if you have multiple targets) and click on "Finish". This will create project for you.
Development and Execution
- open HelloFedora.java and paste there example code from Hello Fedora Code section.
- click on windows -> preferences. In new window, open Android -> Launch and into "Options" text box insert "-noaudio"
- open separate console, cd ~/AndroidSDK/tools and execute ./emulator -noaudio @android_dev1 to start emulator. Wait for start of emulator (it could take several minutes)
- in eclipse, click on "run" and it will deploy application into Android Virtual Device.
Hello Fedora Code
package com.example.hellofedora; import android.app.Activity; import android.os.Bundle; import android.widget.TextView; public class HelloFedora extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); TextView tv = new TextView(this); tv.setText("Hello, Android Developer\n Thank you, for using Fedora Linux"); setContentView(tv); } }
--Hpejakle 11:25, 2 April 2010 (UTC)