Slashdot is powered by your submissions, so send in your scoop

 



Forgot your password?
typodupeerror
×
Handhelds Hardware

SDK Shoot Out, Android Vs. IPhone 413

snydeq writes "Fatal Exception's Neil McAllister delves into the Android and iPhone SDKs to help sort out which will be the best bet for developers now that technical details of the first Android smartphone have been announced. Whereas the iPhone requires an Intel-based Mac running OS X 10.5.4 or later, ADC membership, and familiarity with proprietary Mac OS X dev tools, the standard IDE for Android is Eclipse. And because most tasks can be performed with command-line tools, you can expert third parties to develop Android SDK plug-ins for other IDEs. Objective-C, used almost nowhere outside Apple, is required for iPhone UI development, while app-level Android programming is done in Java. 'By just about any measure, Google's Android is more open and developer-friendly than the iPhone,' McAllister writes, noting Apple's gag order restrictions on documentation, proprietary software requirements to view training videos, and right to reject your finished app from the sole distribution channel for iPhone. This openness is, of course, essential to Android's prospects. 'Based on raw market share alone, the iPhone seems likely to remain the smartphone developer's platform of choice — especially when ISVs can translate that market share into application sales,' McAllister writes. 'Sound familiar? In this race, Apple is taking a page from Microsoft's book, while Google looks suspiciously like Linux.'"
This discussion has been archived. No new comments can be posted.

SDK Shoot Out, Android Vs. IPhone

Comments Filter:
  • The big caveat (Score:2, Interesting)

    by Anonymous Coward on Thursday September 25, 2008 @10:55AM (#25151631)

    No standard headphone jack = no sale for this consumer. Looking forward to future android offerings though.

  • by digitaldc ( 879047 ) * on Thursday September 25, 2008 @10:57AM (#25151659)
    And before you can view the training videos, you must first download them (for free) from the iTunes Store. Windows users, that means you'll need to install QuickTime and iTunes --

    Oh, you mean I HAVE to install iTunes to watch the training videos? Bummer.
  • Re:Biased much? (Score:2, Interesting)

    by ghoti ( 60903 ) on Thursday September 25, 2008 @11:03AM (#25151749) Homepage

    This is a bullshit comparison that doesn't go deeper than "NDA bad, Linux good." What about the actual API? The tools available for profiling code and debugging? GUI designer? Simulator? I like Eclipse and Java, but Xcode and the tools in the iPhone SDK are pretty damn awesome, I doubt that Android is anywhere near that.

  • by prayag ( 1252246 ) <prayag,narula&gmail,com> on Thursday September 25, 2008 @11:07AM (#25151809)

    I appreciate Android's open platform. I also appreciate Google's effort.

    However, I have my qualms. It is not possible to write native application in C/C++. Everything has to go through the virtual machine. I haven't developed for Android except write a simple Hello World. But, I would like to write my own native application that run on the Linux kernel.

    I do not like the iPhone, I hate Apple's brick walls around their platform which is anti to what Apple once stood for. 3rd party apps has made Symbian/WM the most popular mobile platforms and you cannot expect a long term growth with such iron fist.

  • Re:Biased much? (Score:3, Interesting)

    by Altus ( 1034 ) on Thursday September 25, 2008 @11:18AM (#25151933) Homepage

    while I agree with you on most of the apple tools, debugger integration is not really their strongest point.

    Now I haven't even looked sideways at the iPhone SDK but I'm still curious. Since xcode is just a UI on top of gcc, couldn't you just as easily do all your development for the SDK on the command line (accepting that you might be better off doing the interface development in interface builder). Sure, your probably still stuck on a mac since the SDK isn't available elsewhere, but it seems like you could use the command line or even eclipse as your SDK if you were willing to put in the time to configure it.

  • by Alioth ( 221270 ) <no@spam> on Thursday September 25, 2008 @11:19AM (#25151953) Journal

    Who says it doesn't end up as native code? Java has had JIT compilers for years now. They even only compile the code to native once, too.

  • Re:huh? (Score:2, Interesting)

    by mr_majestyk ( 671595 ) on Thursday September 25, 2008 @11:22AM (#25151995)
    er looks like you didn't RTFA...the iPhone SDK only works on Intel-based Macs
  • by holiggan ( 522846 ) on Thursday September 25, 2008 @11:31AM (#25152139)
    How does the Windows Mobile devices stand in this "war"? They are easy to develop to (at least based on the number of applications available), they have been in the market for much longer, and they don't have any of the iPhone restrictions regarding the instalation of applications.

    It's really weird to read that "Based on raw market share alone, the iPhone seems likely to remain the smartphone developer's platform of choice"... Don't tell me that the iPhone already outselled every single Windows-based PDA/Smartphone sold in the last 10-or-so years...

    Now, I see the Android as a much serious threat to Microsoft in the smartphone playground than the iPhone. If the Android devices are polished and slick enough, the public might catch on them, and with the openness regarding the development process, the comunity would surely correct the eventual rough edges. That's simply not the case with the iPhone: why can't I use another email client on the iPhone? Oh, right, it "competes" with the native aplication...

  • Re:Biased much? (Score:5, Interesting)

    by samkass ( 174571 ) on Thursday September 25, 2008 @11:32AM (#25152155) Homepage Journal

    That's a good point and probably true, especially for developing for the Simulator. In fact even the helper apps (like converting to iPhone-preferred audio formats) are all command line tools. However, it seems like it would be a huge amount of work for little gain to unhook it from XCode, but I would be surprised if it couldn't be done once you figure out the zillion-and-one configuration issues.

    I know we're all under NDA, but I've had very little problems with debugger integration. There's sometimes the frustrating unexplained BAD_ACCESS, but in general I can see threads, allocations, I/O, memory leaks, locks, allocations, SQL reads/writes/locks, OpenGL monitors, etc etc etc. I thought it was pretty impressive myself. Gotta love DTrace.

  • Holy crap! (Score:4, Interesting)

    by ubrgeek ( 679399 ) on Thursday September 25, 2008 @11:46AM (#25152369)
    A story mentioning Google without a "donoevil" tag?? Someone must be falling asleep at the switch.

    In all seriousness, does the average consumer care about the underlying stuff? The "problem" with iPhone apps is that they look good, they're easy to install and they generally work. That's all the average person cares about. More and more people have iPods and thus iTunes and so are used to having the process of transfering Item A (music) to Item B (their iPod.) Now swap music for application and iPod for iPhone and you've got a something people are familiar with. Granted, that _might_ change if Google does create their own version of the Google store, but it depends how they pimp it. My guess is appropriate apps will show up in search results, the same way as their ads are tied to whatever it is for which you are searching. Now that might tip things toward them. Everybody uses "The Google" and they're all familiar with it....
  • Re:Hmmm... (Score:5, Interesting)

    by _Sprocket_ ( 42527 ) on Thursday September 25, 2008 @11:48AM (#25152415)

    Indeed, let us all be glad that Microsoft won the PC war instead of Apple. Jobs would have been worse.

    It's more complicated than that. [zefrank.com] Although I agree with the general sentiment.

    It wasn't so much that Microsoft won. It's more along the lines of IBM losing and Apple losing more. Or rather, IBM winning by losing and Apple losing by winning. IBM lost control of its platform which then became a commodity platform to take over the industry. Apple maintained control of their platform(s) and became marginalized players in a market they were a major part in creating.

    Microsoft was, of course, a major part of this history. And their role tends to shift over the years. At first they were a key component in allowing Compaq to start the (legal) "IBM clone" market. They then shift to becoming the (or at least one of the very few) common factor to the new commodity market - gatekeepers who in turn begin to influence the direction of that market.

    It should be noted that Microsoft's developer-driven focus is part and parcel of the overall market. Proprietary platforms were the old world (something Sun had to re-learn). Microsoft was operating in a commodity world - or at least, riding the wave of commodity hardware. That mindset was in stark contrast to Apple's.

  • Not completely true. (Score:4, Interesting)

    by BSDimwit ( 583028 ) on Thursday September 25, 2008 @11:55AM (#25152511)
    Not true... It can be made to work on PPC macs with a few minor tweaks and the assistance of Pacifist. What you can't do is sign apps so that they can be run on an external device(the app signer isn't a universal binary). I use the sdk at home on my PPC powerbook, and check the code into my subversion repository, then when on an intel based Mac, sign the apps and test on the iPhone. Not ideal, but its better than nothing.
  • by Microlith ( 54737 ) on Thursday September 25, 2008 @12:26PM (#25152997)

    Which is wholly irrelevant.

    Until I can write apps for it that target the Linux environment underneath, or even replace the kernel, the fact that it is based on Linux is pointless. I can name a LOT of other phones that are Linux based. They're not open either.

  • by Burz ( 138833 ) on Thursday September 25, 2008 @12:28PM (#25153045) Homepage Journal

    I think the parent is way off base.

    Many of the killer apps that defined the personal computing revolution were authored authored and nurtured independently on Jobs' platforms. There is the spreadsheet (Visicalc on Apple II), desktop publishing (Quark and Adobe on MacOS), and the web browser (WorldWideWeb on NeXT aka OS X). Although not creating the image editing category on the desktop, Photoshop was born on the Mac. Apple later gained a knack for video editing, forcing Adobe to get off their behind and improve Premiere.

    Now is today's Apple taking a page from Microsoft? Yes... Any OS vendor that regularly forces members of its own developer base out of the market is displaying MS-like behavior. But overall Apple's track record for enabling 3rd party development is (or was) very good indeed.

  • by Miamicanes ( 730264 ) on Thursday September 25, 2008 @12:39PM (#25153199)

    > Apple is taking a page from Microsoft's book, while Google looks suspiciously like Linux

    Um, in America at least, Linux-based and/or Java-using phones (like Motorola's and the Sidekick, respectively) are some of the most locked-down phones you can buy, requiring certs and signed apps for everything. The last time I checked, anyone with a copy of Visual Studio can build apps for WM6 and deploy them to their phone, their friends' phones, or post them online for anyone else to download and install.

    When it comes to real-world PDA phones, HTC's phones running Windows Mobile have been more open than even PALM's phones were. Anyone remember the Samsung SPHi300, i330, and i500 -- all of which were eagerly bought up when introduced, then withered on the vine because Samsung wouldn't release useful SDKs for them -- not even for innocent things like the screen/soft graffiti API, let alone anything related to the phone UI? Compare that to, say, the HTC Apache/PPC-6700, which was probably the most sliced, diced, hacked, and extended phone in history... a phone that was dysfunctional and almost unusable as a phone "out of the box", but had most of its worst problems ultimately solved by independent programmers who wrote their own extensions and enhancements for it.

    The battle isn't "Android vs Windows Mobile and iPhone", it's "Android AND Windows Mobile vs iPhone". Windows Mobile devices might be some of the most dysfunctional phones on earth for making voice calls(*), but they ARE an open platform as far as app and extension development is concerned.

    (*)I'd like to kill the IDIOT(s) who decided that an incoming call on a Touch whose display is "off" should enable touchscreen input... and leave it enabled... so if you don't hear an incoming call and have the phone in your pocket, you can trigger all kinds of random events without even realizing it. Or "ignore" an incoming call by accidentally touching the wrong place on the screen while trying to fish the ringing phone out of your pocket. Or notify me that I have voicemail, but require me to dismiss the notification to see the notification that I missed a call, then keep dismissing notifications to actually SEE whose call it was that I missed.... (bangs head on wall, fantasizing occasionally about banging the phone instead).

  • Re:Biased much? (Score:5, Interesting)

    by Sancho ( 17056 ) * on Thursday September 25, 2008 @12:43PM (#25153253) Homepage

    Ever programmed in Objective C? It's really an elegant design, and most developers seem to have no problem adjusting to it. Rather than thinking that it's unfortunate that Apple chose such an uncommon language for development, I think that it's unfortunate that Objective C hasn't gotten more acceptance outside of Apple.

  • Open for WHO? (Score:2, Interesting)

    by jmorris42 ( 1458 ) * <{jmorris} {at} {beau.org}> on Thursday September 25, 2008 @01:02PM (#25153535)

    > Either the machine is open, or it isn't. If it's not, then Google has been deceiving us.

    Google has been deceiving you. YOu have also been deceiving yourself. It depends on what your definition of Open is and who you are talking too. Google was talking to handset makers and carriers and Android is indeed Open to them. They were NOT talking to you, the end user. Android is 100% closed to you. It will be SIM locked. Apps will be signed and T-Mobile and perhaps Google will have an absolute veto that isn't subject to appeal over any apps loaded into the device. Any such apps will, at any rate, be sandboxed into the JAVA tarpit where performance isn't an option.

    The only question is whether they can lock a phone better than Apple?

  • by amasiancrasian ( 1132031 ) on Thursday September 25, 2008 @01:16PM (#25153745)

    I'm sure someone is going to find a way to criticize your argument about the openness of Apple, and its acceptance procedures/control, but I agree with you entirely. Apple has always required its developers to develop intuitive interfaces. It doesn't matter how good your technology is if you can't implement it in a way that is easy to understand.

    If anything, Apple provides all the tools you need to meet this requirement. Objective-C along with Cocoa and its Core set of libraries (Foundation, Quartz, OS, etc) are very easy to use. Compare the time it takes to get a functional app using the Cocoa set of tools compared to most other SDKs. Apple fully supports its developers, but requires its developers to produce well-implemented ideas, not half-baked cakes.

    In the end, the customer wins. If you look at Linux or Windows, you will see that there are plethora of apps that don't follow a unified user-interface. But the goals of those two platforms are entirely different--the freedom to make your app look good or look like crap. No two programs I download will likely have the same interface.

    On OS X, though, I will most likely know what to expect when I download an app, and almost immediately know how to work with the user interface. This rarely happens on Windows or Linux given that unified interfaces on either platform has not been a reality (Linux: difference in opinions; Microsoft: difficult to use, developer stubbornness). On OS X, I know app support files will be placed in ~[user]/Library, and I know that my app will be bundled in an .app folder.

    These are different opinions. For the hacker, they might appreciate the Linux philosophy (even though most things in Linux can be done in OS X). For the end-user who likes control, Windows may be a better choice. But for users who like to use a consistent interface, OS X is probably the closest to the ticket.

    I use OS X because most apps written on OS X are standardized. Yes, Apple does cannibalize some of its developers, but there are tradeoffs. Apple acts in its own interests, which is to sell as many computers as it can, and by acting on its own interests, it tries to develop in a way that makes it easy for the user to jump start.

  • by dubl-u ( 51156 ) * <2523987012@pota . t o> on Thursday September 25, 2008 @03:19PM (#25155653)

    There is no excuse however for Java's longer method names.

    ProTip: Nobody types those method names out anymore. Enter the mid-90s and get an IDE with autocomplete.

    Yes, vi and EMACS are awesome monuments to 1970s technology, and I also love them. But I'd no more use them for professional coding than I would wear a 1970s polyester leisure suit to a funeral. The tools have moved on, and so should you. I use IntelliJ's IDEA, but Eclipse is an acceptable second best, and it's free.

It is easier to write an incorrect program than understand a correct one.

Working...