Google's Android Cellphone SDK Released 283
AchiIIe writes "The android SDK has been released to the wild. As expected it features the Linux Kernel, low level libraries such as FreeType, OpenGL, SQL Lite, WebKit (as a web browser), a custom Java Bytecode interpreter that is highly specialized for the CPU. A common java API is provided. A video has been posted with an the overview of the API." SM: Several readers have also written to mention the Android Developer Challenge offering $10 million in prizes for cool mobile apps.
Hardware? (Score:5, Insightful)
"a custom Java Bytecode interpreter that is highly specialized for the CPU" - Kind of hard to do that in an emulator on a PC. What CPU is this optimized for? (Guessing ARM... Still, to evaluate performance you need real hardware.)
Re: (Score:2, Insightful)
Re: (Score:2, Informative)
and the correct transfer hardware and developer's kit from a NON-OHA
phone.
Ironically, that makes this really hard, because the old-school (non-
Android) handsets make it very hard to independently develop with.
We have a forum thread discussing this possibility:
http://www.ohadev.com/forum/viewtopic.php?p=23 [ohadev.com]
Cheers,
Brian Jordan
http://ohadev.com/ [ohadev.com] - Android SDK discussion, code samples, tutorials,
application submission
Re:Hardware? (Score:5, Interesting)
Android for Kaiser = drool. Even Android for Hermes would rock.
Re: (Score:3, Interesting)
"a custom Java Bytecode interpreter that is highly specialized for the CPU" - Kind of hard to do that in an emulator on a PC. What CPU is this optimized for? (Guessing ARM... Still, to evaluate performance you need real hardware.)
The "custom Java Bytecode interpreter" probably means a Jazelle JVM [arm.com] or variant. These are specialized CPU/JVM combinations that execute Java bytecode in hardware. This technology is used on many of the Java phones already in the market.
-Will [ohadev.com]
Re: (Score:3, Interesting)
I kind of doubt the Jazelle thing, though, since Warren East at ARM was talking smack about Android [wired.com], and they are the ones that do Jazelle...
Android is not on hardware yet (Score:5, Informative)
a COOL app (Score:4, Funny)
Incorrect repository URL? (Score:5, Informative)
Re:Incorrect repository URL? (Score:5, Funny)
$10E7 ? (Score:2)
Re: (Score:2)
$10E7 ? (Score:2)
Re: (Score:3, Funny)
Re: (Score:2)
Hell, just use <Dr Evil>10 Million Dollars! Muahahaha</Dr Evil>
-metric
Re: (Score:2)
Android will start the Java tornado on devices (Score:4, Interesting)
Being a developer of an open source java database [db4o.com] myself, I am absolutely thrilled.
This is the the single best possibe thing that could have happened for the success of Java on devices. This SDK will be decisive for how software will be written for the masses in the future: With Java. Don't forget: The number of mobile phone users without a PC will soon be an order of magnitude higher than the number of PC users.
Re: (Score:2, Insightful)
Independent developers discussion forum (Score:3, Interesting)
Terr'rists, Italians and Quebecers not allowed. (Score:5, Interesting)
"The Android Developer Challenge is open to individuals, teams of individuals, and business entities. While we seek to make the Challenge open worldwide, we cannot open the Challenge to residents of Cuba, Iran, Syria, North Korea, Sudan, and Myanmar (Burma) because of U.S. laws. In addition, the Challenge is not open to residents of Italy or Quebec because of local restrictions."
Mama Mia! Tabernak!
Re: (Score:2)
Re:Terr'rists, Italians and Quebecers not allowed. (Score:5, Informative)
Yep - you have to pay a "license fee" of 10% of the potential prize to the government as a "permit" - even if nobody wins.
Of course, the simple way around that is to submit it via the web, naming a relative in another province/state.
Re:Terr'rists, Italians and Quebecers not allowed. (Score:5, Funny)
Here is an idea for Google (Score:2, Interesting)
Now, your phone is your true home assisitant.
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Isn't the iPhone SDK coming due out right around February? And doesn't that support the iPod Touch as well as the iPhone?
Seems to me that you could combine what Google and Apple are doing in the handset space right now to achieve pretty much what you want...
(By the way, I've already been doing some of the specific things you're talking about with web apps designed to render on phones. There's a Java API (other languages too) for X10, and so you can write web apps tuned for handhe
Re: (Score:2)
No thanks. I'd much rather see the same hooked up to a phone with a decent-sized screen (the iPhone comes to mind, even though I don't own one) and be able to control it like that. Maybe the Neo1973
Re: (Score:2)
Apparently, you have not looked over android yet. Short answer, they are targeting touch screens as well as old style. I would assume that most of the phones that will come from this will be iphone style. Me? I would rather see an ipho
Re: (Score:2, Interesting)
Re: (Score:2)
This was part of the idea behind the UMPC. People didn't really buy it. I could see some sort of a universal home remote control being worthwhile, but only if my computers and appliances and stereo/TV all operated with some open standard that was easy to set up.
You Got It (Score:2)
To complete your dream, make the LMCE Orbiter run on an Android mobile phone.
worth a try.. (Score:5, Informative)
(1) It's Java. Sometimes Java is the right tool for the job. Unfortunately, I've never been a big fan of the Java libraries. They always seemed overly complex and verbose to do simple things. I say this comparing it to both the STL/Boost for C++ and Cocoa. Granted, both of those libraries have their issues.
(2) It's eclipse-centric. It looks like they want you to use Eclipse. I'm sure you can do fine without using Eclipse. I'm not sure how dependent it is on creating interfaces etc. So you might do best to ignore this point. Eclipse does some things really well -- taking advantage of being a Java-based editor, it can use RTTI to help in the code-writing process.
That said, I would be very happy if I never had to use Eclipse again. The interface itself is extremely non-intuitive, gets in the way, and caused a great deal of swearing to occur. Nowadays I use either Emacs, Textmate, or XCode. XCode isn't perfect but it does a really good job of not getting in your way, and occasionally actually helping out (like the reference panel that automatically calls up info on the function your cursor is over
(3) Code layout. I'm not sure how much of it being a Java thing, or how much it is google, but the fact that I need to go 3-4 directories in just to get to the source code is very frustrating. I'm pretty sure there's better ways to do that.
(4) I have an iPhone. I'm waiting for the iPhone SDK to be released
(5) It appears to come with an emulator, which is very cool! That is a major win for fast development times.
Give all my complaints, I'm probably going to try writing an app or two for it ASAP. Code should be fun to write, which will be my major test for how good/bad the platform is. I also wonder how configurable it is. Did they come up with good conventions? If not, can you override them, or will all apps suffer the same?
Re:worth a try.. (Score:5, Insightful)
Some responses to your points:
(1) It's Java.
Java is the entrenched standard for mobile development. Google isn't pushing Java here, they're trying to maximize their reach to existing mobile developers.
(2) It's eclipse-centric.
As mentioned on their site, Google's developers use a mix of Eclipse, IntelliJ, and NetBeans for development, which is pretty much the standard in Java development. They've probably released an Eclipse plugin first because it had the broadest reach and perhaps it was the easiest environment to create a plugin for. I doubt this means that Google is pushing Eclipse, however, I would expect tutorials and documentation (if not additional plugins) to be released for the other environments soon enough.
(3) Code layout.
Code layout in package directories is pretty much a Java thing, again pretty standard.
(4) I have an iPhone.
iPhone is a single phone. Android will support a whole platform of upcoming phones. This is a big enough difference to be interested in the Android SDK at the very least, if not both. Plus, you can check out the Android SDK now while you'll have to wait until February for teh iPhone SDK.
(5) It appears to come with an emulator, which is very cool!
Yeah, it is very cool! This is also pretty standard for wireless toolkits (WTK), since development on the devices themselves is usually difficult and time-consuming. My company's [javaground.com] suite of game development tools includes a similar universal emulator, which I love using. It's pretty much a must for mobile development.
I'm also looking very forward to playing around with the SDK. Hope some great things can come from these developments in the mobile world.
-Will [ohadev.com]
Re: (Score:2)
Flash is also a widely used platform, but I really wouldn't ever endorse it for anything besides making banner ads involving monkeys getting punched.
(2) Since they are going with Java, it does make sense to go with those technologies. I
Re: (Score:2)
(4) I have an iPhone. I'm waiting for the iPhone SDK to be released .. it will be interesting to see how it compares. I really like Cocoa. It's really a great language/libraries for developing windowed systems. Interface Builder is the only GUI builder I think makes sense. I hate code generation, and I hate the weird quirks that come with many others (QT, Visual Studios, WxWidgets, GLADE++). IB just works.
I've had a much better GUI design experience after switching to JFormDesigner [jformdesigner.com]. It does a spectacular job of making all the layout managers completely intuitive. The only other GUI designer that even came close to it was the Delphi/C++Builder designer, but it was still a distant second place.
It's paid for itself many times over in saved headaches and time.
Re: (Score:2, Interesting)
(2) You need a bit of patience to learn eclipse. Don't try to learn it without reading the tutorial. Once you get over the learning curve you probaly will like it.
(3) Yeah, that annoys me too, but only minor annoyance.
ZOMG! (Score:3, Funny)
I demand that henceforth we all refer to the runtime as the Dalek VM.
Re: (Score:2)
How will Google make money on this? (Score:3, Insightful)
Re:How will Google make money on this? (Score:5, Insightful)
It might be worth it for them just by making it hook in easily with Google ads and search.
Think about it this way: as mobile phones become more powerful and internet-ready, more people will be doing more of their casual online stuff on their phones. Right now, lots of smartphones are defaulting to Windows for their development. That means their web browsers will probably use Live search for their search engine. Phones will recommend Hotmail for anyone looking for webmail. It will become a good way for Microsoft to fight Google for online dominance.
So what's Google's way to fight back? Apple's keeping the iPhone software to themselves. Palm is basically a joke. RIM's stuff is pretty limited. Google has to build their own platform so that Nokia and Motorola will be using Google Search, Gmail, Google Apps, Blogger, etc. as a default.
So that's where the money is. That's where all Google's money comes from.
Re: (Score:3, Interesting)
For example, if your search history included something like "taco bell nutrition information," and you were walking past a Taco Bell, I'm sure Pepsi Co would gladly pay Google some cash to have your phone pop up the message "try our new Grande C
Re: (Score:3, Insightful)
Re: (Score:3, Insightful)
As a user of Google Maps on Windows Mobile, I can tell you that the only thing broken about it is Windows Mobile. Amazing operating system, assuming you adopt the "why the heck did it just do that?" definition of "amazing". (e.g. wakes from hibernation to display the "low batt
Re: (Score:2)
Owning the platform (it's free, so you have a license to do almost anything, but impersonate google as the creator) gives them a lot of power. 10MM USD is pocket change compared with the publicity and the amount of great appli
WebKit? (Score:5, Insightful)
That means that the gPhone web browser has the same rendering engine as the iPhone web browser, the one that's shared by Safari (and OmniWeb) on the desktop. It's going to get less and less safe for web developers to ignore that rendering engine...
Re:WebKit? (Score:5, Insightful)
Re: (Score:2)
(I kid, I kid. I don't blame Microsofts developers, I'm firmly convinced it's their 1863454 levels of management that bungle most of their projects.)
Re: (Score:2)
Re: (Score:2)
Re:WebKit? (Score:5, Informative)
So, were all the nay-sayers now? (Score:4, Insightful)
You know who you are, the ones that said Ballmer had a point last week when he called Android a press-release. Well, here is the SDK, as promised. On time.
So will all those slashdotter who doubted eat crow now? Or will the MS fanboys just pretend this never happened, or now move on to, "all google has is a press-release, and a sdk, and an alliance".
Come on, we need some amusement here. Spin this one!
Re: (Score:3, Insightful)
OpenMoko mailing lists have average 50 posts per day (and has been that way for months). They've released real hardware. There are hundreds of youtube videos demonstrating OpenMoko interface, and hundreds of people hacking on the phone. It's the only phone where hackers are tolerated, let alone welcomed.
And the biggest t
Random? (Score:2)
Lets not pretend Google isn't an ad company. If it doesn't push ads, they wouldn't do it. We already know from their announcements they will use voice recognition to figure out what ads to push.
Sorry Google, but F' you and your little ads too.
Re: (Score:2)
Re:Random? (Score:5, Interesting)
-metric
Webkit as a powerful new platform (Score:5, Insightful)
So... Java... standard APIs... WebKit... (Score:4, Interesting)
That would mean that you could code for the gPhone and deploy on the iPhone (or even iPod Touch), either by loading the runtime onto the iPhone first (cf. "Cedega"), or by bundling a stripped-down runtime into the iPhone version of the app (cf. "Cider").
That'd rock. That'd rock hard. I'd become an Android developer if things work out that way.
This cannot be true! (Score:5, Funny)
No it hasn't. THAT'S IMPOSSIBLE! IT'S JUST VAPORWARE! IT'S JUST A PLAN ON PAPER! THERE'S NOTHING BEHIND IT, NO SPECS, NO DETAILS!
I'm 100% sure this is the case because Steve Ballmer said so. All claims to the contrary must therefore be lies.
Re: (Score:3, Insightful)
Google does have a strong corporate backing, however, including companies that
Re: (Score:2)
if you can buy or otherwise get a phone running Android, and the phone can make calls, then it's not vapour. Do we have that?
included libraries (Score:2)
Re: (Score:2)
-metric
Re: (Score:2)
-metric
Re: (Score:3, Informative)
Comment removed (Score:4, Informative)
"SkyNet" Developers Kit (Score:2)
OMG! Sergei Brin's Outfit! Long Slv T-shirts FTW! (Score:3, Interesting)
Check out the video of Sergei! He's the CEO of the company, worth billions of dollars, making an official product promotional video and he's wearing a shirt that looks like he slept in it! If you can be a billionaire wearing shirts that you slept in I don't even know why I even bother wearing a collar at all
Re:OMG! Sergei Brin's Outfit! Long Slv T-shirts FT (Score:3, Informative)
If you can be a billionaire wearing shirts that you slept in I don't even know why I even bother wearing a collar at all :).
Other way 'round. Sergey can wear whatever shirt he wants because he is a billionaire (also note his hair looks as if it has just been slept in as well in that video). You, on the other hand, not being a billionaire, must wear the shirt that The Man tells you to wear.
-jimbo
Java? what about C/C++? (Score:2)
Re: (Score:2)
yes, i already have support for the iPhone/iPod Touch (one of those users apple hates right now). the unofficial SDK is even hosted on google groups. now, android may create devices which are only for android, i need C/C++ SDK to support these devices. the other devices are already handled.
First Post? (Score:4, Funny)
Dollars? (Score:4, Funny)
Android Treo? (Score:2)
Can anyone install Android as the Linux running one of these Treos? That makes all the devices work, including touchscreen and (cell) radio?
Just Danger on Linux? (Score:2)
Danger (aka Sidekick aka HipTop) is based on a custom Java VM as well, and allows developers to write apps for it using a Java SDK. What they don't have is Google's massive marketing machine...
Desktop (Score:2)
Would be nice to be rid of X.
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
Its too bad- I was interested in trying this out, but I don't do Java.
Re: (Score:2)
I'm curious, why is Java
Re: (Score:3, Informative)
assumptions (Score:2)
The difference might be quite large; Android does not have the same JIT as the desktop Java runtime (if it has a JIT at all). And even on the desktop, there are some things at which Java is really bad compared to native code.
will be dwarfed by the extra development time
On the other hand, the inability to reuse existing C libraries may add many man-years to your pure Java project.
and the fact that few developers will be interested in worki
Re:Java means (Score:4, Insightful)
It would be suicide (see Palm as an example) for Google to make developing using native code difficult. (For those not in the know, even though PalmOS has run on ARM CPUs for years, normal apps are still emulated m68k code, with the option of "ARMlets" to allow snippets of native code on PalmOS 5. Writing an ARMlet is an UNHOLY NIGHTMARE. I attempted to speed up a program by replacing some code with native ARM code and gave up.)
Re: (Score:2)
I was wondering why Sun isn't an Alliance partner, and I'm now assuming it was because they didn't like the direction Google was taking this.
It would be suicide to make native code necessary at all. There are four major platforms - Windows Mobile, Palm OS, Series 60, and BlackBerry - and now there will be six - Android and the iPhone. Developing mobile applications is mo
Ooops (Score:4, Insightful)
I just lost a lot of interest in Android, if it pigeonholes developers into a single language and makes compiling native code with an efficient language difficult. Java utterly failed in the "Write once, run everywhere" arena, and it's an ugly horse-designed-by-committe language that universally leads to bloat. (See, for example, the memory usage and UI responsiveness of uTorrent when compared with Azureus.) There's a big focus on mobile devices towards multimedia applications (video, audio), and smooth video playback on a phone takes even natively compiled code to its limits.
Re:Ooops (Score:5, Insightful)
Going with a JVM is the only logical way to go with this kind of system. You don't want the end user to have to compile the application for their phone and yow don't want to have recompile a for each new cell phone that hits the market.
Re: (Score:2)
Err, no. Everything about Android, at least from the POV of a developer for applications on it, is Java. Think about it - why on Earth would you allow native code when one of your primary goals is system security? Maybe you could figure out a way, but it doesn't seem like the best thing to do.
I don't think the way Goog
Re:Java means (Score:5, Interesting)
PalmOS primarily ran on low power devices, and you pretty much needed to "hit the metal" if you wanted to get any sort of performance from your apps. It's something I used to do a great deal in the past, but not for many years.
However, we're talking about much more powerful devices here. Even the most basic smart phone packs quite a bit of processing power these days, and much of the core functionality is provided at a hardware level, so the level of abstraction provided by a driver model is absolutely essential. If you go low level, then your application isn't able to take advantage of the additional power offered by some devices but not others. You end up coding to the lowest common feature-set.
Making use of the APIs which provide interoperability and a standardised framework is the only way to ensure that your software will run on all Android devices, something which from a business point of view is essential.
For what it's worth, I was always a big fan of Palm's work back in the day, but they really haven't moved with the times, and I genuinely can't see them surviving for long now that Google have put together what, certainly at first inspection, appears to be a very fine, well thought out, free mobile platform and application stack, especially as they are also providing all of the necessary tools and support for free.
I know I'll certainly be putting in the time to fully learn the APIs and try and come up with novel commercial ideas for a chance to get hold of some of the $10M cash their putting up to get as many people involved as possible. I suspect many others will be doing the same.
With a company the size of Google behind the software, and interest from plenty of big players on the hardware front, coupled with sensible Open Source choices when it comes to the main platform components, I can't see it being anything other than a success.
Whilst it's currently being marketed as a smart phone platform, Android easily has the potential to spur on the creation the sort of non-mobile convergence devices that we've been expecting for years, but which have failed to materialise. If you look at the functionality provided by the platform, it's more than capable of providing all of most people's day to day requirements of a full PC, and not just a mobile device. If you ignore gaming, which has always been the driving force behind the push for faster hardware, then most users only require a small fraction of the processing power available in their desktop PC, so I wouldn't be at all surprised if within the year we didn't have full desktop oriented devices based around Android on the market.
As you can probably tell, I think Google have done pretty much everything right as far as Android is concerned, and I'm very excited about it. I fully expect the smart money and development talent to be behind them, if not from the very start, then very soon.
Java is not bad for mobile phones. (Score:5, Informative)
Real slow phones.
No. Most of the phones on the market today use Java for graphics and applications, including pretty much all of the popular cell phones in Japan that make any phones in the Western world look childish by comparison. The problem is that there is an impression among standard Windows developers that Java is necessarily slow, which is absolutely not true. Sure, the early PC JVMs, the Swing toolkit and the applet model were resource-hungry abominations, but Java on cellphones is lean, mean, and it's already pretty much everywhere.
Re: (Score:3, Informative)
Most of the phones on the market today use Java for graphics and applications, including pretty much all of the popular cell phones in Japan that make any phones in the Western world look childish by comparison. The problem is that there is an impression among standard Windows developers that Java is necessarily slow, which is absolutely not true.
Not disagreeing with you but it's important to point out that the Java that runs on a phone is micro edition which has some important differences from standard edition. They're not exactly the same thing. And it's also important to note that there are other contenders for cell phone apps like BREW (at least that was around a while ago, not sure if it still is).
Re: (Score:2, Funny)
Re:Java means (Score:4, Informative)
Windows Mobile is essentially Windows CE +
ergo, by postulate "Java means Real slow phones,"
Windows Mobile also means real slow phones.
Anyone have a problem with that?
Seriously, both
Re: (Score:2)
Re: (Score:2)
You could install Linux or Windows and run them under Qemu and then install the SDK but why?
Re: (Score:2)
We are doing just that... (Score:2)
Re: (Score:2)
This is what excites me the most about Android: OpenGL ES compatible Graphics API.
Oh please. Handsets have been shipping with Mobile 3D Graphics [wikipedia.org] for years (a 3d scene graph FYI). It is standardized as JSR-184 and is pretty much ubiquitous on even midrange phones. Earlier than that, you had the Mascot Capsule [gamedev.net] which is still the fastest J2ME 3D API for low end devices. Now there is also the OpenGL ES bindings (JSR-239) which will be included in many phones being released this Christmas and spring.
It is cool that Google is making a gPhone, but really, they aren't breaking any new ground
Re:In terms of open phones, the big question is .. (Score:2)
Re: (Score:3, Insightful)
The iPhone is breaking new ground exactly because it is prettier, smoother and more friendly. That is what I was talking about from the start.