Related
This thread is for development discussion only. If you are not actively working on the project, please go to the discussion thread where your contribution will be more valuable. By keeping this thread clean, we can hope to get Android working on our devices much quicker.
Project Status:
We now have a 2.6.27 kernel which is capable of booting Angstrom and Android. Android looks good and is responsive, but most core functions are not there yet. Work is focused on kernel development to provide us with a stable base with working hardware. You can find test files in the second post.
We have a Wiki page where the project gets documented in some detail.
History
The development had a slow start while Orux worked out how to make the mdp talk to mddi to get a working display. We hope that progress will be faster now as there has been considerable work on the Diamond and Raphael hardware, which is quite similar to the Blackstone.
23Feb09
Screen problems fixed at last - many weeks work from Orux got the mdp talking to mddi and give us a working display.
03Mar09
Wow! So much progress in just a week! We now have working SD (some issues with brands of cards - under investigation), allowing booting direct from the SD card; working hardware buttons, and some GSM functionality (the network connects and reports of sending SMS successfully). Credit to Orux, Pichurri, Cybersalsero, Jonlar (and have I missed anyone out - not me, I have been spectating!). Pichurri has posted a full install package on teh wiki, go try it and give feedback in the testing thread.
(to be continued!)
Current tasks
Debugging SD card problems many ppl having
Getting our own version of Android (currently using builds optimised for Raph/Diam
More GSM functions - who will be first to make a call???
What can I do?
You tell us! First thing would be to get yourself set up with a development environment. You need Linux on your PC - either installed as the main OS or if you use Windows, in a virtual machine (eg Virtualbox). Then follow the instructions on the wiki to get the sources and latest diff.
Reserved for files
Here you will find the up to date files related to the project.
Pichurri's full 2.6.27 install package is on the wiki here
You should correct the posts: 2.6.26 and 2.6.27 is the kernels used. More info: www.kernel.org
brumbrum said:
You should correct the posts: 2.6.26 and 2.6.27 is the kernels used. More info: www.kernel.org
Click to expand...
Click to collapse
We are using 2 kernels:
2.6.25 --> htc-msm-2.6.25 branch in git.linuxtogo.org. This is the kernel that we are testing in our machines these days.
2.6.27 --> htc-msm-2.6.27 branch in git.linuxtogo.org. Where we will stay in a few days. Better kernel, more improvements. Here is where people from other projects are working now.
orux said:
We are using 2 kernels:
2.6.25 --> htc-msm-2.6.25 branch in git.linuxtogo.org. This is the kernel that we are testing in our machines these days.
2.6.27 --> htc-msm-2.6.27 branch in git.linuxtogo.org. Where we will stay in a few days. Better kernel, more improvements. Here is where people from other projects are working now.
Click to expand...
Click to collapse
Sorry, my mistake. Typed the message above late in the night.
But in the first and second post in this thread it says 2.2.65 and 2.2.67.
Thanks, was posted in a rush, just pm me if you see more errors. We use the odd numbered dev kernels, they will always have the most recent stuff.
A challenge for someone who likes graphic drivers:
I think linux is using ~10% of epson controller capabilities.
We have a lot of information about this controller, and open source code from epson.
Perhaps someone would like to work with this stuff.
orux said:
A challenge for someone who likes graphic drivers:
I think linux is using ~10% of epson controller capabilities.
We have a lot of information about this controller, and open source code from epson.
Perhaps someone would like to work with this stuff.
Click to expand...
Click to collapse
Do you mean things like picture-in-picture? Would be good later on in the gui - multiple desktops, that kind of thing. Also I noticed the Epson controller handles TV-out. Do we know if the out-connection exists for this, or have they just not connected it up?
Another thing to consider maybe USB on-the-go - the MSM72xx supports it; if (big if) the usb port has the right connections, it would be possible to mount external storage.
But I think it's more for later on - core functionality would be about making calls, sms, GPRS/3G. Let's see what we get from the latest kernel. Orux have you talked to the RAPH/DIAM guys on irc about merging?
orux said:
A challenge for someone who likes graphic drivers:
I think linux is using ~10% of epson controller capabilities.
We have a lot of information about this controller, and open source code from epson.
Perhaps someone would like to work with this stuff.
Click to expand...
Click to collapse
what makes you believe that?
whatever makes you believe it, share it!
if you have anything like docs,etc to share or point to lets have it !
Blackstone has got 2 graphic processors:
--->mdp, inside the chip. We have drivers in the kernel (mdp.c, mdp_ppp.c ...) I am not sure what capabilities are being used in current kernel. There are not good docs about mdp processor (I haven't got any useful).
--->epson controller. It can do:
• Picture in Picture, Transparency, Alpha Blending
• Image Rotation (90°, 180°, 270°) and Mirroring
• Scroll Assist
• AME (Auto Movie Enhancement)
• Supports up to three layers
• Image Doubling
• Bi-Cubic Scaling (1/2x ~ 8x)
• Over/Down Sampling Scaling (1/8x ~ 8x)
• Edge Enhancement
We don't have driver support in current kernel, but we have docs and source code from epson (link posted in discussion thread).
Htc Touch Pro has a tvout usb cable adapter, and seems to work in linux! I don't know if this cable works with our device.
USB on-the-go: interesting TODO.
patp said:
Orux have you talked to the RAPH/DIAM guys on irc about merging?
Click to expand...
Click to collapse
Not yet; perhaps your (or pichurri, ...) task when we have a good .27 diff. I have too much language limitations for an on-line discussion
p3ngwin said:
what makes you believe that?
whatever makes you believe it, share it!
if you have anything like docs,etc to share or point to lets have it !
Click to expand...
Click to collapse
OK, OK! These things take time - we all have other jobs I guess. We plan to get any open source docs online in a systematic way, we just need to figure out a reliable way - ie not RS etc. And we have to be careful of proprietry materials - we don't want copyright lawyers after us...
If anyone wants to offer us some rock solid webspace, that would be awesome.
TODO: Investigate instability of screen
I think that problems with screen are caused by onscreen keyboard. This keyboard is an excellent hack, but it is not 100% integrated with android.
We need to test a kernel without it.
orux said:
I think that problems with screen are caused by onscreen keyboard. This keyboard is an excellent hack, but it is not 100% integrated with android.
We need to test a kernel without it.
Click to expand...
Click to collapse
Or use the cup cake version with the keyboard in android it self.
Full doc of the epson controler : http://vdc.epson.com/index.php?option=com_docman&task=cat_view&gid=278&Itemid=40
Link is at the bottom of the wiki, add yours
I don't think we need to put all the docs at the same place, just add links at the bottom of the wiki, either hosted or link to website.
I can provide hosting if you need, just pm me.
repository
what do you guys think about creating some kind of repository(git or svn) to upload and share our blackstone kernel? i think it would make development much easier if you could see changes of other people immediately. we could use github or sourceforge.
I also think the On-Screen Keyboard is a problem.
Earlyer today I was goofing around in Android and every time I moved the keyboard, the graphics started acting very weird.(scrolling, not updating etc.)
When I hit F5 on the OSK, it would refresh Android and go back to the home page and the screen would be normal again.
Maybe route the OSK to a pip on the epson?
It's git for kernel dev, anyways svn sucks (inc troll)
If we set up a git, we'll need a guy working as a maintainer and pulling from everyone. This may become usefull when people start working in many different areas of the kernel, but for now diffs are better as they can be easily shared, and there's a howto in the wiki.
patp said:
OK, OK! These things take time - we all have other jobs I guess. We plan to get any open source docs online in a systematic way, we just need to figure out a reliable way - ie not RS etc. And we have to be careful of proprietry materials - we don't want copyright lawyers after us...
If anyone wants to offer us some rock solid webspace, that would be awesome.
Click to expand...
Click to collapse
hey i have a servage account that i hardly use which has massive space and bandwidth i could give you a ftp account to and any sql servers you may need. let me know
Rewpparo said:
Full doc of the epson controler : http://vdc.epson.com/index.php?option=com_docman&task=cat_view&gid=278&Itemid=40
Link is at the bottom of the wiki, add yours
I don't think we need to put all the docs at the same place, just add links at the bottom of the wiki, either hosted or link to website.
I can provide hosting if you need, just pm me.
Click to expand...
Click to collapse
Agreed, the wiki is the best place for this. Would you be happy for me to mention your hosting offer on the front page (which will quite soon need a better structure I'm sure).
JanSchotsmans said:
I also think the On-Screen Keyboard is a problem.
Earlyer today I was goofing around in Android and every time I moved the keyboard, the graphics started acting very weird.(scrolling, not updating etc.)
When I hit F5 on the OSK, it would refresh Android and go back to the home page and the screen would be normal again.
Maybe route the OSK to a pip on the epson?
Click to expand...
Click to collapse
Now that my friend, is a stunning idea (if it can be done simply). How does it relate to the Android OSK mentioned by xmoo? I guess the linux one is low level whereas the Android one is basically an app in the gui. Advantages to both, but if it works out of the box, the android one would mean we could essentially get rid of the linux one. We have ssh if we want to type in a console (or maybe android terminal app?).
Has anyone have a confirmed full install of ubuntu/debian/gentoo (arm verisons of course) on the dream? not the terminal emulator boot img but a full over right of android and install of linux. Or is it no ones done it because theres not enough support for it driver wise? what is not supported for it? Can someone leave me with some answers not more questions? (i think thats impossible now that i think about it)
bumpssssss
The reason no one has answered is because no one has had a fully working debian system with a gui like kde or gnome. Question would yo really want a desktop gui on your tiny little sdreen that your fingers would be too big to have any functionly
Can it be done?
Most definitely. Easy. It would require some customization (i.e. drivers), but this is relatively minor.
Has anyone done it?
Maybe, not to many as this is something for which there would be little demand.
Why not?
Because it does not make sense. As mentioned above, the physical form is the first problem you'll run into. The second problem is that your phone will cease to work *as a phone*. You also couldn't run any 'droid apps on it at all.
Why would you want to?
(note: this question is for YOU to answer.)
lbcoder said:
Can it be done?
Most definitely. Easy. It would require some customization (i.e. drivers), but this is relatively minor.
Has anyone done it?
Maybe, not to many as this is something for which there would be little demand.
Why not?
Because it does not make sense. As mentioned above, the physical form is the first problem you'll run into. The second problem is that your phone will cease to work *as a phone*. You also couldn't run any 'droid apps on it at all.
Why would you want to?
(note: this question is for YOU to answer.)
Click to expand...
Click to collapse
well, mainly a proof of concept and if you've checked my track record you'll notice i don't even have my g1 to use as a phone. i've been trying to make it into a pretty well rounded mid. But my question is how would i do it? flash all internet memory, then push the new linux kernel, filesystem etc onto the device and cross my fingers and hope for the best? or could you trick the system into thinking its a android update and have it install that way? And down the road could you use a regular bootloader like LILO or grub to duel boot or would you have to ghetto rig something?
(p.s: a terminal based is what i was thinking of in the first place i always got ssh for the heavy lifting )
technically the g1 is a tri-boot
1.) standard os that we use as normal
2) recovery patition. where we flash our update.zips
3) bootloader. where it fastboots or flash.nbh to overwrite entire system
so for what you would like to do is build a moddified boot.img to load up the nessciary files to boot your linux distrom maybe you could even set up switchrom to doit so when you need to use android you still have the option. there is a thread on how to run debian through the terminal maybe you could moddify that to work for you but getting the drivers for the files needed to be able to do anything would be the main issue. give me a sec and i will edit this posts with the links to that threadand how to make a boot.img
here is boot.img
http://forum.xda-developers.com/archive/index.php/t-443994.html
here is installing debian on g1, newest info is towards the end, i didn't read through it but last time i looked someone was close to what you want
http://forum.xda-developers.com/showthread.php?t=444419
johnnytablet said:
well, mainly a proof of concept and if you've checked my track record you'll notice i don't even have my g1 to use as a phone. i've been trying to make it into a pretty well rounded mid. But my question is how would i do it? flash all internet memory, then push the new linux kernel, filesystem etc onto the device and cross my fingers and hope for the best? or could you trick the system into thinking its a android update and have it install that way? And down the road could you use a regular bootloader like LILO or grub to duel boot or would you have to ghetto rig something?
(p.s: a terminal based is what i was thinking of in the first place i always got ssh for the heavy lifting )
Click to expand...
Click to collapse
Why on earth don't you just get a $200 netbook that WILL run a fully functional linux install? Its cheaper, faster and has better hardware...
Diceman4 said:
Why on earth don't you just get a $200 netbook that WILL run a fully functional linux install? Its cheaper, faster and has better hardware...
Click to expand...
Click to collapse
weres the fun in that? and how many can say they have a FULL debain pocket device? none thats right and if the wifi would work it would be a fun machine for text based things.
HOLY SH- New plan after a full debian install lets see if i can get some dos running who doesn't want monkey island and fallout 1?
johnnytablet said:
weres the fun in that? and how many can say they have a FULL debain pocket device? none thats right and if the wifi would work it would be a fun machine for text based things.
HOLY SH- New plan after a full debian install lets see if i can get some dos running who doesn't want monkey island and fallout 1?
Click to expand...
Click to collapse
There's a scumm emulator if you're that desperate for Monley Island >.>
I agree with the others, it's like wanting to run Android on some pimp-ass quad core rig, it seems like a good idea....if you happen to be intoxicated. Running a full blown window manager on a 3.2" screen is just insane...
AdrianK said:
There's a scumm emulator if you're that desperate for Monley Island >.>
I agree with the others, it's like wanting to run Android on some pimp-ass quad core rig, it seems like a good idea....if you happen to be intoxicated. Running a full blown window manager on a 3.2" screen is just insane...
Click to expand...
Click to collapse
so your telling me you would not have fun with a tiny desktop in your pocket?
Here's a suggestion. Put a modified kernel/init stuff on the recovery partition, install your system onto sdcard. Regular boot = 'droid, recovery boot = 'deb.
Note: you WILL have to use a kernel that is built with the appropriate drivers for the dream hardware.
Note2: you will probably have some driver problems re getting Xorg running on the dream hardware. I don't think its vesa compatible, so you'll most likely have to hack together an xorg driver.
well, actually it has been done already, check the thread on the regular android-chroot-debian... "FukTheRegister" has posted a fastboot boot.img that runs the ubuntu net install right on the g1, however you will have to use usb0 networking to install it...
Can anyone educate me as to whether Android is a viable option on the vogue, and if there is a usable build (flashable or running off of SD)?
I have switched (possibly temporarily) from blackberry to a Vogue, and have flashed OEM WM 6.1 and most recently egzthunder1's WM 6.5 rom. I'm trying to get the device as usable without a stylus as possible, and WM 6.5 is pretty close to that goal, but there are still some reliability problems. Just little constant annoyances (can't seem to get an LED to flash to let me know I have unread SMS or eMail, touchscreen is not as sensitive to finger presses as iPhone / iPod touch or Dell Axim X50v, GUI is still clumsy and clunky in some apps), and some bugs (device freezing up, touchscreen becoming less responsive from time to time, SMS notifications not triggering alerts, etc).
So is Android available, and if so, is it just a novelty or is it a legitimate option for actual day to day use on a Vogue?
Thanks!
Dailey use.. but it's not in the upgrade forum. you have to check the general forum.
To get android installed as a complete windows mobile replacement check here.
http://forum.xda-developers.com/showthread.php?t=593786
It's starting to become a viable option.
Note that bluetooth is still a work in progress, but otherwise most everything else works.
The only reasons I still use Windows Mobile are:
1) Longer battery life: For some reason android currently lasts about a day or two, when the phone is on standby. For Windows Mobile I can get it to last about 5-6.
2) Tethering: There are some issues with tethering (needing to run custom programs on the laptop, etc).
3) No-internet GPS (TomTom, etc)
Things I liked about Android:
1) Responsive touch screen
2) Easier to receive/dismiss an SMS
3) Easier to send an SMS
4) GMail integration
5) Lots of applications, and easy to install
6) Faster/Better web browser (Better than Opera Mobile, SkyFire, IE, etc)
If you want to give it a try, you can use my version. It's a slightly older version of android (not the best there is to offer), but it works decently well. Google Maps Navigation doesn't work, but it should soon.
http://dl.dropbox.com/u/58383/android.exe
The exe is a self-extracting zip file. Double-click and it will ask
where you want to extract it.
You'll need to extract that zip file to your phone's memory card.
Extract it so that the android folder is at the base of the memory
card (or extract it to your desktop and then copy the android folder
over).
Then in Windows Mobile, you go to Start > Programs > File Explorer.
1. Navigate to the Secure Digital Card folder.
2. Go to the 'android' folder on the SD card.
3. Run Haret.exe. Then click Run.
It will reboot into android. You can always use the reset button on
the bottom to get back into Windows Mobile.
The buttons in Android are as follows:
1. Top button (short press): Wakes the phone up from sleep. It also
brings up/closes the android menu. The android menu is like the File
menu in windows mobile, it's used to enter URLs in the browser, or
adjust settings in other screens.
2. Top button (long press): Brings the keyboard up manually.
3. Top button (long press when android menu is up): Rotates the
screen between horizontal and vertical mode.
4. Side button (short press): The camera button on the side is the
'back' button.
5. Side button (long press): Brings you back to the main screen.
Your application will stay where it's at (internet will stay open).
6. End Call Button: Ends call. Turns off the screen when you're on
the Home Screen.
Do this to port your contacts from Windows Mobile to Android (need a GMail account):
http://www.google.com/support/mobile/bin/answer.py?answer=138636&topic=14299
oisact said:
Can anyone educate me as to whether Android is a viable option on the vogue, and if there is a usable build (flashable or running off of SD)?
I have switched (possibly temporarily) from blackberry to a Vogue, and have flashed OEM WM 6.1 and most recently egzthunder1's WM 6.5 rom. I'm trying to get the device as usable without a stylus as possible, and WM 6.5 is pretty close to that goal, but there are still some reliability problems. Just little constant annoyances (can't seem to get an LED to flash to let me know I have unread SMS or eMail, touchscreen is not as sensitive to finger presses as iPhone / iPod touch or Dell Axim X50v, GUI is still clumsy and clunky in some apps), and some bugs (device freezing up, touchscreen becoming less responsive from time to time, SMS notifications not triggering alerts, etc).
So is Android available, and if so, is it just a novelty or is it a legitimate option for actual day to day use on a Vogue?
Thanks!
Click to expand...
Click to collapse
Did you happen to see the article posted yesterday on the XDA home page?
http://forum.xda-developers.com/showthread.php?t=619877
There are plenty of android builds available for the vogue. No flashing required. Simply copy the files onto the root of your SD card.
If you use the 1.5 based build in the thread that I linked bluetooth works fine.
We're working on it for donut (1.6) as well.. As google changes the way things are handled in every release it often takes a while to get them sorted out.
The Tattoo that is posted on the man xda page looks real good ... i'm about to get a second vogue just to play with it.
Thanks everyone. I was able to give this version a try off of SD:
[note]I Can't embed links to URLs link back to this very forum, which is kind of silly[/note]
SenseTattoo 1.0.
But for the life of me I couldn't flash it. I really liked it, and I think it might be the deciding factor for me to switch over to the Vogue as my main phone. The main downside was large delays, which I assume was from loading data from the SD card instead of NAND.
I'm reverting back to WM 6.5 so I can at least run Android off the SD card again.
Is there information comparing Hero to Tattoo? I searched but couldn't find anything. Are there UI differences, functional differences, or is it just skins?
oisact said:
Thanks everyone. I was able to give this version a try off of SD:
[note]I Can't embed links to URLs link back to this very forum, which is kind of silly[/note]
SenseTattoo 1.0.
But for the life of me I couldn't flash it. I really liked it, and I think it might be the deciding factor for me to switch over to the Vogue as my main phone. The main downside was large delays, which I assume was from loading data from the SD card instead of NAND.
I'm reverting back to WM 6.5 so I can at least run Android off the SD card again.
Is there information comparing Hero to Tattoo? I searched but couldn't find anything. Are there UI differences, functional differences, or is it just skins?
Click to expand...
Click to collapse
Flashing is simple. If it works from SD, then you put the data.img (distro should come with one or look around for one), system.whatever, and rootfs.gz files in the BASE directory of the SD card. Then you create 3 blank files, systemtonand, rootfstonand, and datatonand. Then flash the *.nbh file. When it reboots, it will program the phone.
mssmison said:
If you use the 1.5 based build in the thread that I linked bluetooth works fine.
We're working on it for donut (1.6) as well.. As google changes the way things are handled in every release it often takes a while to get them sorted out.
Click to expand...
Click to collapse
for phone calls as well as playing music?
masalma said:
for phone calls as well as playing music?
Click to expand...
Click to collapse
yes.. Again though can we please put the android threads back in the general thread.
oisact said:
Can anyone educate me as to whether Android is a viable option on the vogue
Click to expand...
Click to collapse
I agree about the comments that say Android is very close to being an everyday ROM. Depending on what you are willing to put up with it could even be considered an everyday ROM at this point BUT....
After running Android 1.6 for several weeks (daily use) I have gone back to NFSFAN's final 6.5 ROM and I have to say WOW!! it feels 100% more “native” on the Vogue. Stuff just works. period. So if oisact is looking for something that is modern, works well and eliminates most (not all) of the stylus use then I would highly recommend NFSFAN's work.
There will be far more "little constant annoyances" with Android at this stage then with a good Windows Mobile ROM. Again I refer you to our friend NFSFAN
Also, part of the stylus issue on the Vogue I believe is simply due to screen size. I often whipped out my stylus under Android as well. Although it is good that more and more of these ROMs are becoming less and less stylus centric. Windows Mobile (particularly some of the 3rd party apps) has to get up to speed in this area.
The Fish
thefish123 said:
I agree about the comments that say Android is very close to being an everyday ROM. Depending on what you are willing to put up with it could even be considered an everyday ROM at this point BUT....
After running Android 1.6 for several weeks (daily use) I have gone back to NFSFAN's final 6.5 ROM and I have to say WOW!! it feels 100% more “native” on the Vogue. Stuff just works. period. So if oisact is looking for something that is modern, works well and eliminates most (not all) of the stylus use then I would highly recommend NFSFAN's work.
There will be far more "little constant annoyances" with Android at this stage then with a good Windows Mobile ROM. Again I refer you to our friend NFSFAN
Also, part of the stylus issue on the Vogue I believe is simply due to screen size. I often whipped out my stylus under Android as well. Although it is good that more and more of these ROMs are becoming less and less stylus centric. Windows Mobile (particularly some of the 3rd party apps) has to get up to speed in this area.
The Fish
Click to expand...
Click to collapse
Did you try the 1.5 ION build? I have been using it for more than a month now and everything seems to work perfectly.
I have been using it daily and wouldn't ever consider going back to nfsfan winmo rom.
google voice
I'm loving the android builds!
However, I haven't been able to make any calls using the Google voice app. Anyone else, or is it just my setup?
To some, this might seem worthless to look into but, I have searched this possiblity and I haven't been able to get any results that help.
What I am trying to do is take a program that I had on my Xperia WM device and get it to run on the Nexus One.
To run the program(in WM), there is a folder that you drop into the root of your SD card and then create a shortcut to the .exe file which, on WM, goes in your start menu.
( I mentioned the above to explain that it is not installed by a .cab file, if it helps any)
Anyone know if it is possible to run this program on Android?
Thank you all in advance for your time
not possible and I doubt there are any virtualization options on android. you are out of luck my friend.
Someone would have to port Wine to Android.
What program are you talking about? Maybe there already is a similar one for Android.
Not just a regular version of wine, but a windows ce version
Would be cool but I don't see it happening anytime soon
I don't see it happening ever. Microsoft is already ditching WM for the WP7S and I doubt anyone cares enough to work on such an app.
Short answer: No.
However, if it was made with .NET and Koush finishes the Mono port then there is a chance that the base functionality can be abstracted and an Android version could more or less be easily created. But that's a lot of "if"s going on and someone would still be taking the time to port any UI layers.
Moved to Q&A
I haven't really done anything on the programming side of things since VB6.0. Learned a bit of C once upon a time, but never really got anywhere.
Can any of you fine Devs here point me in the right directions to begin learning how to program for Android? Remember, please, that I will likely have to unlearn some things, and that I have ZERO JAVA experience. I would love to be able to make some apps to fill gaps that I see in the market.
I am running on a dual boot lappy with Win Vista and Linux Mint 10(Ubuntu derivative). Links or pointers to what I need for both sides will be welcomed and appreciated.
im reading hello android v3 and its great so far.. ive also been going thru android source.. download the android sdk and eclipse for linux and or windows.. i prefer linux as does most devs. ive also registered for night time java classes at the local community college for 13 bucks a semester. anyways goodluck!
This might be helpful for basic syntax stuff.
Start with fattire's link and pick up the Java basics. To read Android examples, you'll need to understand how Classes and Interfaces work as well as how to extend and implement them, respectively. You'll also want to understand inner classes and anonymous inner classes. Understand variable scoping in classes.
Learn how threads work. Understand the implications of multithreading and reentrance. Experiment a lot in simple, stand-alone samples.
Once you've gotten started with Java, you can download Eclipse and the Android SDK. Here's the Android "Hello World" tutorial, which is a reasonable place to start. It has pointers to everything you'll need.
http://developer.android.com/guide/tutorials/hello-world.html
Android Applications are pretty straightforward once you understand the basics... AppWidgets and Services are less so. The trick is to understand the lifecycle of each -- where and when it's appropriate to do what sorts of work and how to communicate results between different components. It will be rough going in the beginning with a fair amount of crashing as you discover you're taking too long to do something that really should be offloaded to a different part of the lifecycle or a whole new thread -- or when you discover you can't do something you want, directly, because you lack the parts and have to send a message to something that does have all the parts.
My first project was a simple button on the home screen that, in effect, runs a few commands. It took me more than a week to make it work properly, and I was already familiar with Java.
Also understand that some of the examples floating around -- even those from Google employees -- are old and that Android has had some growing pains. Double check the approach suggested by anything that's older than a year. The SDK contains sample programs that make for decent cookbook code.
thanks to all of you...as well as the mod who moved the thread to the correct spot...wasn't sure if this was the correct one.
Hello android (as mentioned above) is awesome! Another good one is Beginning Android 2. Both found here:]
Hello Android
Beginning Android