developing for android on android - android

I want to be able to develop and immediately run android apps on my device. I've played with sl4a and a bluetooth keyboard, but the app and ide weren't designed for what I want to do with them. what are my options?
clarification: I want a mobile dev env that doesn't involve any computer (other than my android device). I'd like a simple code editor, like emacs or scite ideally, and some kind of complete interpreter or compiler for the full android api that runs on the device. I'm dreaming, clearly, but how close can I get to that today?

I've gotten Vim working really well in ConnectBot on my Milestone. I needed root privileges because of where I put the files, but you might be able to find a work around without it.
See this link:
Native Vim for Android
See also my comment after the post. I've got $HOME setup on my sdcard, and a bunch of Python plugins and colorschemes in ~/.vim/ and everything just works.
Of course this requires you to be comfortable working in Vim... I've gone back and forth with it several times in the past. It is very strange, but once you pick up a few habits and figure out its odd vocabulary it is very nice to use!
I got a pure python version of Mercurial working on Android too. It was a pain, but now I can push and pull code from my repositories and keep my /sdcard/sl4a/scripts/ folders in sync with my latest changes. I documented some of what was necessary in a bug report to py4a.

Canonical just announced that they will be bringing Ubuntu to android devices. Hopefully this will help....
http://www.engadget.com/2012/02/21/ubuntus-full-desktop-os-coming-to-multi-core-android-devices/

Like FrinkTheBrave said, you can use an ide (Eclipse is perfect, because of the Android Development Tools, but you could use any other program.
If you work on Windows, and after installing the USB driver, you only need to plug your phone to the usb and hit Run (or debug), and Eclipse will copy the apk into your Android and start running. It takes less than 5 seconds.
If you work on a Mac, you don't need to install anything, just plug in the phone and it works =D.
Well, in Linux it is a bit more complicated (though not impossible, I actually work with Linux), but you can still develop there =).
Cheers
BIG BIG EDIT
I've seen today just what you asked few time ago. Here, take it: https://play.google.com/store/apps/details?id=com.aide.ui It's obviously hard to type on a smartphone, but it could do the trick on an EEEPad transformer. Have a good day

I'm not sure about developing on Android, but you can use one of the sdks available to write your code, then copy the apk onto the device via usb and install and run it.
It takes less than a minute from saving the source code to running on the target hardware.
I use the sdk at developer.android.com and eclipse on windows xp, and use AndroZip on my phone to install the sdk. simples ;-)
I've not looked into using usb debugging, but that could be even better.

Related

Emulator refuses to boot past Android screen

I am currently a QA intern at an app publisher and I use the AVD to test apps on various Android platforms and hardware builds. I touch nothing else within the Android SDK, just launch the android exec through the terminal and go from there.
I installed and started using AVDs with no issue about a month ago, installed the Intel HAXM with no issue, etc. It randomly stopped working for me about two weeks ago and I've been struggling with it since then. I've deleted everything from the Android SDK and reinstalled several times, tried using adb to no avail, nothing. I haven't been using Eclipse to get to the AVD Manager, but even when I do it makes no difference.
I've run into a dead end after trying every potential solution I could find on the Internet. Help me before I go insane.
Also using a Retina MacBook Pro, not that I think that'd make a difference, but just incase.
I am going to put this up as an answer just because I really found it to be the best solution to all of my native AVD issues (my default AVD emulators would creep even on my faster machines). I downloaded genymotion and must say that I am a million times happier with the emulation. It is faster, smoother, has more options, it just makes the native AVD look even worse than it already does on its own. Even if genymotion isn't for you, I highly recommend looking into third party emulators. It will make QA, development, etc. with Android that much easier. Assuming ARM isn't required (don't think it does ARM emulation)

Android SDK Emulator won't load

So i'm having awful trouble trying to get the Emulators in the Android SDK to start up. I can create the AVDs just fine, and then when hitting the 'start' button from the SDK Manager, bring up the small loading console window, indicating that the emulator is launching. However, after that, nothing happens!!
I have read many threads and posts with people having the same problem, maybe to do with the settings requiring too much memory, with some people waiting 30 minutes for the emulator to load!!
When trying to run the AVD emulator through terminal, I simply get a 'Bus Error' with no further indication of what could be going wrong...could it be a memory issue?
What I did to get where I am now:
Download the Android SDK package for Mac. I'm extracting the sdk only, not eclipse. I'm on Mac 10.6.8.
Install the SDK, and download the latest version of Android in the SDK Manager, along with default tools.
create a AVD and hit start.
window pops up to boot the emulator, that process is complete and window closes.
Nothing happens.
My knowledge of the sdk tools are very limited, all I want is to be able to do some testing...
Any help greatly appreciated!
Thanks
Actually, the simplest way to get emulators running right now is probably GenyMotion. They provide an interface, and pre-configured emulator images to make it pretty simple to get running.
This is not an endorsement (I use the standard ADT myself) but a lot of people find their tools useful.
Here is my suggestion: instead of using AVD, start using espresso and virtual remote android hardware emulator from Google servers - also known as android-test-kit. You will have the possibility to run and test you App on several different devices, without the need to spend money on actually all different devices for developing and testing purposes before releasing your Apps. You find further details here:
android-test-kit
Why Espresso
The 2 videos are somewhat long, but worth watching.
Taking this approach will solve your problem, save you money, and improve your productivity.
I run into the same issue on my mac 10.6 and it only works if i do
emulator64-x86 -avd my_android
Besides, my virtual device has to configured using x86 but not ARM
maybe this link can help you.

Android emulator running on windows phone

I am thinking of making a final year project as the title mentions it should be an emulator for windows phone that runs android project. i have done some research and found nothing helpful
the following discussions also shows that it is not possible
http://forum.xda-developers.com/showthread.php?t=1841481
but as we have an emulator for windows why is it not possible to have one for windows phone..
just because windows phone is locked down???
and if it is possible then what kind of programming i am looking forward to? because i know there will be alot of system level programming in this project (IF IT IS POSSIBLE)
You would probably have to look into some way of rewriting the Dalvik VM to run on Windows Phone https://code.google.com/p/dalvik/
It is not impossible but it would take a serious amount of work. BlackBerry spent a lot of time working on their own version for PlayBook.

How do I install a platform into my android device using Windows not Eclipse?

I know its easy to do this with Eclipse but i dont have that. can someone please tell me how to do this step by step on Windows??
Three points.
This should really have been an edit
to your original post instead of a
whole new question.
Eclipse is free,
runs on Windows and makes it easy to
get started with Android
development, get it!
You don't
install the AVD's on to a device.
You use the AVD's with the emulator
so that it can emulate different
hardware configurations. The device
you have has a certain configuration
and the only ways to change that are
to get a valid update from the
provider or to root the device and
flash a new firmware.

How to test my app on my phone? I have Eclipse w/ Android plug-in

Where do I copy the apk file on the Motorola Droid? Which directory? Are there any possible issues I need to be careful of, it's also my personal phone...
To install an apk file, you need to execute
adb install /path/to/file.apk
While the droid is connected. I would avoid using any programs other an adb to install your application. adb will definitely follow the rules and you should be able to clean things up, etc if something goes wrong. That may not be the case with other programs.
I should note, this is assuming you are writing the program yourself. adb is a program that comes with the Android development kit (I assumed you are using this as this is a programming related site. If you are not referring to this and you are simply trying to install a program on your phone, this question would probably be better on superuser.com)
Edit To address your comment. When you select "run" from eclipse, and you have your droid plugged in, it should give you the option to select which device you want to execute the code on. Double clicking on your droid will automatically install and launch the app. You may need to enable the development settings within the Settings menu though for it to be recognized. To confirm that eclipse (really it's adb) can see your droid, launch a terminal or command prompt and type adb devices while the droid is connected. If it's listed there, you're good to go.
I guess I was making it way more complicated than it needed to be. If you have eclipse with the Android plug-in, all you need to do is go into the settings of the phone, then applications, then development. Set the Debug mode to on. when you compile the app with eclipse I guess it looks for an actual phone first, if it detects it, then it loads the app on it. If no phone is detected and you have the ADV set up right it loads it there. Easy... There is a setting about unsigned apps in the application menu, I set it to accept and turned it off after, my apps are still on the phone and work... I am not sure if it was needed at all.
I don't know whether this is how you're supposed to do it, but get Astro File Manager, and you can install your app wherever you place it.
There shouldn't be anything you need to be careful of if it isn't rooted. Programs are pretty well contained and can't do much outside of their own little Dalvik machine.

Categories

Resources