<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Google Data &#187; Dan Morrill</title>
	<atom:link href="/author/dan-morrill/feed/" rel="self" type="application/rss+xml" />
	<link>https://googledata.org</link>
	<description>Everything Google: News, Products, Services, Content, Culture</description>
	<lastBuildDate>Fri, 03 Apr 2015 21:58:02 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=4.1.1</generator>
	<item>
		<title>A Note on Google Apps for Android</title>
		<link>https://googledata.org/google-android/a-note-on-google-apps-for-android/</link>
		<comments>https://googledata.org/google-android/a-note-on-google-apps-for-android/#comments</comments>
		<pubDate>Fri, 25 Sep 2009 21:31:00 +0000</pubDate>
		<dc:creator><![CDATA[Dan Morrill]]></dc:creator>
				<category><![CDATA[Google Android]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[Google Mobile]]></category>
		<category><![CDATA[google os]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Lately we've been busy bees in Mountain View, as you can see from the recent release of Android 1.6 to the open-source tree, not to mention some devices we're working on with partners that we think you'll really like. Of course, the community isn't sit...]]></description>
				<content:encoded><![CDATA[<p>Lately we've been busy bees in Mountain View, as you can see from the recent release of Android 1.6 to the open-source tree, not to mention some devices we're working on with partners that we think you'll really like. Of course, the community isn't sitting around either, and we've been seeing some really cool and impressive things, such as the custom Android builds that are popular with many enthusiasts. Recently there's been some discussion about an exchange we had with the developer of one of those builds, and I've noticed some confusion around what is and isn't part of Android's open source code. I want to take a few moments to clear up some of those misconceptions, and explain how Google's apps for Android fit in.</p><p>Everyone knows that mobile is a big deal, but for a long time it was hard to be a mobile app developer. Competing interests and the slow pace of platform innovation made it hard to create innovative apps. For our part, Google offers a lot of services — such as Google Search, Google Maps, and so on — and we found delivering those services to users' phones to be a very frustrating experience. But we also found that we weren't alone, so we formed the Open Handset Alliance, a group of like-minded partners, and created Android to be the platform that we all wished we had. To encourage broad adoption, we arranged for Android to be open-source. Google also created and operates Android Market as a service for developers to distribute their apps to Android users. In other words, we created Android because the industry needed an injection of openness. Today, we're thrilled to see all the enthusiasm that developers, users, and others in the mobile industry have shown toward Android.</p><p>With a high-quality open platform in hand, we then returned to our goal of making our services available on users' phones. That's why we developed Android apps for many of our services like YouTube, Gmail, Google Voice, and so on. These apps are Google's way of benefiting from Android in the same way that any other developer can, but the apps are not part of the Android platform itself. We make some of these apps available to users of any Android-powered device via Android Market, and others are pre-installed on some phones through business deals. Either way, these apps aren't open source, and that's why they aren't included in the Android source code repository.  Unauthorized distribution of this software harms us just like it would any other business, even if it's done with the best of intentions.</p><p>I hope that clears up some of the confusion around Google's apps for Android. We always love seeing novel uses of Android, including custom Android builds from developers who see a need.<b> </b>I look forward to seeing what comes next!</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6755709643044947179-4389042964160808218?l=android-developers.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-android/a-note-on-google-apps-for-android/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Android 1.5 at Google I/O</title>
		<link>https://googledata.org/google-android/android-1-5-at-google-io/</link>
		<comments>https://googledata.org/google-android/android-1-5-at-google-io/#comments</comments>
		<pubDate>Mon, 27 Apr 2009 21:00:00 +0000</pubDate>
		<dc:creator><![CDATA[Dan Morrill]]></dc:creator>
				<category><![CDATA[Google Android]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[Google Mobile]]></category>
		<category><![CDATA[google os]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[I admit, I've been talking big about Google I/O in my last few posts. But I'm entirely serious: Google I/O is going to be the Android developer event of the year, no doubt about it. I want to take a few minutes to explain why.The most exciting aspect, ...]]></description>
				<content:encoded><![CDATA[<img style="float:left; margin:0 10px 10px 0;cursor:pointer; cursor:hand;width: 200px; height: 200px;" src="http://1.bp.blogspot.com/_DJiuxagkTVU/SfXLKfdYqpI/AAAAAAAAADE/ACW6FfnZfP0/s320/IO_blogpost-R2-blue.png" border="0" alt="" id="BLOGGER_PHOTO_ID_5329389115166730898" /><p>I admit, I've been talking big about <a href="http://code.google.com/events/io">Google I/O</a> in my last few posts. But I'm entirely serious: Google I/O is going to be the Android developer event of the year, no doubt about it. I want to take a few minutes to explain why.</p><p>The most exciting aspect, to my mind, is the technical content. We have 9 sessions listed now on the <a href="http://code.google.com/events/io/sessions.html">Google I/O sessions site</a>, and we're working on still more. (And that's not even including the fireside chat with the Android Core Technical Team.) I recently sat down with some of the speakers to discuss their topics, and found that this is very solid material. Here are some of the sessions I'm excited about.</p><p>My background is strictly in engineering, and I never had the chance in college to take any design courses. So one session I'll definitely be at is Chris Nesladek's "Pixel Perfect Code". He's going to start with the basics, and give us an overview of the theory of UI design, and then explain the principles that we use when designing the core Android UI. If you like the UI updates that you've seen in the <a href="http://android-developers.blogspot.com/2009/04/android-15-final-is-here.html">Android 1.5</a> "Cupcake" user interface, then be at this session.</p><p>My particular team works intensively with developers to help them build and launch applications. Justin Mattson is going to share some of the hard-earned debugging and performance techniques that we've picked up in our work with partners. He's going to walk you through some actual, real-world apps on the <a href="http://market.android.com/">Android Market</a> and show you how we squeezed the bugs out of them.</p><p>Now, they told me to focus on only one or two sessions in this post, but forget that. I can't resist! I have to tell you about a couple more, like David Sparks' session on the media framework. One of the most common questions we get asked goes something like "dude, what is up with all these codecs? AAC? MP3? OGG? MPEG? H264?" David's going to answer that question—among many others -- and explain how the media framework is designed and operates. Armed with this new understanding, you'll be able to make smarter choices as you design the media components of your own apps.</p><p>And last (for today), I want to mention Jeff Sharkey's "Coding for Life—Battery Life" session. A statement like "it's important to code efficiently on mobile devices" is deceptively simple. It turns out that what constitutes efficient code on, say, the desktop is sometimes woefully hard on battery life, on mobiles. What I've learned to tell developers is "everything you know is wrong." That's why I'm looking forward to Jeff's session. He's going to go through a whole basket of tips and tricks, backed up by some nice crunchy numbers.</p><p>And of course, these are just the technical sessions (and not even half of those.) We're also going to have quite a few folks representing some of our app developer and <a href="http://www.openhandsetalliance.com/oha_members.html">Open Handset Alliance partners</a> at Google I/O, but I'll save those details for another post.  I'm also looking forward to turning the tables, and giving some of you the floor. Besides the fireside chat where you can ask the <a href="http://source.android.com/project/core-technical-team">Core Technical Team</a> all the thorny technical questions you've been saving up, there's also a Lightning Talks session just for Android developers, and an Android Corner mixer area in the After-Hours Playground.</p><p>I'm also excited about a few surprises we've lined up... but I can't say anything about those, or they wouldn't be surprises, would they?</p><p>So, there you have it. Excitement! Drama! Surprises! It's like a movie trailer, but without the awesome voiceover. I hope it worked, and that you all are looking forward to Google I/O as much as I am. (By the way, I'm instructed to inform you that you can save a bit of coin by <a href="https://io2009.event-projects.com/">registering early</a>. You might want to hurry though, since early registration ends May 1.)</p><p>Happy Coding!</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6755709643044947179-403910035873942175?l=android-developers.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-android/android-1-5-at-google-io/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
<enclosure url="" length="" type="" />
		</item>
		<item>
		<title>Future-Proofing Your Apps</title>
		<link>https://googledata.org/google-android/future-proofing-your-apps/</link>
		<comments>https://googledata.org/google-android/future-proofing-your-apps/#comments</comments>
		<pubDate>Thu, 23 Apr 2009 16:15:00 +0000</pubDate>
		<dc:creator><![CDATA[Dan Morrill]]></dc:creator>
				<category><![CDATA[Google Android]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[Google Mobile]]></category>
		<category><![CDATA[google os]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Hi, developers!  I hope you've heard about the early-look version of the Android 1.5 SDK that we recently released.  There are some great new features in there, but don't get too excited yet -- some of you will need to fix some problems in your apps be...]]></description>
				<content:encoded><![CDATA[<p>Hi, developers!  I hope you've heard about the <a href="http://android-developers.blogspot.com/2009/04/getting-ready-for-android-15.html">early-look version of the Android 1.5 SDK</a> that we recently released.  There are some great new features in there, but don't get too excited yet -- some of you will need to fix some problems in your apps before you can start taking advantage of Android 1.5.</p><p>We've done some fairly extensive testing of the popular apps on the Android Market, and it turns out that a few of those apps use some bad techniques that cause them to crash or behave strangely on Android 1.5. The list below is based on our observations of five ways that we've seen bad apps fail on 1.5. You can think of these as "anti-patterns" (that is, techniques to avoid) for Android development. If you've written an app with the Android 1.0 or 1.1 SDKs, you'll need to pay close attention.</p><p></p><p><b>Technique to Avoid, #1: Using Internal APIs</b></p><p>Even though we've always strongly advised against doing so, some developers have chosen to use unsupported or internal APIs. For instance, many developers are using the internal brightness control and bluetooth toggle APIs that were present in 1.0 and 1.1. A bug -- which is now fixed in Android 1.5 -- allowed apps to use those APIs without requesting permission. As a result, apps that use those APIs will break on 1.5. There are other changes to unsupported APIs in 1.5 besides these, so if you've used internal APIs in your apps, you need to update your apps to stop doing so. Even if they don't break on Android 1.5, there's a good chance they will on some later version. (There's some good news, though: because "flashlight" apps are so popular, we've added the "screenBrightness" field on the WindowManager.LayoutParams class just for that use case.)</p><p><b>Technique to Avoid, #2: Directly Manipulating Settings</b></p><p></p><p>Okay, strictly speaking this one isn't evil, since this is a change in behavior that we made to Android itself. But we made it because some developers were doing naughty things: a number of apps were changing system settings silently without even notifying the user. For instance, some apps turn on GPS without asking the user, and others might turn on data roaming.</p><p>As a result, applications can no longer directly manipulate the values of certain system Settings, even if they previously had permission to do so. For instance, apps can no longer directly turn on or off GPS. These apps won't crash, but the APIs in question now have no effect, and do nothing. Instead, apps will need to issue an Intent to launch the appropriate Settings configuration screen, so that the user can change these settings manually. For details, see the android.provider.Settings.Secure class, which you can find in the 1.5_pre SDK documentation (and later). Note that only Settings that were moved to the Settings.Secure class are affected. Other, less sensitive, settings will continue to have the same behavior as in Android 1.1.</p><p></p><p><b>Technique to Avoid, #3: Going Overboard with Layouts</b></p><p>Due to changes in the View rendering infrastructure, unreasonably deep (more than 10 or so) or broad (more than 30 total) View hierarchies in layouts are now likely to cause crashes.  This was always a risk for excessively complex layouts, but you can think of Android 1.5 as being better than 1.1 at exposing this problem. Most developers won't need to worry about this, but if your app has very complicated layouts, you'll need to put it on a diet. You can simplify your layouts using the more advanced layout classes like FrameLayout and TableLayout.</p><p></p><p><b>Technique to Avoid, #4: Bad Hardware Assumptions</b></p><p>Android 1.5 includes support for soft keyboards, and there will soon be many devices that run Android but do not have physical keyboards. If your application assumes the presence of a physical keyboard (such as if you have created a custom View that sinks keypress events) you should make sure it degrades gracefully on devices that only have soft keyboards. For more information on this, keep on eye on this blog as we'll be posting more detailed information about handling the new soft keyboards.</p><p></p><p><b>Technique to Avoid, #5: Incautious Rotations </b></p><p>Devices running Android 1.5 and later can automatically rotate the screen, depending on how the user orients the device. Some 1.5 devices will do this by default, and on all others it can be turned on by the user. This can sometimes result in unpredictable behavior from applications that do their own reorientations (whether using the accelerometer, or something else.) This often happens when applications assume that the screen can only rotate if the physical keyboard is exposed; if the device lacks a physical keyboard, these apps do not expect to be reoriented, which is a coding error. Developers should be sure that their applications can gracefully handle being reoriented at any time.</p><p>Also, apps that use the accelerometer directly to reorient themselves sometimes compete with the system doing the same thing, with odd results. And finally, some apps that use the accelerometer to detect things like shaking motions and that don't lock their orientation to portrait or landscape, often end up flipping back and forth between orientations. This can be irritating to the user. (You can lock your app's orientation to portrait or landscape using the 'android:screenOrientation' attribute in your AndroidManifest.xml.)</p><p></p><p></p><p>Have any of <i>your</i> apps used one of these dubious techniques? If so, break out your IDE, duct tape, and spackle, and patch 'em up. I'm pretty excited by the new features in the Android 1.5 SDK, and I look forward to seeing your apps on my own 1.5-equipped phone -- but I can't, if they won't run! Fortunately, the fixes for these are pretty simple, and you can start fixing all of the above even with the 1.1_r1 SDK release.</p><p>By the way, if you'd like to fully immerse yourself in Android 1.5, join us at <a title="Google I/O" href="http://code.google.com/io" id="vmp1">Google I/O</a>! It's my pleasure to shamelessly plug an event that's shaping up to be the Android developer event of the year. We've added two more <a id="krvc" href="http://code.google.com/events/io/sessions.html#android" title="sessions">sessions</a>—one on multimedia jujitsu, and a particularly interesting session on the Eyes-Free Android project—with even more yet to come. I thought Google I/O was a pretty killer event last year, and this year's looking even better, especially in terms of Android content.</p><p>I hope to meet many of you there, but either way, Happy Coding!</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6755709643044947179-6443372341951283483?l=android-developers.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-android/future-proofing-your-apps/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Developer News</title>
		<link>https://googledata.org/google-android/developer-news/</link>
		<comments>https://googledata.org/google-android/developer-news/#comments</comments>
		<pubDate>Mon, 30 Mar 2009 23:00:00 +0000</pubDate>
		<dc:creator><![CDATA[Dan Morrill]]></dc:creator>
				<category><![CDATA[Google Android]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[Google Mobile]]></category>
		<category><![CDATA[google os]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[For no particular reason other than to celebrate this particular Monday, I wanted to update developers on two Android-related news items.If you're a developer who will be in the San Francisco Bay Area at the end of May, I hope you'll join us at the 200...]]></description>
				<content:encoded><![CDATA[<p>For no particular reason other than to celebrate this particular Monday, I wanted to update developers on two Android-related news items.</p><p>If you're a developer who will be in the San Francisco Bay Area at the end of May, I hope you'll join us at the <a href="http://code.google.com/events/io">2009 Google I/O developer conference</a>. You might have already seen the sessions we had listed for Android, but today I'm quite pleased to let you know that we've added a few more Android-related sessions.  You can find the <a href="http://code.google.com/events/io/sessions.html">full list plus abstracts</a> on the Google I/O site, but here are the titles:</p><ul><li>Turbo-Charge Your UI: How to Make Your Android UI Fast and Efficient</li><li>Pixel-Perfect Code: How to Marry Interaction and Visual Design the Android Way</li><li>Supporting Multiple Devices with One Binary</li><li>Debugging Arts of the Ninja Masters</li><li>Coding for Life&mdash;Battery Life, That Is</li><li>Writing Real-Time Games for Android</li><li>Android Lightning Talks</li></ul><p>These sessions don't even include the "fireside chat" with the Core Technical Team that we have planned. We're working on still more sessions too; keep an ear to the ground on this blog and the Google I/O site for the latest info. I'm pretty excited about how the Android sessions for Google I/O are coming together. I think it's going to be a great event, and I hope to meet many of you there.</p><p>The other topic I want to mention is that our partners at HTC have uploaded <a href="http://www.htc.com/www/support/android/adp.html">a new system image for Android Dev Phone 1</a> owners. This new image is mostly the same as the one we mentioned earlier this month, but adds voice dialing. Note that not all features will work correctly in all countries, such as voice dialing and Google Voice Search which currently only work well for US English. Additionally, there are some features that we aren't able to make available at all in some countries. For instance, this build can't currently include Google Latitude due to privacy standards in some regions. We'll always keep the ADP1 builds as full-featured as we can, but it's important to remember that these devices are primarily intended for development, and won't necessarily have all the features included on mainstream builds.</p><p>I hope this news is useful to you. As always, happy coding!</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6755709643044947179-9089603372394846532?l=android-developers.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-android/developer-news/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Software Update Available for the Android Developer Phone</title>
		<link>https://googledata.org/google-android/software-update-available-for-the-android-developer-phone/</link>
		<comments>https://googledata.org/google-android/software-update-available-for-the-android-developer-phone/#comments</comments>
		<pubDate>Mon, 09 Mar 2009 20:44:00 +0000</pubDate>
		<dc:creator><![CDATA[Dan Morrill]]></dc:creator>
				<category><![CDATA[Google Android]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[Google Mobile]]></category>
		<category><![CDATA[google os]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Back in December, the Android Dev Phone 1 (ADP1) went on sale, giving developers access to unlocked hardware for their work. A few weeks ago, consumers with retail devices received an over the air update with the 1.1 release of Android. I know that man...]]></description>
				<content:encoded><![CDATA[<p><a href="http://android-developers.blogspot.com/2008/12/new-resources-for-developers.html" id="izyx" title="Back in December">Back in December</a>, the Android Dev Phone 1 (ADP1) went on sale, giving developers access to unlocked hardware for their work. A few weeks ago, consumers with retail devices received an over the air update with the 1.1 release of Android. I know that many developers will be pleased to hear that today, our colleagues at HTC have released a <a href="http://www.htc.com/www/support/android/adp.html">1.1 version of Android for the Android Dev Phone</a> which you can install on your device. If you have questions about the process of updating your device, you can <a href="http://groups.google.com/group/android-devphone-updating" id="qs4f" title="ask the mailing list">ask the mailing list</a> we've set up for such questions.</p><p>This new system image is fully compatible with Android 1.1. To see a list of everything that's new, you can review the <a href="http://developer.android.com/sdk/android-1.1.html" id="xxk6" title="notes from the 1.1_r1 SDK">notes from the 1.1_r1 SDK</a>. This update also includes support for searching by voice, and priced apps in the Android Market.</p><p>Some developers have asked about the support for copy-protected apps on developer devices, and indeed there is a limitation you should be aware of. Many developers are concerned about the unauthorized redistribution of their applications, so they make use of the copy-protection feature (known as "forward locking") which prevents applications from being copied off devices. However, developer phones like the ADP1 allow for unrestricted access to the device's contents, making it impossible to enforce copy protection. As a result, the Market application on such devices is not able to access copy protected apps, whether they are free or paid. If you choose to add copy protection when you upload your application to the Android Market, then you won't be able to test it on the ADP1's Android Market client. Your application will always be accessible to users who have standard configurations though, and if your application (whether it is free or paid) is not copy-protected it will appear on all devices, including developer configurations.</p><p>If you own an Android Developer Phone, I definitely suggest you take advantage of this update. There's lots of good stuff in there, and the new software is backward compatible with Android 1.0, too.  The original 1.0 system image is also now available, you need to downgrade for any reason.  Happy coding!</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6755709643044947179-7278744263990542203?l=android-developers.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-android/software-update-available-for-the-android-developer-phone/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Android 1.1 SDK, release 1 Now Available</title>
		<link>https://googledata.org/google-android/android-1-1-sdk-release-1-now-available/</link>
		<comments>https://googledata.org/google-android/android-1-1-sdk-release-1-now-available/#comments</comments>
		<pubDate>Mon, 09 Feb 2009 19:25:00 +0000</pubDate>
		<dc:creator><![CDATA[Dan Morrill]]></dc:creator>
				<category><![CDATA[Google Android]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[Google Mobile]]></category>
		<category><![CDATA[google os]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Hello, developers!  As you may have heard by now, users around the world have started to receive updates to their Android devices that provide new features and functionality. You may also have noticed that the new update reports as "Android 1.1".  Appl...]]></description>
				<content:encoded><![CDATA[<p>Hello, developers!  As you may have heard by now, users around the world have started to receive updates to their Android devices that provide new features and functionality. You may also have noticed that the new update reports as "Android 1.1".  Applications written with the 1.0_r1 and 1.0_r2 SDKs will continue to work just fine on Android 1.1. But if you want to take advantage of the <a href="http://developer.android.com/sdk/android-1.1.html#api-changes">new APIs in 1.1</a>, you'll need an updated SDK.</p><p> That's why I'm pleased to let you know that <a href="http://developer.android.com/sdk/1.1_r1/index.html">the Android 1.1 SDK, release 1 is now available</a>. As you'll quickly see from <a href="http://developer.android.com/sdk/android-1.1.html">the release notes</a>, the actual API changes are quite minor, but useful.  This new SDK has all the new APIs, as well as a new emulator image to let you test your applications.  If you have a retail device running Android, contact your operator for the update schedule.  An updated v1.1 system image for the Android Developer Phone 1 will be coming soon.</p><p>In addition to the new APIs, the emulator also contains improved ability to test localizations to the German language.  Localizations for other languages will be added in future SDK releases.</p><p>You can download the updated SDK using the links above. Happy coding!</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6755709643044947179-227788881369601060?l=android-developers.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-android/android-1-1-sdk-release-1-now-available/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Resources for Developers</title>
		<link>https://googledata.org/google-android/new-resources-for-developers/</link>
		<comments>https://googledata.org/google-android/new-resources-for-developers/#comments</comments>
		<pubDate>Sat, 06 Dec 2008 00:30:00 +0000</pubDate>
		<dc:creator><![CDATA[Dan Morrill]]></dc:creator>
				<category><![CDATA[Google Android]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[Google Mobile]]></category>
		<category><![CDATA[google os]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[We're back in action after a Thanksgiving break filled with turkey, stuffing, and pumpkin pie. Now it's the holiday season (at least, here in the U.S.) and we're filled with good will toward developers. Today I wanted to talk about a couple things we j...]]></description>
				<content:encoded><![CDATA[<p>We're back in action after a Thanksgiving break filled with turkey, stuffing, and pumpkin pie. Now it's the holiday season (at least, here in the U.S.) and we're filled with good will toward developers. Today I wanted to talk about a couple things we just finished polishing up.</p><p>First, the <a href="http://code.google.com/android/download.html">Android 1.0 SDK, release 2</a> is now available.  Like the previous 1.0_r1 release, this new 1.0_r2 build creates applications that are compatible with Android 1.0 devices, such as the T-Mobile G1.  This new release fixes a few bugs.  In 1.0_r1, it was possible for developers to write technically-illegal code by using the Java Reflection APIs to access private or protected fields and methods. 1.0_r2 fixes that problem by enforcing private/protected visibility of items accessed via Reflection.  Meanwhile, the class android.R.styleable was included in 1.0_r1 primarily for documentation purposes as a way for developers to look up the style attributes available to them to use. However, actually referring to that class via source code would result in applications that might break when run on future versions of the Android platform, so 1.0_r2 corrects the oversight and removes access to the class from the android.jar file.  (The class remains in the documentation for reference purposes, though.)</p><p>Both of these problems are obscure "future-proofing" issues, and I'd be quite surprised if they actually caused problems for anyone, but now they're fixed. 1.0_r2 also includes a few other smaller changes; check out the <a href="http://code.google.com/android/RELEASENOTES.html">release notes</a> for all the details.</p><p>Second, many of you have asked if developer devices will be available. We've worked with our partners to create a <a href="http://code.google.com/android/dev-devices.html">program for developers</a> to purchase devices that enable them to test and debug applications more easily.</p><p>I think these new tools will be quite helpful to developers, and I'm looking forward to seeing what people do with Android, next.</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6755709643044947179-8376566578406682687?l=android-developers.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-android/new-resources-for-developers/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>New Android Maps API Terms of Service and Key Enforcement</title>
		<link>https://googledata.org/google-android/new-android-maps-api-terms-of-service-and-key-enforcement/</link>
		<comments>https://googledata.org/google-android/new-android-maps-api-terms-of-service-and-key-enforcement/#comments</comments>
		<pubDate>Wed, 22 Oct 2008 01:40:00 +0000</pubDate>
		<dc:creator><![CDATA[Dan Morrill]]></dc:creator>
				<category><![CDATA[Google Android]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[Google Mobile]]></category>
		<category><![CDATA[google os]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[When we released the 0.9_r1 beta SDK, we mentioned that the Maps API included with Android would soon require an API key to function correctly and load map tiles. Part of the reason for this was that the Terms of Service (ToS) for the Maps API had not ...]]></description>
				<content:encoded><![CDATA[<p>When we released the 0.9_r1 beta SDK, we <a href="http://code.google.com/android/RELEASENOTES.html" title="mentioned">mentioned</a> that the <a href="http://code.google.com/android/reference/com/google/android/maps/package-summary.html" title="Maps API">Maps API</a> included with Android would soon require an API key to function correctly and load map tiles. Part of the reason for this was that the Terms of Service (ToS) for the Maps API had not been finalized.</p><p>Today, I'm pleased to be able to tell you that <a href="http://code.google.com/android/maps-api-tos.pdf" title="the new Android Maps API ToS are now finalized">the new Android Maps API ToS</a> are now finalized and they're actually pretty exciting. Most of the restrictions present in the old ToS are now gone&mdash;for instance, it's now permissible to use the Android Maps API to build "friend finder" style applications. There are still a few limitations, but not nearly as many as before.</p><p>Now that the ToS are finalized, it's time to take the next step. Until now, developers have been able to use any value for their Maps API key&mdash;that is, the Maps API keys weren't enforced. However, starting early tomorrow morning (Oct 22nd, PDT), we are turning on Maps key enforcement, so the grace period is ending very soon. This means it's also time for developers to acquire and begin using real API keys. Here's what you'll need to do:</p><ol><li>Visit <a href="http://code.google.com/android/maps-api-signup.html" title="http://code.google.com/android/maps-api-signup.html">http://code.google.com/android/maps-api-signup.html</a>, fill out the required information, agree to the Terms of Service, and submit.</li><li>Take the key you are given in response, and place it either:</li><ul><li>In the XML layout where you declare your <a href="http://code.google.com/android/reference/com/google/android/maps/MapView.html" title="MapView" >MapView</a>, or</li><li>In your source code, where you instantiate your <a href="http://code.google.com/android/reference/com/google/android/maps/MapView.html" title="MapView">MapView</a> object</li></ul></ol><p>The way the keys work is that when you use a MapView, it queries the system to find the public fingerprint ID of the certificate used to
sign the currently-running application. The MapView then works with the server to verify that the certificate which signed the current application is the same certificate to which the current Maps API key belongs. If they match, then tiles are displayed; if they do not match, then no map tiles are displayed.</p><p>You will need one Maps API key for each certificate you use to sign your applications. That is, you'll need separate Maps API keys for both your debug-time signing certificate used in the emulator, and for your release-time certificate you'll use when publishing your apps. Fortunately this is free, and there is no limit to the number of keys you can acquire. Finally, note that this only applies if you're using a <a href="http://code.google.com/android/reference/com/google/android/maps/MapView.html" title="MapView">MapView</a> in your
Android application. If you don't use Maps at all, or if you use an <a  href="http://code.google.com/android/reference/android/content/Intent.html" title="Intent">Intent</a>to launch Google Maps, you don't need to follow these steps.</p><p>Be sure to get your <a href="http://code.google.com/android/maps-api-signup.html" title="Maps API key">Maps API key</a> now to avoid a disruption.</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6755709643044947179-4829176217083376112?l=android-developers.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-android/new-android-maps-api-terms-of-service-and-key-enforcement/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Announcing the Android 1.0 SDK, release 1</title>
		<link>https://googledata.org/google-android/announcing-the-android-1-0-sdk-release-1/</link>
		<comments>https://googledata.org/google-android/announcing-the-android-1-0-sdk-release-1/#comments</comments>
		<pubDate>Tue, 23 Sep 2008 17:55:00 +0000</pubDate>
		<dc:creator><![CDATA[Dan Morrill]]></dc:creator>
				<category><![CDATA[Google Android]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[Google Mobile]]></category>
		<category><![CDATA[google os]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[About this time last year, my colleagues and I were preparing for the first of the "early look" SDK releases. I remember being a little freaked out&#8212;November 12 was starting to sound awfully close! But I think I can safely speak for the entire And...]]></description>
				<content:encoded><![CDATA[<p>About this time last year, my colleagues and I were preparing for the first of the "early look" SDK releases. I remember being a little freaked out&mdash;<a href="http://android-developers.blogspot.com/2007/11/posted-by-jason-chen-android-advocate.html" title="November 12">November 12</a> was starting to sound awfully close! But I think I can safely speak for the entire Android team when I say that we were all <em>very</em> excited about that upcoming release. In the year since, we've run and <a href="http://android-developers.blogspot.com/2008/08/presenting-winners-of-android-developer.html" title="concluded the first Android Developer Challenge">concluded the first Android Developer Challenge</a>, given away $5,000,000, <a href="http://android-developers.blogspot.com/search/label/SDK%20updates" title="released more SDK builds">released more SDK builds</a>, and worked with <a href="http://www.openhandsetalliance.com/oha_members.html" title="our partners">our partners</a> to prepare the first device for users. It's been quite the whirlwind of a year.</p><p>In one of those strange cosmic symmetries, here we are a year later, and we're once again very excited about an upcoming release. I'm referring, of course, to the first Android-powered device that our colleagues at T-Mobile have just announced—<a href="http://www.t-mobileg1.com" title="the T-Mobile G1">the T-Mobile G1</a>. We can't wait to see our hard work on store shelves and in the hands of users, but today we're almost as excited because we're announcing the brand-new <a href="http://code.google.com/android/download.html">Android 1.0 SDK, release 1</a>.</p><p>Yes, that means we're officially at 1.0. Of course the SDK won't remain static&mdash;we'll keep improving the tools by <a href="http://code.google.com/android/migrating/0.9-1.0/changes-overview.html" title="adding features and fixing bugs">adding features and fixing bugs</a>. But now developers can rely on <a href="http://code.google.com/android/reference/packages.html" title="the APIs in the SDK">the APIs in the SDK</a>, and can update their applications to run on Android 1.0-compatible devices. The <a href="http://android-developers.blogspot.com/2008/08/android-market-user-driven-content.html" title="Android Market beta">Android Market beta</a> will also launch with the T-Mobile G1, providing developers an easy and open way to distribute their applications on that and later devices. I've already seen a lot of applications that have me stoked, and I can't wait to see things really come together as developers cross that final mile to prepare their applications for Android 1.0.</p><p>So what's next for us? Well, we'll keep working on the SDK, as I said. But we're also working hard with our partners in the <a href="http://www.openhandsetalliance.com/">Open Handset Alliance</a> on the open-source release, with the aim of making the code available in the fourth quarter. The second Android Developer Challenge is also on the horizon&mdash;watch this space for more details. We're also already working on the future of the Android platform, and on more devices. We've <a href="http://code.google.com/android/roadmap.html" title="updated the Developer Roadmap">updated the Developer Roadmap</a>, and we'll keep updating it as more information becomes available.</p><p>It has indeed been quite an exciting road to get to where we are today. The road stretches on ahead though, and we're not slowing down for a moment. I look forward to meeting and working with many of you developers out there&mdash;and trying out your apps on my phone!</p><p>Happy Coding!</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6755709643044947179-6889094066309413254?l=android-developers.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-android/announcing-the-android-1-0-sdk-release-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Some information on APIs removed in the Android 0.9 SDK beta</title>
		<link>https://googledata.org/google-android/some-information-on-apis-removed-in-the-android-0-9-sdk-beta/</link>
		<comments>https://googledata.org/google-android/some-information-on-apis-removed-in-the-android-0-9-sdk-beta/#comments</comments>
		<pubDate>Mon, 25 Aug 2008 23:35:00 +0000</pubDate>
		<dc:creator><![CDATA[Dan Morrill]]></dc:creator>
				<category><![CDATA[Google Android]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[Google Mobile]]></category>
		<category><![CDATA[google os]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Earlier this week, we released a beta of the Android SDK.  In the accompanying post, I mentioned that we had to remove some APIs from the platform for Android 1.0, and as a result they don't appear in the 0.9 beta SDK, and won't appear in 1.0-compatibl...]]></description>
				<content:encoded><![CDATA[<p>Earlier this week, we released a beta of the Android SDK.  In the accompanying post, I mentioned that we had to remove some APIs from the platform for Android 1.0, and as a result they don't appear in the 0.9 beta SDK, and won't appear in 1.0-compatible SDKs.  Today, I want to take a few minutes to explain why.</p>
<h3>GTalkService</h3>
<p>We were all really excited when the "XMPPService" (as it was called, at first) was included in the first early-look SDK.  Once we brought in our security review team to examine Android, however, they soon realized that, as exciting as it is, the GTalkService has some fundamental security problems.  Rich Cannings is one of our security researchers, and here's his explanation of the issues:</p>
<blockquote><p>When I first read about GTalkService, I was both excited and scared. As a developer, I was interested in a feature that provided a simple interface to send messages between two Google Talk friends. The messages would appear on the receiving device as a standard Intent that was easy to handle. How simple and beautiful is that? Unfortunately, when I put my tin foil hat on, I recognized that things are a little more complicated than that.</p>
<p>We decided to postpone GTalkService's data-messaging functionality for the following reasons:</p>
<ol><li><p><strong>"Repurposing" Google Talk Friends</strong></p>
<p>Google Talk friends are intended for a different purpose than that envisioned by the GTalkService. Your Google Talk friends can contact you at any time via IM. They can see your email address and often can see your real name. However, the idea of a Google Talk friend does not always line up with the types of people who may want to interact with via an Android application.</p>
<p>For example, imagine a really cool mobile Massively Multiplayer Online Roleplaying Game using GTalkService. You would have to add all the players to your Google Talk friends list in order to play with them. Next time you log in to Google Talk from your desktop or on the web, you would notice that you have many new "friends". You may not want to chat with these friends -- and perhaps worse, you may not want them to know what your real name or email is.</p>
<p>We do realize that Android users will want to interact with other Android users anonymously and for short periods of time, especially in gaming scenarios. Unfortunately, it turns out that using Instant Messaging is not really a good way to do that.</p></li>
<li><p><strong>Verifying Remote Intent Senders</strong></p>
<p>Intents were designed to send messages within the device. The Intent subsystem can conclusively determine who sent Intents only when the Intents originate from the same device that services the Intent. When Intents come from other devices, the Intent subsystem cannot determine what application sent the Intent.</p>
<p>This can lead to a variety of problems. At first, remote applications could send arbitrary Intents, meaning that your Google Talk friends had almost the same control of your device as you did. Even once that issue was resolved, we recognized that we could not trust the identity of the application who sent the request. We could only trust the identity of the user. So a "bad" application on your friend's device could send a message to a "good" application on your device which would negatively affect the good application.</p>
<p>In the end, we determined that the Intent system, as designed for local use, did not lend itself well to being the vehicle for a Remote Procedure Call (RPC).</p></li><li><p><strong>Placing Too Much Security Burden on Developers</strong></p>
<p>As originally designed, the GTalkService placed a significant burden on the application developer to avoid security flaws and perform user and relationship management.  An Android application using GTalkService would be reachable from all of the user's Google Talk friends, and a flaw in that application could pose an inviting target to a malicious "friend" or automated malware.  There are automated mechanisms that could be used to help protect vulnerable applications or stop the spread of malware, but the deployment of these technologies was not possible in time for the launch of the first Android handsets.</p>
</li></ol></blockquote>
<p>Although we would have loved to ship this service, in the end, the Android team decided to pull the API instead of exposing users to risk and breaking compatibility with a future, more secure version of the feature. We think it's obvious that this kind of functionality would be incredibly useful, and would open lots of new doors for developers.  One of our top priorities after the first devices ship is to develop a device-to-device (and possibly device-to-server) RPC mechanism that is fast, reliable, and protective of developers and users alike.</p>
<p>As a final note, I want to point out that since the GTalkService was always a Google "value-added" service anyway, it was never guaranteed that it would be present on every Android device.  That is, GTalkService was never part of core Android.  As a result this change actually allows us the potential to build a new system that <em>is</em> part of the core of a future version of Android.</p>
<h3>Bluetooth API</h3>
<p>The 1.0 version of Android and the first devices will include support for Bluetooth; for instance, Android will support Bluetooth headsets.  In the early-look SDKs, there was an incomplete draft of an API that exposed Bluetooth functionality to developers.  Unfortunately we had to remove that API from the 1.0 release. To get the skinny on why, I contacted Nick Pelly, one of the Android engineers responsible for that functionality. Here's the story on Bluetooth, in Nick's words:</p>
<blockquote><p>The reason is that we plain ran out of time. The Android Bluetooth API was pretty far along, but needs some clean-up before we can commit to it for the SDK. Keep in mind that putting it in the 1.0 SDK would have locked us into that API for years to come.</p>
<p>Here's an example of the problems in the API.  Client code is required to pass around IBluetoothDeviceCallback objects in order to receive asynchronous callbacks, but IBluetoothDeviceCallback is meant to be an internal interface. That client code would break the moment we added new callbacks to IBluetoothDeviceCallback.aidl. This is not a recipe for future-proof apps.</p>
<p>To make things even more tricky, the recent introduction of the bluez 4.x series brings its own new API. The Android Bluetooth stack uses bluez for GAP and SDP so you'll see more than a passing resemblance to bluez's interfaces in Android.  The bluez 4.x change requires us to carefully consider how to structure our API for the future. Again, remember that once we settle on an interface we need to support it for years going forward.</p></blockquote>
<p>Rather than ship a broken API that we knew was going to change a lot, we chose not to include it.  We absolutely intend to support a Bluetooth API in a future release, although we don't know exactly when that will be.  This should include some tasty features, such as:</p>
<ul><li>Bindings to GAP and SDP functionality.</li>
 <li>Access to RFCOMM and SCO sockets.</li>
 <li>Potentially, L2CAP socket support from Java. (This one is under consideration.)</li>
 <li>An API to our headset and handsfree profiles.</li></ul>
<p>On a personal note, Nick adds, "I would love nothing more than to start seeing some neat third-party applications and games over Bluetooth. In my opinion, Bluetooth is completely under-utilized on most mobile platforms and I'm excited to someday see what the developer community can do with Android."</p>
<p>I'm definitely bummed about these API removals.  I was particularly looking forward to the P2P capabilities offered by GTalkService, but, as always, user security and privacy must come first.  In all these cases, we'll work with the developer community to create some great APIs that balance these concerns.</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6755709643044947179-7483279381069224548?l=android-developers.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-android/some-information-on-apis-removed-in-the-android-0-9-sdk-beta/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Announcing a beta release of the Android SDK</title>
		<link>https://googledata.org/google-android/announcing-a-beta-release-of-the-android-sdk/</link>
		<comments>https://googledata.org/google-android/announcing-a-beta-release-of-the-android-sdk/#comments</comments>
		<pubDate>Mon, 18 Aug 2008 18:57:00 +0000</pubDate>
		<dc:creator><![CDATA[Dan Morrill]]></dc:creator>
				<category><![CDATA[Google Android]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[Google Mobile]]></category>
		<category><![CDATA[google os]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[I'm pretty happy today, for two reasons.  First, I'm happy because I get to let everyone know that we're releasing a beta SDK.  You can read about the new Android 0.9 SDK beta at the Android Developers' Site, or if you want to get straight to the bits,...]]></description>
				<content:encoded><![CDATA[<p>I'm pretty happy today, for two reasons.  First, I'm happy because I get to let everyone know that we're releasing a beta SDK.  You can read about the new Android 0.9 SDK beta at the <a href="http://code.google.com/android">Android Developers' Site</a>, or if you want to get straight to the bits, you can visit the download page.  Once you've got it, be sure to visit our <a href="http://groups.google.com/group/android-developers">Developer Forum</a> if you have any questions. </p> <p> Back in November, we made some SDK builds available that we referred to as "early look" SDKs.  The goal was to give developers insight into the platform as early on as possible, and to get some initial feedback. Since then, we've been working with our <a href="http://www.openhandsetalliance.com/">Open Handset Alliance</a> partners to incorporate much of that feedback, and finish the first devices.  Since those devices are shipping in the fourth quarter, the platform is now converging on a final "Android 1.0" version. </p> <p> The beta SDK that we're releasing today is the first big step on the SDK's road to compatibility with 1.0.  Since this is a beta release, applications developed with it may not quite be compatible with devices running the final Android 1.0.  However, the APIs are now pretty stable and we don't expect any major changes.  If you're one of the many developers who were waiting for something a bit more mature, this might be a good time to take another look. </p> <p> Since we're now moving quickly toward 1.0, it may also help to know which direction we're headed.  To help out, we've also prepared a <a href="http://code.google.com/android/roadmap.html">development roadmap</a>.  This will be a living document, and we'll keep it up to date as the Android landscape evolves.  Currently it covers the next few months, roughly through the end of the year and a bit into next year.  We'll update it with additional detail as we are able to, but even right now it can help give you a picture of how things will play out as the first phones draw near. </p> <p> Enough of that though -- you're probably wondering what's actually new in the SDK.  Well, you should read the <a href="http://code.google.com/android/RELEASENOTES.html">Release Notes</a>, the <a href="http://code.google.com/android/migrating/m5-0.9/changes-overview.html">Change Overview</a> and the <a href="http://code.google.com/android/migrating/m5-0.9/changes.html">API Delta Report</a> for all the details, but here are a few highlights: </p> <ul><li>First and most obviously, the new Home screen is included, along with a ton of UI changes for 1.0.</li><li>Some new applications are included: an Alarm Clock, Calculator, Camera, Music player, Picture viewer, and Messaging (for SMS/MMS conversations.)</li><li>Several new development tools were added, such as a graphical preview for XML layouts for users of Eclipse, and a tool for constructing 9-patch images.</li><li>Since we've got a new Home screen application now, we thought the now-obsolete version from the M5 early-look SDK might be helpful to developers, so its source is included as a sample.</li><li>A number of new APIs are fleshed out and improved, and others are now close to their final forms for 1.0.</li><li>Tons of bugs were fixed, of course.  (If you had problems with the MediaPlayer, try it now!)</li></ul> <p> There are a lot of changes -- the ones in the list above are just my personal favorites, so you should check out the links above for the full story.  Not all the changes are additions, though:  I'm sorry to say that we had to remove a few things, such as the GTalkService (for security reasons), and the Bluetooth API.  There's a bit more detail in the links above, and we'll follow up on those in particular here in this blog to give you the scoop.  In fact, we've got a little list of topics we want to talk about here, so stay tuned. </p> <p> At the top of this post I said I was happy for two reasons, and now you know one of them -- but what about the other?  Well, the second reason is because now that this is out I can finally go get some sleep! </p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6755709643044947179-1609588389175909386?l=android-developers.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-android/announcing-a-beta-release-of-the-android-sdk/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>A Challenge in More than One Way</title>
		<link>https://googledata.org/google-android/a-challenge-in-more-than-one-way/</link>
		<comments>https://googledata.org/google-android/a-challenge-in-more-than-one-way/#comments</comments>
		<pubDate>Tue, 13 May 2008 18:22:00 +0000</pubDate>
		<dc:creator><![CDATA[Dan Morrill]]></dc:creator>
				<category><![CDATA[Google Android]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[Google Mobile]]></category>
		<category><![CDATA[google os]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Well, the submission deadline for the first Android Developer Challenge has come and gone, the apps are in, the judges are finished, and the waiting is over.  We got a lot of great submissions, and I can tell you personally that the competition was fie...]]></description>
				<content:encoded><![CDATA[<p>Well, the submission deadline for the <a href="http://code.google.com/android/adc.html">first Android Developer Challenge</a> has come and gone, the apps are in, the judges are finished, and the waiting is over.  We got a lot of great submissions, and I can tell you personally that the competition was <em>fierce.</em>  I didn't see all 1,788 submissions, but I saw quite a lot of them, and I uttered more than one wail of despair as some of my favorite submissions didn't quite make the cut, by razor-thin margins in some cases.  But, the judges have spoken.<p/>
<p>Speaking of the judges...we'll soon publish a list of who the judges are, but I know many of our developers are still curious: what were all those judges doing? Well, the short answer is that they were judging applications using a custom laptop configuration that we provided.  But we thought some people might be interested in the "long" answer, so we put together this blog post.  If you're not interested in the gory details of the judging, you can stop here; but if you are interested, read on!<p/>
<p><strong>How We Got Started</strong><p/>
<p>Making the Challenge fair was by far our primary goal.  We knew we had to do whatever we could to make sure that the judges' scores are based solely on their review of the application. We automated as much as possible, to make it easy for judges to focus on judging, and not on administrivia or complicated setup.<p/>
<p>The first thing we realized was that we were going to have way more submissions than any single judge could look at.  No one could review all 1,788 submissions in a reasonable amount of time.  On the other hand, we definitely needed more than one judge reviewing each submission. Our goal was to have each submission reviewed by four different judges, with a minimum of three.<p/>
<p>The big question was then: how many judges would we need?<p/>
<p>For 1,788 submissions, a panel of 4 judges per application meant that we needed a whopping 7,152 reviews to be performed.  Since our judges would have to be crazy to agree to do more than 75 reviews, we needed at least 95 judges. In the end we recruited around 125, including backup judges.<p/>
<p><strong>Making Order out of Chaos</strong><p/>
<p>The next thing we realized was that judges need to be able to actually review the submissions. Since the judges came from our Open Handset Alliance partners and many are not engineers, we knew that we couldn't send instructions like "run the M5-RC15 emulator, open a terminal window, and run the command <code>adb push geodb /data/misc/location</code>—and don't forget the <code>--sdcard</code> option!"  They'd think we were quoting Star Wars.<p/>
<p>Besides that, we also knew that once we gave the judges their assignments, what they did was out of our hands.  We couldn't control how the judges review the applications, but we could certainly make it as easy as possible for the judges to do a thorough review.<p/>
<p>So, we built a program in <a href="http://wxpython.org/">wxPython</a> that automates judging.  This application launches a clean emulator for each submission, supports emulator features like SD card images and mock location providers, and allows judges to launch multiple emulators and simulate calls and SMS messages for applications which need that functionality.  We asked our friendly neighborhood Google Tech Stop for 140 laptops, installed <a href="http://www.ubuntu.com/">Ubuntu Linux</a> and our software on one, and then cloned that installation for use on all the others.  We then had a huge shipping party, where we imaged, boxed, and shipped 115 or so laptops in one day.<p/>
<p>An important side effect of these custom laptops is that they are all identical.  This means that each judge's experience of the submissions was the same, which eliminated the risk of one judge rating an app poorly just because it ran slowly on his personal computer.<p/>
<p><strong>Managing All that Data</strong><p/>
<p>Once we sent 100+ laptops all over the world, we needed a way to get the data back.  Another goal was to eliminate as many sources of human error as possible.  With 7,152 reviews to complete, and 4 categories per review, that's 28,608 scores to keep track of.  Mistakes would be bound to happen, so filing paperwork or transcribing scores by hand from one file to another was out of the question.<p/>
<p>Our solution was the <a href="http://code.google.com/apis/gdata/">Google Data web API </a>for accessing things like Google Spreadsheets and Google Base.  Here's how it worked.</p>
<ul><li>We wrote a Python program to randomly assign applications to judges for review.</li><li>Using the Spreadsheets API, that program generated a Google Spreadsheet for each judge, pre-filled with that judge's assigned submissions and space to enter scores.</li><li>The program installed on the laptops also used the Spreadsheets API to fetch a given judge's assignments.</li><li>When the judge scores a submission, those scores were posted back into the spreadsheet.</li><li>After the judging period concluded, a separate program walks over all the judges' spreadsheets, computing the final scores.</li></ul><p>This approach had two great things about it:  first, it didn't require any new server infrastructure to make it work.  Second, our "database" had a built-in rich "admin" UI for managing the data — namely, Google Spreadsheets itself.  If any of our judges ran into problems or needed help, we could simply open that spreadsheet in our browser and review or fix problems.<p/>
<p>This approach worked quite well, and I'd bet that the judges didn't even know the Spreadsheets API was being used, unless they actively poked around.<p/>
<p><strong>Tying Up the Loose Ends</strong><p/>
<p>Of course, our work wasn't done once we retrieved all the submission scores. We couldn't just average up the scores, you see. First, judges could recuse themselves from scoring specific submissions; perhaps they were assigned an application similar to one their own company is working on, or perhaps they realized they knew one of the authors.  Second, despite our best efforts there was a chance that some judges might have a problem — for instance, if one judge had a poor network connection but reviewed an application that requires the network, then that judge might have scored the application unfairly poorly.<p/>
Here are the major outlier scenarios that we were concerned about:
<ul><li>Cases where judges recused themselves.</li><li>Submissions where one judge reported a problem with the application, but all the other judges reported good scores. (It seems odd for only one judge to have a problem.)</li><li>Cases where one judge's scores were an outlier compared to the other judges' scores.</li></ul><p>For the first two cases, we simply discarded the outlying data points, if we had enough.  For instance, if three judges reported good scores and one recused herself, we simply dropped that fourth score.  If dropping the conflicting score would have brought the application below three reviews, we sent it back for review by a new judge to bring it up to our minimum number of  judges per application.<p/>
<p>The third case is more subtle.  Just because a judge rated an application differently than others doesn't mean that that review is invalid, so we can't simply discard outliers.  Instead, we took the highest and lowest scores in each category and gave them half weight.  The effect is to bring the average scores a bit closer to the median scores, which helps minimize the impact of unusually high or low scores.  This process was applied to all submissions (not just "suspicious" scores) since it has a minimal effect on submissions that don't have a large outlier.<p/>
<p>We actually ran the whole process above twice:  first we ran it to choose a first cut of the top 100 submissions from the original 1,788, and we then sent those 100 to a second group of judges for selection of the final 50.  (Actually, the "top 100" were really "top 119", since we added a few more submissions to accommodate scoring ties in the first round.)<p/>
<p><strong>Wrapping Up</strong><p/>
<p>Now you know what we've been spending all our time on, and what's been keeping us up at night (sometimes literally)!  Throughout, our key objectives were to keep the process fair, let the judges focus on judging, and give applications the benefit of the doubt in cases of scoring outliers.<p/>
<p>What's next?  Well, the <a href="http://android-developers.blogspot.com/2008/05/top-50-applications.html">50 submissions that were awarded a prize</a> now begin the refinement process for their Round 2 submissions, which will award the final, larger prizes to the top 20 applications.  I also hope that the developers of the other great apps that didn't receive prizes will consider the second Android Developer Challenge, which should begin later this year.<p/>
<p>To everyone, I'd also like to say thanks for participating, and congratulations on your hard work!</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6755709643044947179-5992570246857207944?l=android-developers.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-android/a-challenge-in-more-than-one-way/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Android University</title>
		<link>https://googledata.org/google-android/android-university/</link>
		<comments>https://googledata.org/google-android/android-university/#comments</comments>
		<pubDate>Fri, 04 Apr 2008 19:54:00 +0000</pubDate>
		<dc:creator><![CDATA[Dan Morrill]]></dc:creator>
				<category><![CDATA[Google Android]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[Google Mobile]]></category>
		<category><![CDATA[google os]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Spring is on the way, and temperatures are rising.  We're no exception, and things are starting to heat up over here in Android-land, too.

The Android Developer Challenge deadline is approaching quickly.  Wow, that's strange to me.  On one hand, we've...]]></description>
				<content:encoded><![CDATA[Spring is on the way, and temperatures are rising.  We're no exception, and things are starting to heat up over here in Android-land, too.
<p/>
The <a href="http://code.google.com/android/adc.html" id="b87f" title="Android Developer Challenge">Android Developer Challenge</a> deadline is approaching quickly.  Wow, that's strange to me.  On one hand, we've come so far that the first announcement back on November 12 seems like a prior geologic era, but on the other hand it seems like the Challenge just started!  But it's been five months, so it's time to finish your code, polish your UI, and <a href="http://code.google.com/android/adc-submit/index.html" id="lpur" title="submit your application">submit your application</a>.  Remember to submit by midnight on April 14th, PST (GMT-8).
<p/>
But after the Challenge, what's next?  Well, on the 28th and 29th of May we have <a href="http://code.google.com/events/io/" id="qcec" title="Google I/O:  Innovation in the Open">Google I/O</a>.  This is the biggest Google developer event of the year, and you can bet that the Androids will be there in numbers.
<p/>
Here are the sessions we've prepared on Android.
<ul id="x70j"><li id="oy7w">     <b id="m7da">Android 101: Building an Application
   </b>   </li><li id="b.:i">     <b id="aos-">Anatomy &amp; Physiology of an Android</b>   </li><li id="ofsc">     <b id="dh.h">Dalvik Internals</b>   </li><li id="y-xo">     <b id="mgb3">Inside the Android Application Framework</b>   </li><li id="vhw3">     <b id="uhx8">Building Great UIs with Android</b>   </li><li id="oylu">     <b id="ps_6">Internationalizing Android Applications</b>   </li><li id="z_:n">     <b id="tvjz">Location, Location, Location</b>   </li><li id="ngq:">     <b id="c.9d">Mobile Mashups</b>   </li></ul>  For more details on these sessions, visit the <a href="http://code.google.com/events/io/sessions.html#mobile" id="cuh_" title="Google I/O site">Google I/O site</a>.  Please do, in fact—I'm really excited by some of these because we're going to go into a level of detail that we haven't before.  Ever wanted to hear the tech lead on Dalvik talk about Dalvik?  Ever wanted an exhaustive review of the i18n/resource system?  Then don't miss this event.
<p/>
Besides the technical sessions, there will be a Fireside Chat with as many members of the Android team as we can rustle up, and an Android section in the demo and coding area.  (Personally, I'm looking forward to that the most:  it's shaping up to be a code festival of mammoth proportions.)  If you need a break from Android, there are also tons of sessions on other developer technologies from Google, too.
<p/>
We intend this to be the premier developer event for Android, this year.  If you only go to one Android event, we humbly suggest that you consider this one.  Early-bird registration ends TODAY (April 4th), so <a href="https://www.weboom.com/sparks/google_io/forms/" id="s6j2" title="be sure to sign up soon">be sure to sign up soon</a>.
<p/>
I'll see you there!<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6755709643044947179-8460980134139767029?l=android-developers.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-android/android-university/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Android&#8217;s First 5 Months</title>
		<link>https://googledata.org/google-android/androids-first-5-months/</link>
		<comments>https://googledata.org/google-android/androids-first-5-months/#comments</comments>
		<pubDate>Thu, 03 Apr 2008 21:06:00 +0000</pubDate>
		<dc:creator><![CDATA[Dan Morrill]]></dc:creator>
				<category><![CDATA[Google Android]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[Google Mobile]]></category>
		<category><![CDATA[google os]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[Originally by Sung Hu Kim, Product Marketing Manager for Android, Google mobile team
 
 As some of you may have heard, Wireless Week has chosen the Open Handset Alliance and Android for its Emerging Technology Award, noting that "Android's potential pr...]]></description>
				<content:encoded><![CDATA[Originally by Sung Hu Kim, Product Marketing Manager for Android, Google mobile team
 <p/>
 As some of you may have heard, <span id="kwu9"><i id="dh3-">Wireless Week</i></span> has chosen the <a href="http://www.openhandsetalliance.com/" id="x6eq"  title="Open Handset Alliance and Android">Open Handset Alliance</a> and Android for its <a href="http://www.wirelessweek.com/Article-A-Mobile-Robot-for-the-Wireless-Internet.aspx" id="r28i"  title="Emerging Technology Award">Emerging Technology Award</a>, noting that "Android's potential promises openness and innovation, perhaps changing not only the mobile Internet but the Internet itself."<div id="o1sy" style="margin-left: 40px; font-family: Verdana;"> </div> 
We at Google would like to congratulate all the members of the Open Handset Alliance and the fantastic Android developer community for this well deserved recognition.  Android's growing momentum is the result of an amazing effort and collaboration among many different people.

 Coincidentally, this week marks five months since the Open Handset Alliance and Android <a href="http://www.google.com/url?sa=t&amp;ct=res&amp;cd=7&amp;url=http%3A%2F%2Fwww.google.com%2Fintl%2Fen%2Fpress%2Fpressrel%2F20071105_mobile_open.html&amp;ei=kGnxR4jxLKi-pgSyo-Br&amp;usg=AFQjCNG1xmkgWLX3TFhTSl2ek9VwukTrig&amp;sig2=kOt_VcQaJezVFJ4HblDDEg" id="vcf3"  title="first publicly announced">first went public</a>.  A lot has happened in this short period of time.  Among the things of note:
 <ul id="mvmk"><li id="kx4g">We released<a href="http://android-developers.blogspot.com/2007/11/posted-by-jason-chen-android-advocate.html" id="bfvu"  title="an early look"> an early look</a> at the Android software development kit (SDK), allowing anyone to learn and start creating apps for the platform. 
   </li><li id="kx4g"> Feedback from developers has contributed to numerous fixes, improvements, new tools, and major updates to the SDK, the latest version of which you can find <a href="http://code.google.com/android/download.html" id="hzv6"  title="here">here</a>.
   </li><li id="kx4g">     Google announced the <a href="http://code.google.com/android/adc.html" id="vrg4"  title="Android Developer Challenge">Android Developer Challenge</a>, which will provide $10 million in total awards for the best Android apps—and the first phase has nearly wrapped up.  (Be sure to get your submissions in by April 14!)
   </li><li id="kx4g">     Several companies gave the <a title="first working demonstrations"  href="http://www.openhandsetalliance.com/whats_new.html#20080211" id="v_oi">first working demonstrations</a> of Android in February.
   </li></ul> 
These have been an exciting first 5 months, and we look forward to making the coming months even better.<div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6755709643044947179-3911358220551311765?l=android-developers.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-android/androids-first-5-months/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Android in Harvard Square</title>
		<link>https://googledata.org/google-android/android-in-harvard-square/</link>
		<comments>https://googledata.org/google-android/android-in-harvard-square/#comments</comments>
		<pubDate>Mon, 11 Feb 2008 18:04:00 +0000</pubDate>
		<dc:creator><![CDATA[Dan Morrill]]></dc:creator>
				<category><![CDATA[Google Android]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[Google Mobile]]></category>
		<category><![CDATA[google os]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[As promised, there's another Android event coming up &#8211; though a little closer to home this time. Our Android Advocates are heading to Boston for a Code Day that will be taking place on February 23. Registration is now open, but space is limited s...]]></description>
				<content:encoded><![CDATA[<p><a href="http://android-developers.blogspot.com/2008/01/posted-by-dan-morrill-developer.html">As promised</a>, there's another Android event coming up &ndash; though a little closer to home this time. Our Android Advocates are heading to Boston for a Code Day that will be taking place on February 23. <a href="http://services.google.com/events/android_codeday_2008" id="ucpj" title="registration is now open">Registration is now open</a>, but space is limited so make sure you reserve your spot.</p>

<p>Here are the details:</p>

<table border="0">
<tr>
    <td align="right"><strong>Date</strong>:</td>
    <td>Saturday, February 23, 2008</td>
</tr>
<tr>
    <td align="right" ><strong>Time</strong>:</td>
    <td>10:00 am - 4:00 pm</td>
</tr>
<tr>
    <td align="right" valign="top"><strong>Location</strong>:</td>
    <td><a href="http://maps.google.com/maps?q=1+Bennett+St,+Cambridge,+MA+02138,+USA&amp;sa=X&amp;oi=map&amp;ct=title">The Charles Hotel Harvard Square</a><br />
1 Bennett St<br />
Cambridge, MA 02138</td>
</tr>
</table>
<br />
<p>As a reminder, a Code Day is an immersive introduction and hands-on session for Android.</p>

<p>It's promising to be a real Android nor'easter. We hope to see you there!</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6755709643044947179-5159676223225030150?l=android-developers.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-android/android-in-harvard-square/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Intercontinental Androids</title>
		<link>https://googledata.org/google-android/intercontinental-androids/</link>
		<comments>https://googledata.org/google-android/intercontinental-androids/#comments</comments>
		<pubDate>Tue, 22 Jan 2008 21:49:00 +0000</pubDate>
		<dc:creator><![CDATA[Dan Morrill]]></dc:creator>
				<category><![CDATA[Google Android]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[Google Mobile]]></category>
		<category><![CDATA[google os]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[When I recently blogged about our upcoming Android Campfire, I hinted at some international events we've been working on.  We've now finalized plans on those, and registration is open.

We've got Android Code Days lined up for these locations:


    On...]]></description>
				<content:encoded><![CDATA[<p>When I recently blogged about our upcoming Android Campfire, I hinted at some international events we've been working on.  We've now finalized plans on those, and registration is open.</p>

<p>We've got Android Code Days lined up for these locations:</p>

<ul>
    <li>On 31 January, we'll split up, and host Android Code Days in <a href="http://services.google.com/events/london_android_code_day">London, UK</a> and <a href="http://services.google.com/events/telaviv_android_dev">Tel Aviv, Israel</a>.</li>
    <li>On 23 February, we'll host one in Boston, Massachusetts.  (We'll post the registration page for this event soon.)</li>
</ul>

<p>In addition, as we've announced via Mobile Monday Germany, we'll be having a similar event in <a href="http://www.mobile-monday.de/web/guest/android">Munich, Germany</a> on 29 January.</p>

<p>What's a Code Day, you ask?  Well, it's just our name for a day-long introduction and immersion session for Android.  We'll give a technical introduction to the platform as well as a more in-depth look into topics of interest to the attendees.  Then we'll have a free-for-all coding session that we like to call the "Laptop Lounge".</p>

<p>In other words, the agenda is largely up to you!  Each of these events includes food and refreshments and is free of charge, but space is limited so please be sure to click on the registration links above to reserve your spot.</p>

<p>I said before that I think I have a really cool job;  now I get to travel the world to meet developers and talk about cool technologies.  I can't believe I get paid for this!</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6755709643044947179-5928549365136357631?l=android-developers.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-android/intercontinental-androids/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>You can&#8217;t rush perfection, but now you can file bugs against it</title>
		<link>https://googledata.org/google-android/you-cant-rush-perfection-but-now-you-can-file-bugs-against-it/</link>
		<comments>https://googledata.org/google-android/you-cant-rush-perfection-but-now-you-can-file-bugs-against-it/#comments</comments>
		<pubDate>Fri, 18 Jan 2008 23:32:00 +0000</pubDate>
		<dc:creator><![CDATA[Dan Morrill]]></dc:creator>
				<category><![CDATA[Google Android]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[Google Mobile]]></category>
		<category><![CDATA[google os]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[We expected a lot of attention when we launched the early look of the Android SDK, and that's certainly what we got!  Developers haven't been shy in speaking their minds on our Discussion Groups, and we've been listening.  We've also been hard at work ...]]></description>
				<content:encoded><![CDATA[<p>We expected a lot of attention when we launched the early look of <a href="http://code.google.com/android">the Android SDK</a>, and that's certainly what we got!  Developers haven't been shy in speaking their minds on our <a href="http://code.google.com/android/groups.html">Discussion Groups</a>, and we've been listening.  We've also been hard at work on Android, and meanwhile the <a href="http://code.google.com/android/adc.html">Developer Challenge</a> has been heating up and the submissions have started coming in.</p>

<p>We've been improving that "early look" and are preparing for the next big SDK release, so it's time to take the whole thing up a notch.  As we move toward the first handsets, it's time to formalize the process, and the first step in that is to enable an issue tracker for developers to submit feedback.</p>

<p>I know a great many developers have been waiting eagerly for this, so I'm very pleased to be able to say that the Issue Tracker on the Android project on Google Code Project Hosting is now open for business.  You can find the Issue Tracker here:
<a href="http://code.google.com/p/android/issues/list">http://code.google.com/p/android/issues/list</a></p>

<p>We're now actively tracking that system, and we invite developers to file an issue to let us know about any problems you find with the SDK.</p>

<p>When you submit an issue, remember that the more detail you can give, the more likely the issue is to be addressed.  (We especially enjoy the subtle and delicious flavors of reproducible sample code.)  Of course, you'll still be able to ask for answers and advice on the <a href="http://code.google.com/android/groups.html">Discussion Groups</a>, so don't stop posting there.  We'll be reviewing submitted issues regularly and keeping the database up to date, so that you can rely on it as a reliable and timely resource.</p>

<p>I think just about everyone will find this useful -- I know I definitely will.  Happy coding, and now:  happy reporting!</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6755709643044947179-7347629130712083414?l=android-developers.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-android/you-cant-rush-perfection-but-now-you-can-file-bugs-against-it/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Who wants cocoa &amp; s&#8217;mores?</title>
		<link>https://googledata.org/google-android/who-wants-cocoa-smores/</link>
		<comments>https://googledata.org/google-android/who-wants-cocoa-smores/#comments</comments>
		<pubDate>Tue, 15 Jan 2008 02:26:00 +0000</pubDate>
		<dc:creator><![CDATA[Dan Morrill]]></dc:creator>
				<category><![CDATA[Google Android]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[Google Mobile]]></category>
		<category><![CDATA[google os]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[It's been a busy few months.  First we announced Android, then we released an early look of the Android SDK, and just last week we started accepting submissions for the Android Developer Challenge. Now that we've got things moving along, it's time to s...]]></description>
				<content:encoded><![CDATA[<p>It's been a busy few months.  First we <a href="http://www.openhandsetalliance.com/press_110507.html">announced Android</a>, then we released an early look of the <a href="http://code.google.com/android/">Android SDK</a>, and just last week we started <a href="http://code.google.com/android/adc-submit/index.html">accepting submissions</a> for the <a href="http://code.google.com/android/adc.html">Android Developer Challenge</a>. Now that we've got things moving along, it's time to stop and smell the roses.</p>

<p>Our developers will be a huge part of Android's success, so we want to meet you, our colleagues.  We're working on some events around the world that we hope to announce soon, but to kick things off, on the 23rd of January we'll be holding a Campfire about Android.</p>

<p>Join us for food, drinks, and great conversation!  Come meet other developers as well as Googlers working on Android.  Talk business, talk pleasure, or just hang out &ndash; it's up to you.</p>

<p>We'd love to see all of you there, but unfortunately space is limited.  We've set up a <a href="http://services.google.com/events/mtv_androidworkshop">registration page</a> for you to sign up, so head on over and reserve your spot!</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6755709643044947179-6770949542909510753?l=android-developers.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-android/who-wants-cocoa-smores/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rising to the Challenge</title>
		<link>https://googledata.org/google-android/rising-to-the-challenge/</link>
		<comments>https://googledata.org/google-android/rising-to-the-challenge/#comments</comments>
		<pubDate>Fri, 04 Jan 2008 00:38:00 +0000</pubDate>
		<dc:creator><![CDATA[Dan Morrill]]></dc:creator>
				<category><![CDATA[Google Android]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[Google Mobile]]></category>
		<category><![CDATA[google os]]></category>

		<guid isPermaLink="false"></guid>
		<description><![CDATA[I think I have a really cool job, because I get to do a little bit of all those other cool jobs that you wish you could have.  Today, I get to be like the Chairman from Iron Chef.

If you've never seen the show, the premise is that a slightly mysteriou...]]></description>
				<content:encoded><![CDATA[<p>I think I have a really cool job, because I get to do a little bit of all those other cool jobs that you wish you could have.  Today, I get to be like the Chairman from <a href="http://en.wikipedia.org/wiki/Iron_Chef" title="Iron Chef">Iron Chef</a>.</p>

<p>If you've never seen the show, the premise is that a slightly mysterious and rather eccentric guy known as the Chairman fulfilled his dream of presiding over a huge, extravagant cooking tournament.  In a similar vein, today I get to make the announcement that the <a href="http://code.google.com/android/adc.html" title="Android Developer Challenge">Android Developer Challenge</a> is now "open for business" and accepting your submissions.  The excitement!  The anticipation!  The pageantry!</p>

<p>Okay, not so much pageantry.  But I do think it's pretty exciting, and I can't wait to see what you developers will come up with.  Some of you have already given us a little taste of the cool stuff you're working on, and I'm eager to see what everyone else is cooking up.</p>

<p>To submit your application for the Challenge, <a href="http://code.google.com/android/adc-submit/index.html" title="click here to go to the Submission Page">click here to go to the Submission Page</a>.  Once there, you'll pick from one of three versions of the form based on whether you're working alone, in a team, or for an organized company.  We've tried to keep things simple, so all you have to do is choose the form that applies to you, fill it out, attach the .apk file for your application, and you're done.</p>

<p>You also have the opportunity to upload a file containing documentation about your application.  Any readable format is okay, although we prefer PDF or plain text.  This file can contain anything that you think is important.  For instance, you might include instructions on how to use your program, a design document that describes the next steps you plan to take, or a narrative that explains the vision of your application.  We do ask that you submit your documentation and application in English, so that all the judges (who will be chosen by members of the <a href="http://openhandsetalliance.com/" title="Open Handset Alliance">Open Handset Alliance</a>) can easily read it.</p>

<p>It's also very important to look at the <a href="http://code.google.com/android/adc-submit/tandc.html" title="Terms and Conditions">Terms and Conditions</a>.  These are the rules for the Challenge and describe what you need to do to participate.  Read them carefully!</p>

<p>The submission period is open until March 3, 2008, so you don't need to rush to submit your application just yet.  March 3 is definitely a hard deadline though, so you must have your applications submitted by then.  If you choose to submit now, you can always re-submit a later version of your application closer to the end.  (I'd bet the participants on Iron Chef would love to be able to refine and re-submit their works to the judges.)</p>

<p>Maybe it's no Kitchen Stadium, but I still think we're in for a lot of fun.  I hope everyone is having a great time developing for Android, and I hope to soon see the fruits of your labor. Good luck, and happy coding!</p><div class="blogger-post-footer"><img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/6755709643044947179-5515352114228002044?l=android-developers.blogspot.com' alt='' /></div>]]></content:encoded>
			<wfw:commentRss>https://googledata.org/google-android/rising-to-the-challenge/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
