I would like to have a portable android development environment that I could take everywhere (e.g. a usb stick). The idea is to have a folder that would include:
I installed Eclipse 3.7.0, added ADT plugin and
The question is how can you make the avd's portable? How can .android folder be portable? I saw some solutions mentioning the creation of an environment variable but I was thinking of a solution that works out of the box, or an ,as much as possible, automated procedure. The OS should be windows 7, but ideally should work on any version. Any help would be greatly appreciated. Thanks.
Minimum space and configuration requirements: Officially android studio requires a minimum of 4GB RAM but 8GB RAM is recommended for it. It also requires a minimum of 2GB Disk Space but 4GB Disk Space is recommended for it. But these are the minimum requirements.
AS (Android Studio) itself is portable, however the JDK (Java Development Kit) which is required to run AS, is not. So you still need to install JDK on each computer you use. To set up gradle for offline, go to: File > Settings > Build, Execution, Deployment > Gradle then check Offline Work .
I think I found a way to do this on a Mac and Windows. I have tested both solutions on multiple computers, but not exhaustively.
I had basically the same approach as you, but the problem is that the relative path for the Android SDK in Eclipse breaks the AVD Manager for some reason. It wouldn't allow me to run existing or create new AVDs. I got around this by including an "initial_setup" script that is to be run one time to set the Android SDK based on where the user unzips this package. It also creates the initial AVD for them. So they download and unzip the package, run the initial_setup script, and are good to go with a default Android development environment.
The key is updating Eclipse ADT Plugin preferences to use the absolute path of the Android SDK. This is accomplished with this line from the script below. Note that the path for the preferences file is relative to the workspace (and the workspace path is set as relative to the Eclipse installation).
echo com.android.ide.eclipse.adt.sdk=$sdk_path >> ./workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/com.android.ide.eclipse.adt.prefs
Mac Instructions
Here's my unzipped directory structure:
android_dev_environment (root)
- android-sdk-macosx
- eclipse
- initial_setup
- workspace
And here are the contents of initial_setup:
#!/bin/bash
# Set the Android SDK path in Eclipse. Must be the absolute; a relative path
# does not work with the AVD Manager.
cd "$(dirname "$0")"
sdk_path=`pwd`/android-sdk-macosx
echo "Setting Android SDK path in Eclipse..."
echo com.android.ide.eclipse.adt.sdk=$sdk_path >> ./workspace/.metadata/.plugins/org.eclipse.core.runtime/.settings/com.android.ide.eclipse.adt.prefs
echo "Android SDK path set."
# Create a new AVD
echo "Creating new AVD..."
echo no | $sdk_path/tools/android create avd -n Android403 -t 1 --force
echo "AVD created."
Windows Instructions
Here's my unzipped directory structure:
android_dev_environment (root)
- android-sdk-windows
- eclipse
- initial_setup.bat
- java
- workspace
The Windows version has its own local JDK 6 in the java directory. Eclipse needs to know about it, so edit eclipse\eclipse.ini. Add the following lines above the -vmargs line:
-vm
..\Java\jdk1.6.0_33\bin\javaw.exe
And here are the contents of initial_setup.bat:
REM Set the Android SDK path in Eclipse. Must be the absolute; a relative path
REM does not work with the AVD Manager.
cd > temp.txt 2>&1
set /p sdk_path= < temp.txt
del temp.txt
set sdk_path=%sdk_path%\android-sdk-windows
set sdk_path=%sdk_path:\=\\%
set sdk_path=%sdk_path::=\:%
echo “Setting Android SDK path in Eclipse...”
echo com.android.ide.eclipse.adt.sdk=%sdk_path%>> .\workspace\.metadata\.plugins\org.eclipse.core.runtime\.settings\com.android.ide.eclipse.adt.prefs
echo “Android SDK path set.”
REM Create a new AVD
echo “Creating a new AVD...”
echo no | .\android-sdk-windows\tools\android create avd -n Android403 -t 1 --force
echo “AVD created.”
pause
For 64 bit Windows you also need to tweak the find_java.bat file in the Android SDK so that it finds the Java installed with the bundle. Add the following lines to android-sdk-windows\tools\lib\find_java.bat (before it runs its own check that starts with the comment "rem Check we have a valid Java.exe..."
set java_exe=%~dp0\..\..\..\Java\jdk1.6.0_33\bin\java.exe
set javaw_exe=%~dp0\..\..\..\Java\jdk1.6.0_33\bin\javaw.exe
if defined javaw_exe goto :EOF
How to Use the Environment Bundle
Note: Running initial_setup on a Mac or a PC multiple times does not hurt anything. The dev environment will break if the user moves the whole directory after initial_setup, but running initial_setup from the new location will fix it. I plan on including a README file with these instructions.
Hope this helps!
If your willing to use linux you could use a portable operating system on your flash drive with all your settings and programs exactly how you like them on any computer with a usb drive. Or use a live cd and save to another location. I dont know how you could do it with windows
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With