2

Case 1 in question:

I have been trying to have a "pure" 64-bit development environment on Windows 7. It cannot be done. See the two threads here:

64-bit Eclipse won't install .apk on Android emulator

How do I pause the command window when launching an app?

Has anyone been successful in using 64-bit Eclipse for Android 2.3 dev on 64-bit Windows 7?

I understand that 64-bit development on Windows 7 is not officially supported but then the obvious question is why? Why can't Google catch up with Microsoft?

Case 2 in question:

Even on 32-bit Windows XP, the recommended development platform/tools for Android, behaves in an unpredictable manner (how can one project schedules like this?):

Huh? Android Preferences page refuses to load after adding SDK 1.6

Unlike programming for Windows using Microsoft's tools which is very stable and very predictable, my experience with Eclipse + Android plugin + Android SDKs is that I never know what kind of a "landmine" is waiting for me around the corner...

So my question is: Why is that?

  • Is it because Eclipse is the alpha version of WebSphere (similar to how Fedora is the alpha for RHEL)?
  • Is it because Android plugins and SDKs are constantly in beta? (like Gmail used to be for many years)?
  • Is it because neither Eclipse nor Android tools & SDKs (for Windows) are adequately tested?

Please advise.

Note to the "trigger-happy" folks: If you vote to close this thread, you are essentially expressing distrust in community members to conduct an honest discussion about the current state of the Android development tools for Windows (with the potential of contributing to an improved tools set).

Update (1): Observing the down-votes, it is amusing to see how people prefer to 'click' instead of providing useful answers in the links above. Actually, it is not amusing, it is sad.

Update (2): I truly appreciate Paul McMillan's answer which was the most concrete and to-the-point. However, it was edited by someone else to include spin-doctoring like "Fedora isn't the alpha for RHEL either - it's just more bleeding edge" so I had to accept the next best answer.

Update (3): I can't believe that there are professionals who suggest working (on a daily basis, not for administration purposes) from an Admin account. I can understand lay home users doing so, but computer professionals?

Update (4): I managed to find a workaround for the problem described in case #2 (see link above). This took time that was intended for getting up and running with actual Android programming.

Update (5): I resorted to installing the same 64-bit development environment (Android 2.3) under Ubuntu 10.04 64-bit. Not a single hassle. And it's FAST. What a pleasure.

Update (6): I finally nailed down the source of this great ordeal. It turned out to be the Comodo Firewall (aka CIS).

Community
  • 1
  • 1
Android Eve
  • 14,864
  • 26
  • 71
  • 96
  • Have you ever tried using Microsoft software that was written for a non-Microsoft OS? I remember trying to use the Unix (Solaris) version of Internet Explorer years ago and it was incredibly broken, and had no support for multiple users (bizarre, in the Unix world). – Laurence Gonsalves Dec 25 '10 at 22:15
  • @Laurence, I know that my questions could be perceived as bashing Android. This is not my intent. I whole heatedly want to adopt Android development and I am not interested in bashing but rather receive true answers. Bashing IE for Solaris doesn't help me make progress on the way to enjoy Android development. – Android Eve Dec 25 '10 at 22:21
  • 3
    @Android_Eve: "I know that my questions could be perceived as bashing Android. This is not my intent" -- your tone is that of a troll (e.g., "Why can't Google catch up with Microsoft?"). If you want to be treated with respect, I suggest that you treat others with respect...and this includes the core Android team, the Eclipse dev team, etc. – CommonsWare Dec 25 '10 at 22:50
  • @CommonsWare I have no control over other people's perceptions. OTOH, if you can help the Android team develop tools that are well tested under Windows XP (i.e. including LUA), you will be blessed. – Android Eve Dec 26 '10 at 01:03
  • 1
    I won't post this as an answer, as it's not specifically an answer to your question. But you should know that there are alternatives to eclipse out there. In particular, the recently released IDEA 10 now has Android support in it's free/open source community edition. I much prefer it to eclipse – JesusFreke Dec 26 '10 at 02:56

2 Answers2

5

It sounds like your problem is more related to developing on Windows than the Android SDK itself. I got it up and running pretty quickly on my 64 bit Win7 box, but I really prefer to develop in Linux. Once I sorted some silly issues with eclipse dependencies out, it was incredibly simple to run and keep updated.

I suspect most hardcore android devs (and the people who build the tools at Google) run Linux of some flavor on their boxes - so it isn't surprising that the tools work well there.

Eclipse isn't really the alpha version of websphere - it's a perfectly usable and stable tool in it's own right. Fedora isn't the alpha for RHEL either - it's just more bleeding edge. You can run a perfectly stable Fedora system, but most companies go with RHEL because of the support options.

The Android plugins and SDKs are certainly under active development, which is a good thing. That doesn't necessarily make them Beta quality.

Eclipse is used incredibly widely. It's adequately tested. The Android SDKs work just fine for a majority of users. I'm sorry you had problems with them, but as you admitted, you're running an unusual configuration.

Windows is designed to run with every user as an administrator - Development tools usually assume this, with hardware development tools doubly so. It's a reasonable assumption. Even under Linux, Android development really works better with root access. You're trying to do things with the underlying hardware that normal users shouldn't be able to do.

Matteo Italia
  • 123,740
  • 17
  • 206
  • 299
Paul McMillan
  • 19,693
  • 9
  • 57
  • 71
  • @Paul thanks and +1. If you have been able to setup a 64-bit Win7 environment, could you please post detailed steps how you accomplished that? In "detailed" I also mean the exact files downloaded from the Android site. Thanks. – Android Eve Dec 25 '10 at 22:07
  • I can't swear that I got the 2.3 environment running on my win7 box. I'd have to go back and look - I'm not around that machine right now. As I said in the post, I pretty quickly decided that I preferred to develop under Linux. – Paul McMillan Dec 25 '10 at 22:10
  • @Paul OK. That is a fair enough answer. You do realize that it only reinforces my current impression of developing for Android under Windows (regardless of whether it is XP, Vista or 7), right? – Android Eve Dec 25 '10 at 22:13
  • 2
    I won't argue with that. Since it's (probably) not what the core devs work with, it's less well supported. FWIW, having developed a couple things on android, it reinforces my feelings about Java development in general - overly verbose, and not really worth the bother if it can be avoided.... – Paul McMillan Dec 25 '10 at 22:17
  • If enough people convince me that Android development is really meant to be done under Linux, I will go with it, although I naturally want to deal with one learning curve at a time. Learning Android development is steep enough for me, so I prefer to do that under the familiar OS. – Android Eve Dec 25 '10 at 22:25
  • Yeah... Learning both things at once probably isn't worth it (especially if you're not going to use Linux for other things). Unless you're dead-set on using bleeding-edge 2.3 features, I'd suggest starting by using 2.2 until 2.3 is better supported under your chosen platform. Requiring 2.3 in your application is a good way to significantly narrow your end-user market right now - the majority of phones are 2.1 or 2.2 at best. – Paul McMillan Dec 25 '10 at 22:30
  • Thanks Paul. My problem is that I tried that. I gave up on 2.3 dev on 64-bit and tried to stick to 2.2. But when I added the 1.6 SDK, my development environment broke. I *really* don't want to develop under my Administrator account. Any advice? http://stackoverflow.com/questions/4527903/huh-android-preferences-page-refuses-to-load-after-adding-sdk-1-6 – Android Eve Dec 25 '10 at 22:36
  • Hmmm... That's unfortunate. I'm not very well versed on running windows applications under limited users. Adding the SDK under an administrator account and then trying to use it under a limited user seems like a dangerous activity. I'm not sure about windows, but on Linux, it's possible to use all these tools without "installing" them in the traditional sense, which might help solve that problem. See if you can find an archive of Eclipse that works by simply unzipping it and running the executable. I know the android tools will generally work like that. – Paul McMillan Dec 25 '10 at 22:47
  • According to the Least-User-Access principle you cited in your other thread: You should upgrade your privileges until "you're able to complete the job". That's your answer. After all, you're not the designer of the Android Developer Tools, you're just the user of those tools. Focus on the parts you can control, and forget the rest. For instance, personally, I'd love to be able to develop for Windows Mobile 7, but the Windows Mobile 7 SDK doesn't work under Windows XP, doesn't work on Windows Vista, and it doesn't work on a virtual PC on a Mac, it only works on Windows 7. – Stephan Branczyk Dec 25 '10 at 23:08
  • And by the way, if you have the money, get a Mac, that's what most of the Android developers at Google are using anyway. And if you don't have that extra money lying around, like the rest of us, swallow your pride, and run your Android Developer Tools under root. You know that's the solution, so go ahead already. Stopping the "nightmare" is under your control. – Stephan Branczyk Dec 25 '10 at 23:14
  • +1. I have 0 problems running 64 bit linux on the java 64 bit JVM with 64 bit eclipse. The problem is microsoft, not google or android. – Falmarri Dec 26 '10 at 00:26
  • @Android Eve A friend of mine had issues using a limited account in windows also. It was vista not 7 but running under admin is really not that big of a deal. Personally I run under Ubuntu with no issues so thats the extent of my advice here. – smith324 Dec 26 '10 at 03:24
  • Funny to read this 11 years old thread. It appears that not much has changed: https://stackoverflow.com/questions/2179453/how-do-i-use-aidl-tool-from-command-line-using-sdk-sample-code/2356403#comment131578404_2356403 – WebViewer Nov 22 '22 at 21:56
2

If Eclipse is not working out, you have options to "develop" for the Android from the command line.

icecreamman
  • 611
  • 1
  • 5
  • 19
  • @icecreamman That's true but that is not the development environment recommended on the official Android website. I am total newbie to Android, I must trust what the official site says. Also, I would like to enjoy tools that are as easy and convenient to use like the Microsoft tools. – Android Eve Dec 25 '10 at 22:17
  • @icecreamman: That's not really a fair answer... Java is nearly unusable without a good IDE. The IDE needs to know about which libraries you're using so it can help you. – Paul McMillan Dec 25 '10 at 22:19
  • @Android_Eve: "That's true but that is not the development environment recommended on the official Android website." -- there is complete documentation for developing using other IDEs/command line, to go along with the Eclipse instructions. – CommonsWare Dec 25 '10 at 22:43
  • @Paul McMillan: "Java is nearly unusable without a good IDE" -- as a counter-example, I have written three books on Android application development, and I do not use Eclipse. – CommonsWare Dec 25 '10 at 22:45
  • @CommonsWare what do you use? Presumably not `ed`. – Paul McMillan Dec 25 '10 at 23:03
  • @Paul McMillan: Komodo Edit, presently. I used to be a jEdit guy, but that project seemed to lose momentum. I am keeping tabs on redcar and may switch to it once it's a bit more fully baked. While my day-to-day development is on Linux, I teach Android development on the Vista side of my notebook (better results with projectors), and so there I am demoing using Komodo Edit. – CommonsWare Dec 25 '10 at 23:07
  • 2
    @Paul I've been doing Java development since the "alpha" version of Java, and I don't use Eclipse. (To answer your next question, Vim is my editor of choice.) I've tried Eclipse several times, but the cons of switching outweighed the pros for me. – Laurence Gonsalves Dec 25 '10 at 23:24
  • @Laurence I didn't claim that one needed Eclipse. Especially for learners, and especially for android, the IDE is pretty helpful with getting up to speed. I don't use an IDE for daily coding either (unless you count Emacs... it's really more of an OS), but I code in Python on a daily basis, so I have to type many fewer characters to achieve the same effect. – Paul McMillan Dec 26 '10 at 00:43
  • @CommonsWare I'll have to check that out. It hurts me to recommend Eclipse to people starting in Java, and I can't in good conscience expect them to learn emacs. – Paul McMillan Dec 26 '10 at 00:45