Pages

Wednesday, February 8, 2012

Android Security

Android Security Update

Tim Bray at Android Developers Blog - 5 days ago
Recently, there’s been a lot of news coverage of malware in the mobile space. Over on our Mobile blog, Hiroshi Lockheimer, VP of Android engineering, has posted Android and Security. We think most Android developers will find it interesting reading.

New Social APIs in Android ICS

Tim Bray at Android Developers Blog - 5 days ago
*[This post is by Daniel Lehmann, Tech Lead on the Android Apps team. — Tim Bray]* *[We’re trying something new; There’s a post over on Google+ where we’ll host a discussion of this article. Daniel Lehmann has agreed to drop by and participate. Come on over and join in!]* With Android Ice Cream Sandwich, we set out to build software that supports emotional connections between humans and the devices they carry. We wanted to build the most personal device that the user has ever owned. The first ingredient in our recipe is to show users the people that they care about most in a maga... more »

Android Developers on Google+

Tim Bray at Android Developers Blog - 1 week ago
*[This post is by Reto Meier, Android Developer Relations Tech Lead. — Tim Bray]* I’ve been fortunate enough to be involved with Android since the 0.9 preview SDK was released to developers back in 2007. A lot has changed since then, but one thing that hasn’t is the rapid pace at which new tools, resources, and information have become available for us Android developers. Just look at the last few months. In December Android Training launched, with its first set of classes designed to demonstrate the best practices behind building great Android Apps. Earlier this month, the Andr... more »

Say Goodbye to the Menu Button

Tim Bray at Android Developers Blog - 1 week ago
*[This post is by Scott Main, lead tech writer for developer.android.com . — Tim Bray]* Before Android 3.0 (Honeycomb), all Android-powered devices included a dedicated Menu button. As a developer, you could use the Menu button to display whatever options were relevant to the user, often using the activity’s built-in options menu. Honeycomb removed the reliance on physical buttons, and introduced the ActionBar class as the standard solution to make actions from the user options immediately visible and quick to invoke. In order to provide the most intuitive and consistent user expe... more »

Southern-hemisphere Developer Labs

Tim Bray at Android Developers Blog - 3 weeks ago
We’ve just scheduled Android Developer Labs for Melbourne (January 31), Sydney (February 3), and Auckland (February 8). The material is not introductory; it’s aimed at people with existing apps who want to make them better in the era of Ice Cream Sandwich and tablets. You’ll want to show up with the SDK installed, and a couple of devices. If this describes you, drop by the ADL page and sign up. You should hurry, because these are not large-scale events and there are more qualified people than there are seats.

Introducing the Android Design site

Tim Bray at Android Developers Blog - 3 weeks ago
*[This post is by Christian Robertson, who leads the Android visual design group. He is also the designer of the Roboto font family. —Tim Bray]* Ice Cream Sandwich (Android 4.0) is our biggest redesign yet — both for users and developers. We’ve enhanced the UI framework with new interactions and styles that will let you create Android apps that are simpler and more beautiful than ever before. To help you in that mission, we’re introducing Android Design: the place to learn about principles, building blocks, and patterns for creating world-class Android user interfaces. Whether you... more »

Levels in Renderscript

Tim Bray at Android Developers Blog - 4 weeks ago
*[This post is by R. Jason Sams, an Android Framework engineer who specializes in graphics, performance tuning, and software architecture. —Tim Bray]* For ICS, Renderscript (RS) has been updated with several new features to simplify adding compute acceleration to your application. RS is interesting for compute acceleration when you have large buffers of data on which you need to do significant processing. In this example we will look at applying a levels/saturation operation on a bitmap. In this case, saturation is implemented by multiplying every pixel by a color matrix Levels a... more »

Holo Everywhere

Tim Bray at Android Developers Blog - 5 weeks ago
*[This post is by Adam Powell, an Android Framework engineer who cares about style. —Tim Bray]* Android 4.0 showcases the Holo theme family, further refined since its debut in Android 3.0. But as most developers know, a new system theme for some Android devices isn’t a new or uncommon event. For developers new system themes mean more design targets for their apps. Using system themes means developers can take advantage of a user’s existing expectations and it can save a lot of production time, but only if an app designer can reliably predict the results. Before Android 4.0 the var... more »

Watch out for XmlPullParser.nextText()

Tim Bray at Android Developers Blog - 1 month ago
[image: Jesse Wilson] *[This post is by Jesse Wilson from the Dalvik team. —Tim Bray]* Using XmlPullParser is an efficient and maintainable way to parse XML on Android. Historically Android has had two implementations of this interface: - KXmlParser, via XmlPullParserFactory.newPullParser(). - ExpatPullParser, via Xml.newPullParser(). The implementation from Xml.newPullParser() had a bug where calls to nextText() didn’t always advance to the END_TAG as the documentation promised it would. As a consequence, some apps may be working around the bug with extra c... more »

Android 4.0.3 Platform and Updated SDK tools

Xavier Ducrohet, Android SDK Tech Lead at Android Developers Blog - 1 month ago
Today we are announcing Android 4.0.3, an incremental release of the Android 4.0 (Ice Cream Sandwich) platform. The new release includes a variety of optimizations and bug fixes for phones and tablets, as well as a small number of new APIs for developers. The new API level is 15. Some of the new APIs in Android 4.0.3 include: *Social stream API in Contacts provider:* Applications that use social stream data such as status updates and check-ins can now sync that data with each of the user’s contacts, providing items in a stream along with photos for each. This new API lets apps sho... more »

Introducing Android Training

Tim Bray at Android Developers Blog - 1 month ago
*[This post is by Reto Meier, Android Developer Relations Tech Lead. — Tim Bray]* Today I’m thrilled to announce the beta launch of Android Training — a collection of classes that we hope will help you to build better Android apps. From designing effective navigation, to managing audio playback, to optimizing battery life, these classes are designed to demonstrate best practices for solving common Android development problems. Each class explains the steps required to solve a problem, or implement a feature, with plenty of code snippets and sample code for you to use within you... more »

More Android Games that Play Nice

Tim Bray at Android Developers Blog - 1 month ago
*[This post is by Dan Galpin, who lives the Android Games lifestyle every day. — Tim Bray]* Making a game on Android is easy. Making a great game for a mobile, multitasking, often multi-core, multi-purpose system like Android is trickier. Even the best developers frequently make mistakes in the way they interact with the Android system and with other applications — mistakes that don’t affect the quality of gameplay, but which affect the quality of the user’s experience in other ways. A truly great Android game knows how to play nice: how to fit seamlessly into the system of apps,... more »

Add Voice Typing To Your IME

Tim Bray at Android Developers Blog - 1 month ago
*[This post is by Luca Zanolin, an Android engineer who works on voice typing. — Tim Bray]* A new feature available in Android 4.0 is voice typing: the difference for users is that the recognition results appear in the text box while they are still speaking. If you are an IME developer, you can easily integrate with voice typing. To simplify the integration, if you download this library and modify your IME as described below, everything will work smoothly on any device with Android 2.2 or later. On 4.0+, users will get voice typing, and earlier versions will use standard voice r... more »

A Closer Look at 10 Billion Downloads

Dirk Dougherty at Android Developers Blog - 1 month ago
[This post is by Eric Chu, Android Developer Ecosystem. —Dirk Dougherty] On Tuesday, we announced that Android Market passed 10 Billion app downloads. We wanted to look a little deeper at that huge number. First question: which app was lucky number 10 billion? Photobucket Mobile. They’ll be getting a great prize package, including tickets to next year’s Google I/O developer conference. Remember we still have 8 days left to celebrate 10 billion downloads with 10-cent apps on Android Market. You can follow which apps are promoted each day on +Android, our Google+ page. Here’s a gra... more »

10 Billion Android Market Downloads and Counting

Dirk Dougherty at Android Developers Blog - 2 months ago
[This post is by Eric Chu, Android Developer Ecosystem. —Dirk Dougherty] One billion is a pretty big number by any measurement. However, when it’s describing the *speed* at which something is growing, it’s simply amazing. This past weekend, thanks to Android users around the world, Android Marketexceeded 10 billion app downloads—with a growth rate of one billion app downloads *per month*. We can’t wait to see where this accelerating growth takes us in 2012. To celebrate this milestone, we partnered with some of the Android developers who contributed to this milestone to make a bun... more »

Games Coming to Android Market in Korea

Dirk Dougherty at Android Developers Blog - 2 months ago
[This post is by Eric Chu, Android Developer Ecosystem. —Dirk Dougherty] In the 24 months since the first Android device became available locally, Korea has quickly become one of the top countries in Android device activations. In parallel, we’ve also seen tremendous growth in app downloads from Android Market. Korea is now the second-largest consumer of apps worldwide. Today we are adding to this momentum by bringing games to Android Market in Korea. Starting right away, Android users in Korea can explore the many thousands of popular game titles available in Android Market and do... more »

Making Android Games that Play Nice

Tim Bray at Android Developers Blog - 2 months ago
*[This post is by Ian Ni-Lewis, a Developer Advocate who devotes most of his time to making Android games more awesome. — Tim Bray]* Making a game on Android is easy. Making a *great* game for a mobile, multitasking, often multi-core, multi-purpose system like Android is trickier. Even the best developers frequently make mistakes in the way they interact with the Android system and with other applications — mistakes that don’t affect the quality of gameplay, but which affect the quality of the user’s experience in other ways. A truly great Android game knows how to play nice: how... more »

Updated NDK for Android 4.0

Xavier Ducrohet, Android SDK Tech Lead at Android Developers Blog - 2 months ago
Today we are releasing an updated version of the Android NDK, now in revision 7. The updated NDK lets developers who are using native code get started with the new native APIs available in Android 4.0. Android NDK r7 includes a number of build system improvements and bug fixes, but most importantly it gives you access to two new sets of APIs: *Low-level streaming multimedia:* A new API based on Khronos OpenMAX AL 1.0.1 provides a direct, efficient path for low-level streaming multimedia. The new path is ideal for applications that need to maintain complete control over media data ... more »

New Layout Widgets: Space and GridLayout

Tim Bray at Android Developers Blog - 2 months ago
*[This post is by Philip Milne, who is part of the Android framework team. — Tim Bray]* Ice Cream Sandwich (ICS) sports two new widgets that have been designed to support the richer user interfaces made possible by larger displays: Spaceand GridLayout. The most commonly used class for layout in Android is LinearLayout, which allows its children to be aligned in the usual ways: along either the horizontal or vertical axes. It’s often possible to take a complicated layout and break it down into a set of nested linear layouts and, provided this nesting doesn’t get too deep, this is ... more »

More Android Developer Labs in Asia

Tim Bray at Android Developers Blog - 2 months ago
A couple of months ago, we kicked off a series of Android Developer Labs in Asia, North America and Europe. To wrap up the 2011 series, we now have opened registration for 2 more locations in Asia. - Taipei — December 2, 2011 - Hong Kong — December 6, 2011 Remember, this ADL series isn’t another set of introduction-to-Android sessions, nor any other kind of general overview. It's specifically aimed at optimizing Android apps for tablets, in particular creating high-quality tablet apps with an emphasis on polish and user experience. Registration is a two-st... more »

JNI Local Reference Changes in ICS

Tim Bray at Android Developers Blog - 3 months ago
*[This post is by Elliott Hughes, a Software Engineer on the Dalvik team. — Tim Bray]* If you don’t write native code that uses JNI, you can stop reading now. If you do write native code that uses JNI, you really need to read this. What’s changing, and why? Every developer wants a good garbage collector. The best garbage collectors move objects around. This lets them offer very cheap allocation and bulk deallocation, avoids heap fragmentation, and may improve locality. Moving objects around is a problem if you’ve handed out pointers to them to native code. JNI uses types such as j... more »

Android 4.0 Graphics and Animations

Tim Bray at Android Developers Blog - 3 months ago
*[This post is by Romain Guy and Chet Haase, Android engineers who have been known to collaborate on the subject of graphics, UIs, and animation. You can read more from them on their blogs at curious-creature.org and graphics-geek.blogspot.com. — Tim Bray]* Earlier this year, Android 3.0 launched with a new 2D rendering pipeline designed to support hardware acceleration on tablets. With this new pipeline, all drawing operations performed by the UI toolkit are carried out using the GPU. You’ll be happy to hear that Android 4.0, Ice Cream Sandwich, brings an improved version of the... more »

Introducing Android WebDriver

Tim Bray at Android Developers Blog - 3 months ago
*[This post is by Dounia Berrada, an engineer on the EngTools team. — Tim Bray]* Selenium WebDriver is a browser automation tool which provides a lightweight and elegant way for testing web apps. Selenium WebDriver is now available as an SDK extra in the Android SDK, and supports 2.3 (Gingerbread) and onwards! Whether or not your site is optimized for mobile browsers, you can be sure that users will be accessing it from their phones and tablets. WebDriver makes it easy to write automated tests that ensure your site works correctly when viewed from the Android browser. We’ll walk ... more »

Changes to Library Projects in Android SDK Tools, r14

Xavier Ducrohet, Android SDK Tech Lead at Android Developers Blog - 3 months ago
Last week, we released the SDK for Android 4.0 and a new set of developer tools, now in revision 14. The updated tools include a lot of build changes, many that improve build performance. Also included is an under-the-hood change in how libraries are used by main projects — a first step in improving library support and code reusability. While the change should have little impact on existing projects, some developers have had issues when migrating to the updated tools. Please read below for more information about the change to library projects and how to solve migration issues. Pr... more »

New Public APIs in ICS

Tim Bray at Android Developers Blog - 3 months ago
Since Android is open-source, anyone can look at the code and see how it works inside. If you do this, you’ll notice that most but not all of the APIs are publicly documented. If they’re publicly documented, they’re part of what we consider the Android Application Framework. This means their tests appear in the Compatibility Test Suite (CTS) so that our hardware partners have to prove that the APIs work, and that we promise to try very hard not to change them and thus break your code. In almost every case, there’s only one reason for leaving APIs undocumented: We’re not sure that... more »

Android 4.0 Platform and Updated SDK Tools

Xavier Ducrohet, Android SDK Tech Lead at Android Developers Blog - 3 months ago
[image: ICS logo] Today we are announcing Android 4.0, Ice Cream Sandwich — a new version of the platform that brings a refined, unified user experience for phones, tablets, and more. Android 4.0 builds on the things people love most about Android — efficient multitasking, rich notifications, customizable home screens, resizable widgets, and deep interactivity — and adds powerful new ways of communicating and sharing. It includes many great features for users, including social and sharing integration, network data usage control, innovative connectivity and camera options, and an up... more »

Android Market Featured-Image Guidelines

Tim Bray at Android Developers Blog - 4 months ago
*[This post is by Natascha Bock, a Product Marketing Manager on Android. — Tim Bray]* With the latest Android Market update, our editorial team can use your 1024 x 500 “Featured Image” to promote your app on tablets, phones, and the Web. The image can be used on the home page on all versions of Android Market (Web, tablet and phone), on your product page in the Web and tablet versions, and on current and future top-level Android Market pages on phones. Creating a Featured Image that will do a great job of highlighting your app requires special design consideration. Not Really Op... more »

Android’s HTTP Clients

Tim Bray at Android Developers Blog - 4 months ago
[image: Jesse Wilson] *[This post is by Jesse Wilson from the Dalvik team. —Tim Bray]* Most network-connected Android apps will use HTTP to send and receive data. Android includes two HTTP clients: HttpURLConnection and Apache HTTP Client. Both support HTTPS, streaming uploads and downloads, configurable timeouts, IPv6 and connection pooling. Apache HTTP Client DefaultHttpClient and its sibling AndroidHttpClient are extensible HTTP clients suitable for web browsers. They have large and flexible APIs. Their implementation is stable and they have few bugs. But the large size of this... more »

Euro Android Developer Labs

Tim Bray at Android Developers Blog - 4 months ago
This series started last month, and now registration is open for the European leg: - Berlin — September 28 and 29. - London — October 3 and 5. - Paris — October 27 and 28. Remember, this ADL series isn’t another set of introduction-to-Android sessions, nor any other kind of general overview. It's specifically aimed at optimizing Android apps for tablets, in particular creating high-quality tablet apps with an emphasis on polish and user-experience. Registration is a two-step process. Anyone can register, but we can only accommodate a relatively ... more »

Preparing for Handsets

Tim Bray at Android Developers Blog - 4 months ago
*[This post is by Scott Main, lead tech writer for developer.android.com . — Tim Bray]* Early this year, Honeycomb (Android 3.0) launched for tablets. Although Honeycomb remains tablets-only, the upcoming Ice Cream Sandwich (ICS) release will support big screens, small screens, and everything in between. This is the way Android will stay from now on: the same version runs on all screen sizes. Some Honeycomb apps assume that they’ll run only on a large screen, and have baked that into their designs. This assumption is currently true, but will become false with the arrival of ICS, b... more »

Thinking Like a Web Designer

Tim Bray at Android Developers Blog - 4 months ago
*[This post is by Roman Nurik, who is passionate about icons, with input from me and a bunch of the Framework engineers. —Tim Bray]* The number of people working on mobile apps, and specifically Android, is growing fast. Since modern mobile software-development is a relatively new profession, the community is growing by sucking in experts from related domains, one being web design and development. It turns out that familiarity with web UI development, particularly using modern HTML5 techniques, can be a great primer for Android UI development. The Android framework and SDK have ma... more »

More Carrier Billing Options on Android Market

Dirk Dougherty at Android Developers Blog - 4 months ago
[This post is by Eric Chu, Android Developer Ecosystem. —Dirk Dougherty] Over the past year, we’ve seen very strong growth in the number of Android users around the world. To make it easier for those users to purchase their favorite apps and games on Android Market, we’re bringing Direct Carrier Billing to additional carrier networks in South Korea, the UK, and Germany. In South Korea, we’ve begun a phased rollout of the service to users on the top two carrier networks — SK Telecom and KT Corporation. When complete, the rollout will reach more than 10 million users, who will be able... more »

Horizontal View Swiping with ViewPager

Tim Bray at Android Developers Blog - 5 months ago
*[This post is by Rich “geekyouup” Hyndman, inspired by the fact that life just got that little bit easier — Tim Bray]* Whether you have just started out in Android app development or are a veteran of the craft, it probably won’t be too long before you’ll need to implement horizontally scrolling sets of views. Many existing Android apps already use this UI pattern, such as the new Android Market, Google Docs and Google+. ViewPager standardizes the implementation. ViewPager was released as part of the Compatibility Package revision 3 and works with Android 1.6 upwards. After follow... more »

Preview of Google TV Add-on for the Android SDK

Tim Bray at Android Developers Blog - 5 months ago
*[This post is by Ambarish Kenghe, who’s a Product Manager for Google TV — Tim Bray]* At Google I/O, we announced that Android Market is coming to Google TV. Today, we’re announcing a preview of the Google TV Add-on for the Android SDK. With the upcoming OS update to Honeycomb, Google TV devices will be Android compatible. That means developers can build great new Android apps for TV, optimize existing mobile or tablet apps for TV, and distribute those apps through Android Market. While the add-on does not contain all features of Google TV, it enables developers to emulate Google... more »

Android Developer Labs 2011

Tim Bray at Android Developers Blog - 6 months ago
We in Android Developer Relations have been cooking up a rather special set of Android Developer Labs (ADLs) for the second half of 2011, and we’re ready to start the ball rolling. Here’s the schedule. These are one-day events, so in Seattle and New York we’re running it twice for two audiences. - Bangalore — August 2 (happening today) - Seattle — August 15 and 16 - New York — August 23 and 24 - Los Angeles — September 2 This ADL series isn’t another set of introduction-to-Android sessions, nor any other kind of general overview. It'... more »

Custom Class Loading in Dalvik

Tim Bray at Android Developers Blog - 6 months ago
*[This post is by Fred Chung, who’s an Android Developer Advocate — Tim Bray]* The Dalvik VM provides facilities for developers to perform custom class loading. Instead of loading Dalvik executable (“dex”) files from the default location, an application can load them from alternative locations such as internal storage or over the network. This technique is not for every application; In fact, most do just fine without it. However, there are situations where custom class loading can come in handy. Here are a couple of scenarios: - Big apps can contain more than 64K meth... more »

New Tools For Managing Screen Sizes

Tim Bray at Android Developers Blog - 6 months ago
*[This post is by Dianne Hackborn and a supporting cast of thousands; Dianne’s fingerprints can be found all over the Android Application Framework — Tim Bray]* Android 3.2 includes new tools for supporting devices with a wide range of screen sizes. One important result is better support for a new size of screen; what is typically called a “7-inch” tablet. This release also offers several new APIs to simplify developers’ work in adjusting to different screen sizes. This a long post. We start by discussing the why and how of Android “dp” arithmetic, and the finer points of the scr... more »

Multiple APK Support in Android Market

Dirk Dougherty at Android Developers Blog - 6 months ago
[This post is by Eric Chu, Android Developer Ecosystem. —Dirk Dougherty] At Google I/O we announced our plans to add several new capabilities to help developers manage their products more effectively in Android Market. We’re pleased to let you know that the latest of those, multiple APK support, is now available. Multiple APK support is a new publishing option in Android Market for those developers who want extra control over distribution. Until now, each product listing on Android Market has included a single APK file, a universal payload that is deliverable to all eligible devic... more »

Debugging Android JNI with CheckJNI

Tim Bray at Android Developers Blog - 6 months ago
*[This post is by Elliott Hughes, a Software Engineer on the Dalvik team — Tim Bray]* Although most Android apps run entirely on top of Dalvik, some use the Android NDK to include native code using JNI. Native code is harder to get right than Dalvik code, and when you have a bug, it’s often a lot harder to find and fix it. Using JNI is inherently tricky (there’s precious little help from the type system, for example), and JNI functions provide almost no run-time checking. Bear in mind also that the developer console’s crash reporting doesn’t include native crashes, so you don’t ev... more »

Android 3.2 Platform and Updated SDK tools

Xavier Ducrohet, Android SDK Tech Lead at Android Developers Blog - 6 months ago
Today we are announcing the Android 3.2 platform, an incremental release that adds several new capabilities for users and developers. The new platform includes API changes and the API level is 13. Here are some of the highlights of Android 3.2: *Optimizations for a wider range of tablets.* A variety of refinements across the system ensure a great user experience on a wider range of tablet devices. *Compatibility zoom for fixed-sized apps.* A new compatibility display modegives users a new way to view these apps on larger devices. The mode provides a pixel-scaled alternative to the... more »

A New Android Market for Phones

Dirk Dougherty at Android Developers Blog - 6 months ago
[This post is by Eric Chu, Android Developer Ecosystem. —Dirk Dougherty] Earlier this year, we launched several important features aimed at making it easier to find great applications on Android Market on the Web. Today, we're very excited to launch a completely redesigned Android Market client that brings these and other features to phones. The new Market client is designed to better showcase top apps and games, engage users with an improved UI, and provide a quicker path to downloading or purchasing your products. For developers, the new Android Market client means more opportun... more »

New Mode for Apps on Large Screens

Tim Bray at Android Developers Blog - 6 months ago
*[This post is by Scott Main, lead tech writer for developer.android.com . — Tim Bray]* Android tablets are becoming more popular, and we're pleased to note that the vast majority of apps resize to the larger screens just fine. To keep the few apps that don't resize well from frustrating users with awkward-looking apps on their tablets, a near-future release of Honeycomb is introducing a new screen compatibility mode to make these apps more usable on tablets. If your app is one of the many that do resize well, however, you should update your app as soon as possible to disable scree... more »

A Deep Dive Into Location

Tim Bray at Android Developers Blog - 7 months ago
*[This post is by Reto Meier, Tech Lead for Android Developer Relations, who wrote the book on Android App development. — Tim Bray]* I'm a big fan of location-based apps, but not their seemingly-inevitable startup latency. Whether it's finding a place to eat or searching for the nearest Boris Bike, I find the delay while waiting for the GPS to get a fix, and then for the results list to populate, to be interminable. Once I’m in a venue and ready to get some tips, check-in, or review the food, I’m frequently thwarted by a lack of data connection. Rather than shaking my fist at th... more »

Things That Cannot Change

Tim Bray at Android Developers Blog - 7 months ago
*[This post is by Dianne Hackborn, whose fingerprints can be found all over the Android Application Framework — Tim Bray]* Sometimes a developer will make a change to an application that has surprising results when installed as an update to a previous version — shortcuts break, widgets disappear, or it can’t even be installed at all. There are certain parts of an application that are immutable once you publish it, and you can avoid surprises by understanding them. Your package name and certificate The most obvious and visible of these is the “manifest package name,” the unique nam... more »

New Editing Features in Eclipse plug-in for Android

Xavier Ducrohet, Android SDK Tech Lead at Android Developers Blog - 8 months ago
At the Google I/O conference a month ago, we demonstrated the next version of the Android Development Tools (ADT) plugin. Today we’re happy to announce that version 11 is done and available for download! ADT 11 focuses on editor improvements. First, it offers several new visual refactoring operations, such as “Extract Include” and “Extract Style,” which help automatically extract duplicated layout fragments and style attributes into reusable layouts, styles, and themes. Second, the visual layout editor now supports fragments, palette configurations, and improved support for custom... more »

Introducing ViewPropertyAnimator

Tim Bray at Android Developers Blog - 8 months ago
*[This post is by Chet Haase, an Android engineer who specializes in graphics and animation, and who occasionally posts videos and articles on these topics on his CodeDependent blog at graphics-geek.blogspot.com . — Tim Bray]* In an earlier article, Animation in Honeycomb, I talked about the new property animation system available as of Android 3.0. This new animation system makes it easy to animate any kind of property on any object, including the new properties added to the View class in 3.0. In the 3.1 release, which was made available recently, we added a small utility class ... more »

ADK at Maker Faire

Tim Bray at Android Developers Blog - 8 months ago
This weekend is Maker Faire, and Google is all over it. Following up on yesterday’s ADK post, we should take this opportunity to note that the Faire has chased a lot of ADK-related activity out of the woodwork. The level of traction is pretty surprising giving that this stuff only decloaked last week. Convenience Library First, there’s a new open-source project called Easy Peripheral Controller. This is a bunch of convenience/abstraction code; its goal is to help n00bs make their first robot or hardware project with Android. It takes care of lots of the mysteries of microcontrolle... more »

A Bright Idea: Android Open Accessories

Tim Bray at Android Developers Blog - 8 months ago
*[This post is by Justin Mattson, an Android Developer Advocate, and Erik Gilling, an engineer on the Android systems team. — Tim Bray]* Android’s USB port has in the past been curiously inaccessible to programmers. Last week at Google I/O we announced the Android Open Accessory APIs for Android. These APIs allow USB accessories to connect to Android devices running Android 3.1 or Android 2.3.4 without special licensing or fees. The new “accessory mode” does not require the Android device to support USB Host mode. This post will concentrate on accessory mode, but we also announced... more »

Android 3.1 Platform, New SDK tools

Xavier Ducrohet, Android SDK Tech Lead at Android Developers Blog - 8 months ago
As we announced at Google I/O, today we are releasing version 3.1 of the Android platform. Android 3.1 is an incremental release that builds on the tablet-optimized UI and features introduced in Android 3.0. It adds several new features for users and developers, including: - *Open Accessory API.* This new API provides a way for Android applications to integrate and interact with a wide range of accessories such as musical equipment, exercise equipment, robotics systems, and many others. - *USB host API.* On devices that support USB host mode, applications can no... more »

Commerce Tracking with Google Analytics for Android

Tim Bray at Android Developers Blog - 9 months ago
*[This post is by Jim Cotugno and Nick Mihailovski, engineers who work on Google Analytics — Tim Bray]* Today we released a new version of the Google Analytics Android SDK which includes support for tracking e-commerce transactions. This post walks you through setting it up in your mobile application. Why It’s Important If you allow users to purchase goods in your application, you’ll want to understand how much revenue your application generates as well as which products are most popular. With the new e-commerce tracking functionality in the Google Analytics Android SDK, this is ... more »

Merchant Sales Reports on Android Market

Dirk Dougherty at Android Developers Blog - 9 months ago
[This post is by Eric Chu, Android Developer Ecosystem. —Dirk Dougherty] As part of our ongoing efforts to provide better tools to help you manage your business, we are introducing merchant sales reporting on Android Market. Developers now have convenient access to monthly reports that detail the financial performance of their applications directly from the Android Market Developer Console. Based on Google Checkout financial data, these reports provide per-transaction details including additional information such as device information, currency of sale, and currency conversion rat... more »

Android Developer Challenge, Sub-Saharan Africa!

Tim Bray at Android Developers Blog - 9 months ago
*[This post is by Bridgette Sexton, an innovation advocate for the African tech community. — Tim Bray]* En Français. In the past year alone, we have met with over 10,000 developers and techies across Sub Saharan Africa. We are continually impressed by the ingenuity and enthusiasm of this community in solving real problems with technology. From applications that crowd-source traffic info to mobile registration of local businesses, handheld devices have taken center stage for consumers and developers in Africa. With a number of countries in the region hovering around 80-90% mobile ... more »

Customizing the Action Bar

Tim Bray at Android Developers Blog - 9 months ago
*[This post is by Nick Butcher, an Android engineer who notices small imperfections, and they annoy him. — Tim Bray]* Since the introduction of the Action Bar design pattern, many applications have adopted it as a way to provide easy access to common actions. In Android 3.0 (or Honeycomb to its friends) this pattern has been baked in as the default navigation paradigm and extended to take advantage of the extra real-estate available on tablets. By using the Action Bar in your Honeycomb-targeted apps, you'll give your users a familiar way to interact with your application. Also, yo... more »

New Carrier Billing Options on Android Market

Dirk Dougherty at Android Developers Blog - 9 months ago
[This post is by Eric Chu, Android Developer Ecosystem. —Dirk Dougherty] Since last year, we’ve been working to bring the convenience of Direct Carrier Billing to more Android Market users on more carrier networks. Building on the launches to T-Mobile US and AT&T users in 2010, we’ve recently launched Direct Carrier Billing to users on three popular networks in Japan -- SoftBank, KDDI, and NTT DOCOMO. The momentum continues and today we’re excited to announce that Direct Carrier Billing is now available on Sprint. We've begun a phased roll-out of the service that will reach all u... more »

I think I’m having a Gene Amdahl moment (http://goo.gl/7v4kf)

Tim Bray at Android Developers Blog - 10 months ago
*[This post is by Andy Rubin, VP of Engineering —Tim Bray]* Recently, there’s been a lot of misinformation in the press about Android and Google’s role in supporting the ecosystem. I’m writing in the spirit of transparency and in an attempt to set the record straight. The Android community has grown tremendously since the launch of the first Android device in October 2008, but throughout we’ve remained committed to fostering the development of an open platform for the mobile industry and beyond. We don’t believe in a “one size fits all” solution. The Android platform has already ... more »

The IO Ticket Contest

Tim Bray at Android Developers Blog - 10 months ago
When Google I/O sold out so fast, were kicking around ideas for how to get some of our ticket reserve into the hands of our favorite people: Dedicated developers. Someone floated the idea of a contest, so we had to pull one together double-quick. You can read the questions and first-round answers here. We thought you would enjoy some statistics, mostly rounded-off: - *2,800* people visited the contest page. - *360* people tried answering the questions. - *1* person got all six right. - *200* people did well enough to get into Round 2. -... more »

Identifying App Installations

Tim Bray at Android Developers Blog - 10 months ago
*[The contents of this post grew out of an internal discussion featuring many of the usual suspects who’ve been authors in this space. — Tim Bray]* In the Android group, from time to time we hear complaints from developers about problems they’re having coming up with reliable, stable, unique device identifiers. This worries us, because we think that tracking such identifiers isn’t a good idea, and that there are better ways to achieve developers’ goals. Tracking Installations It is very common, and perfectly reasonable, for a developer to want to track individual installations of ... more »

In-app Billing Launched on Android Market

Dirk Dougherty at Android Developers Blog - 10 months ago
[This post is by Eric Chu, Android Developer Ecosystem. —Dirk Dougherty] Today, we're pleased to announce the launch of Android Market In-app Billing to developers and users. As an Android developer, you will now be able to publish apps that use In-app Billing and your users can make purchases from within your apps. In-app Billing gives you more ways to monetize your apps with try-and-buy, virtual goods, upgrades, and other billing models. If you aren’t yet familiar with In-app Billing, we encourage you to learn more about it. Several apps launching today are already using the ser... more »

In-App Billing on Android Market: Ready for Testing

Dirk Dougherty at Android Developers Blog - 10 months ago
[This post is by Eric Chu, Android Developer Ecosystem. —Dirk Dougherty] Back in January we announced our plan to introduce Android Market In-app Billing this quarter. We're pleased to let you know that we will be launching In-app Billing next week. In preparation for the launch, we are opening up Android Market for upload and end-to-end testing of your apps that use In-app Billing. You can now upload your apps to the Developer Console, create a catalog of in-app products, and set prices for them. You can then set up accounts to test in-app purchases. During these test transaction... more »

Memory Analysis for Android Applications

Tim Bray at Android Developers Blog - 10 months ago
*[This post is by Patrick Dubroy, an Android engineer who writes about programming, usability, and interaction on his personal blog. — Tim Bray]* The Dalvik runtime may be garbage-collected, but that doesn't mean you can ignore memory management. You should be especially mindful of memory usage on mobile devices, where memory is more constrained. In this article, we're going to take a look at some of the memory profiling tools in the Android SDK that can help you trim your application's memory usage. Some memory usage problems are obvious. For example, if your app leaks memory eve... more »

Application Stats on Android Market

Dirk Dougherty at Android Developers Blog - 10 months ago
[This post is by Eric Chu, Android Developer Ecosystem. —Dirk Dougherty] On the Android Market team, it’s been our goal to bring you improved ways of seeing and understanding the installation performance of your published applications. We know that this information is critical in helping you tune your development and marketing efforts. Today I’m pleased to let you know about an important new feature that we’ve added to Android Market called Application Statistics. Application Statistics is a new type of dashboard in the Market Developer Console that gives you an overview of the in... more »

Android 3.0 Hardware Acceleration

Romain Guy at Android Developers Blog - 10 months ago
*[This post is by Romain Guy, who likes things on your screen to move fast. —Tim Bray]* One of the biggest changes we made to Android in this release is the addition of a new rendering pipeline so that applications can benefit from hardware accelerated 2D graphics. Hardware accelerated graphics is nothing new to the Android platform, it has always been used for windows composition or OpenGL games for instance, but with this new rendering pipeline applications can benefit from an extra boost in performance. On a Motorola Xoom device, all the standard applications like Browser and ... more »

Renderscript Part 2

Tim Bray at Android Developers Blog - 10 months ago
*[This post is by R. Jason Sams, an Android engineer who specializes in graphics, performance tuning, and software architecture. —Tim Bray]* In Introducing Renderscript I gave a brief overview of this technology. In this post I’ll look at “compute” in more detail. In Renderscript we use “compute” to mean offloading of data processing from Dalvik code to Renderscript code which may run on the same or different processor(s). Renderscript’s Design Goals Renderscript has three primary goals, given here from most to least important. *Portability*: Application code needs to be able to r... more »

Fragments For All

Tim Bray at Android Developers Blog - 11 months ago
*[This post is by Xavier Ducrohet, Android SDK Tech Lead. — Tim Bray]* A few weeks ago, Dianne Hackborn wrote about the new Fragments API, a mechanism that makes it easier for applications to scale across a variety of screen sizes. However, as Dianne noted, this new API, which is part of Honeycomb, does not help developers whose applications target earlier versions of Android. Today we’ve released a static library that exposes the same Fragments API (as well as the new LoaderManager and a few other classes) so that applications compatible with Android 1.6 or later can use fragment... more »

Heading for GDC

Tim Bray at Android Developers Blog - 11 months ago
*[This post is by Chris Pruett, who writes regularly about games here, and is obviously pretty cranked about this conference. — Tim Bray]* Android will descend in force upon the Game Developers Conference in San Francisco this week; we’re offering a full day packed with sessions covering everything you need to know to build games on Android. From 10 AM to 5 PM on Tuesday the 1st, North Hall Room 121 will be ground zero for Android Developer Day, with five engineering-focused sessions on everything from compatibility to native audio and graphics. Here's a quick overview; there’s mo... more »

Animation in Honeycomb

Tim Bray at Android Developers Blog - 11 months ago
*[This post is by Chet Haase, an Android engineer who specializes in graphics and animation, and who occasionally posts videos and articles on these topics on his CodeDependent blog at graphics-geek.blogspot.com . — Tim Bray]* One of the new features ushered in with the Honeycomb release is a new animation system, a set of APIs in a whole new package (android.animation) that makes animating objects and properties much easier than it was before. "But wait!" you blurt out, nearly projecting a mouthful of coffee onto your keyboard while reading this article, "Isn't there already an a... more »

Best Practices for Honeycomb and Tablets

Tim Bray at Android Developers Blog - 11 months ago
The first tablets running Android 3.0 (“Honeycomb”) will be hitting the streets on Thursday Feb. 24th, and we’ve just posted the full SDK release. We encourage you to test your applications on the new platform, using a tablet-size AVD. Developers who’ve followed the Android Framework’s guidelines and best practices will find their apps work well on Android 3.0. This purpose of this post is to provide reminders of and links to those best practices. Moving Toward Honeycomb There’s a comprehensive discussion of how to work with the new release in Optimizing Apps for Android 3.0. The ... more »

Final Android 3.0 Platform and Updated SDK Tools

Xavier Ducrohet, Android SDK Tech Lead at Android Developers Blog - 11 months ago
We are pleased to announce that the full SDK for Android 3.0 is now available to developers. The APIs are final, and you can now develop apps targeting this new platform and publish them to Android Market. The new API level is 11. For an overview of the new user and developer features, see the Android 3.0 Platform Highlights. Together with the new platform, we are releasing updates to our SDK Tools (r10) and ADT Plugin for Eclipse (10.0.0). Key features include: - UI Builder improvements in the ADT Plugin: - New Palette with categories and rendering previews. (details) ... more »

Introducing Renderscript

Tim Bray at Android Developers Blog - 11 months ago
*[This post is by R. Jason Sams, an Android engineer who specializes in graphics, performance tuning, and software architecture. —Tim Bray]* Renderscript is a key new Honeycomb feature which we haven’t yet discussed in much detail. I will address this in two parts. This post will be a quick overview of Renderscript. A more detailed technical post with a simple example will be provided later. Renderscript is a new API targeted at high-performance 3D rendering and compute operations. The goal of Renderscript is to bring a lower level, higher performance API to Android developers. Th... more »

Android 2.3.3 Platform, New NFC Capabilities

Xavier Ducrohet, Android SDK Tech Lead at Android Developers Blog - 11 months ago
Several weeks ago we released Android 2.3, which introduced several new forms of communication for developers and users. One of those, Near Field Communications (NFC), let developers get started creating a new class of contactless, proximity-based applications for users. NFC is an emerging technology that promises exciting new ways to use mobile devices, including ticketing, advertising, ratings, and even data exchange with other devices. We know there’s a strong interest to include these capabilities into many applications, so we’re happy to announce an update to Android 2.3 that... more »

The Android 3.0 Fragments API

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Dianne Hackborn, a Software Engineer who sits very near the exact center of everything Android. — Tim Bray]* An important goal for Android 3.0 is to make it easier for developers to write applications that can scale across a variety of screen sizes, beyond the facilities already available in the platform: - Since the beginning, Android’s UI framework has been designed around the use of layout managers, allowing UIs to be described in a way that will adjust to the space available. A common example is a ListView whose height changes depending on... more »

New Merchandising and Billing Features on Android Market

Dirk Dougherty at Android Developers Blog - 1 year ago
[This post is by Eric Chu, Android Developer Ecosystem. —Dirk Dougherty] Following on last week’s announcement of the Android 3.0 Preview SDK, I’d like to share some more good news with you about three important new features on Android Market. Android Market on the Web Starting today, we have extended Android Market client from mobile devices to every desktop. Anyone can now easily find and share applications from their favorite browser. Once users select an application they want, it will automatically be downloaded to their Android-powered devices over-the-air. Android Market on... more »

New Merchandising and Billing Features on Android Market

Dirk Dougherty at Android Developers Blog - 1 year ago
[This post is by Eric Chu, Android Developer Ecosystem. —Dirk Dougherty] Following on last week’s announcement of the Android 3.0 Preview SDK, I’d like to share some more good news with you about three important new features on Android Market. Android Market on the Web Starting today, we have extended Android Market client from mobile devices to every desktop. Anyone can now easily find and share applications from their favorite browser. Once users select an application they want, it will automatically be downloaded to their Android-powered devices over-the-air. Android Market on... more »

Android 3.0 Platform Preview and Updated SDK Tools

Xavier Ducrohet, Android SDK Tech Lead at Android Developers Blog - 1 year ago
Android 3.0 (Honeycomb) is a new version of the Android platform that is designed from the ground up for devices with larger screen sizes, particularly tablets. It introduces a new “holographic” UI theme and an interaction model that builds on the things people love about Android — multitasking, notifications, widgets, and others — and adds many new features as well. Besides the user-facing features it offers, Android 3.0 is also specifically designed to give developers the tools and capabilities they need to create great applications for tablets and similar devices, together wit... more »

Processing Ordered Broadcasts

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Bruno Albuquerque, an engineer who works in Google’s office in Belo Horizonte, Brazil. —Tim Bray]* One of the things that I find most interesting and powerful about Android is the concept of broadcasts and their use through the BroadcastReceiverclass (from now on, we will call implementations of this class “receivers”). As this document is about a very specific usage scenario for broadcasts, I will not go into detail about how they work in general, so I recommend reading the documentation about them in the Android developer site. For the purpose of this document, ... more »

Have Androids. Will Travel.

Tim Bray at Android Developers Blog - 1 year ago
*[The first part of this post is by Reto Meier. —Tim Bray]* From c-base in Berlin to the Ice Bar in Stockholm, from four courses of pasta in Florence to beer and pretzels in Munich, and from balalikas in Moscow to metal cage mind puzzles in Prague - one common theme was the enthusiasm and quality of the Android developers in attendance. You guys are epic. For those of you who couldn't join us, we're in the middle of posting all the sessions we presented during this most recent world tour. Stand by for links. Droidcon UK We kicked off our conference season at Droidcon UK, an Andro... more »

Gingerbread NDK Awesomeness

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Chris Pruett, an outward-facing Androider who focuses on the world of games. —Tim Bray]* We released the first version of the Native Development Kit, a development toolchain for building shared libraries in C or C++ that can be used in conjunction with Android applications written in the Java programming language, way back in July of 2009. Since that initial release we’ve steadily improved support for native code; key features such as OpenGL ES support, debugging capabilities, multiple ABI support, and access to bitmaps in native code have arrived with each NDK r... more »

More Payment Options in Android Market

Dirk Dougherty at Android Developers Blog - 1 year ago
[This post is by Eric Chu, Android Developer Ecosystem. —Dirk Dougherty] A key to a great purchasing experience is providing users with simple and fast payment methods. The Android Market team has been working hard to deliver more forms of payment to further reduce purchase friction. Today, I am pleased to announce the availability of AT&T Direct Carrier Billing for Android users on the AT&T network. AT&T Android users can now easily charge their Android Market purchases to their monthly accounts with only a few clicks. With the combination of Android Market’s new app discovery f... more »

More Payment Options in Android Market

Dirk Dougherty at Android Developers Blog - 1 year ago
[This post is by Eric Chu, Android Developer Ecosystem. —Dirk Dougherty] A key to a great purchasing experience is providing users with simple and fast payment methods. The Android Market team has been working hard to deliver more forms of payment to further reduce purchase friction. Today, I am pleased to announce the availability of AT&T Direct Carrier Billing for Android users on the AT&T network. AT&T Android users can now easily charge their Android Market purchases to their monthly accounts with only a few clicks. With the combination of Android Market’s new app discovery fe... more »

It’s not “rooting”, it’s openness

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Nick Kralevich, an engineer on the Android Security Team. — Tim Bray]* “Nexus S has been rooted, let the madness commence!” proclaims Engadget. “This is only possible because Android's security is crap and it's exploited easily to gain root priviledges *[sic]*” adds a commenter. You’ll have to excuse me if I strongly disagree. The Nexus S, like the Nexus One before it, is designed to allow enthusiasts to install custom operating systems. Allowing your own boot image on a pure Nexus S is as simple as running fastboot oem unlock. It should be no surprise that modi... more »

Android Browser User-Agent Issues

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Bart Sears, who manages the Android Browser team. —Tim Bray]* This posting describes some issues when browsing websites with mobile variants using large-form-factor Android devices. This posting will be of interest both to OEMs (with recommendations on how to set the User Agent string for the device) and to web site designers/administrators (with recommendations on how to decide to provide either a mobile version, a desktop version, or a large-form-factor touch device version of the site). Details With the advent of Android devices with larger form factors, we’ve... more »

Analytics for Android Apps

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Alexander Lucas, an Android Developer Advocate bent on saving the world 5 minutes. —Tim Bray]* With the addition of custom variables to the Mobile Analytics SDK for Android, it strikes me as a good time to cover something many of you might not have known was possible — using Google Analytics to easily track app usage. Using the mobile SDK is a handy way to get real data on how users interact with your Android apps. So today I'm going to explain how to track usage of your application with Google Analytics. Prereqs Ahoy! Before you take off running with this shiny ... more »

New Gingerbread API: StrictMode

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Brad Fitzpatrick, an Android Software Engineer who worries unreasonably about responsiveness. —Tim Bray]* Back Story One great thing about Google is “20% time”: spending 20% of your time working on projects outside your main focus area. When I joined Google, I bounced all over the place, often joking that I had seven 20% projects. One project I kept coming back to was Android. I loved its open nature, giving me access to do whatever I wanted, including opening my garage door when I approached my house on my motorcycle. I really wanted it to succeed but I worried ... more »

Android Market Client Update

Dirk Dougherty at Android Developers Blog - 1 year ago
[This post is by Eric Chu, Android Developer Ecosystem. —Dirk Dougherty] The Android Market engineering team has been hard at work on improving the Android Market experience for users and developers. Today, I’m pleased to announce a significant update to the Android Market client. Over the next two weeks, we’ll be rolling out a new Android Market client to all devices running Android 1.6 or higher. This new Market client introduces important features that improve merchandising of applications, streamline the browse-to-purchase experience, and make it easier for developers to distr... more »

Saving Data Safely

Tim Bray at Android Developers Blog - 1 year ago
With the advent of Gingerbread, we’re going to be running a series of posts in this space about the aspects of Android 2.3 that developers should care about. One thing that developers should care about more than anything else is not losing data. The rules are changing slightly as Gingerbread arrives, so I thought that would be a good starting point. I didn’t write this; I pulled it together from the contents of an email thread involving Android engineers Brad Fitzpatrick, Dianne Hackborn, Brian Swetland, and Chris Tate. The question is: how do you make really sure your data’s been ... more »

Android 2.3 Platform and Updated SDK Tools

Xavier Ducrohet, Android SDK Tech Lead at Android Developers Blog - 1 year ago
Today we're announcing a new version of the Android platform — Android 2.3 (Gingerbread). It includes many new platform technologies and APIs to help developers create great apps. Some of the highlights include: *Enhancements for game development:* To improve overall responsiveness, we’ve added a new concurrent garbage collector and optimized the platform’s overall event handling. We’ve also given developers native access to more parts of the system by exposing a broad set of native APIs. From native code, applications can now access input and sensor events, EGL/OpenGL ES, OpenSL ... more »

Content Rating for Android Market

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Eric Chu, Android Developer Ecosystem. —Tim Bray]* Providing users with more information about applications on Android Market has been a top request from Android users. Starting in a few weeks, we will be showing content ratings for all applications on Android Market. This new capability will provide users with additional information to help them select the best applications for them. Android Market’s content policy remains the same as before: applications will be rated according to four content rating levels: All, Pre-teen, Teen, & Mature. Details on the rating... more »

Market Housekeeping Alert

Tim Bray at Android Developers Blog - 1 year ago
We’ve had quite a bit of discussion in this space recently about how to make sure that your app is visible in Android Market to any device that can run it, and only to those devices. In particular, check out two recent pieces by Reto Meier, Future-Proofing Your App and The Five Steps to Future Hardware Happiness. As Reto points out, Market used to infer some settings for older apps that were uploaded before certain device features arrived. This hasn’t been the case for applications uploaded since June of this year; developers have had to be careful about <uses-featu... more »

Android Market Action

Tim Bray at Android Developers Blog - 1 year ago
Almost instantly after I joined Google, it became obvious to me that the number-one area where Android developers wanted to see action and progress was in Android Market; your concerns in this area vastly outweighed whatever issues might be bothering you about the handsets and the framework and the programming tools. In recent months there has been a steady, quiet, incremental flow of improvements and upgrades. They add up. This is by way of a glance back at developments since the arrival of Froyo last summer. *First*, we introduced error reporting to Market, so developers can see ... more »

Improving App Quality

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Roman Nurik, who is passionate about icons. —Tim Bray]* With thousands of new apps being published in Android Market every week, it’s becoming more and more important to proactively work at breaking through the clutter (hooray for marketing jargon!). One way of improving your app’s visibility in the ecosystem is by deploying well-targeted mobile advertising campaigns and cross-app promotions. However, there’s another time-tested method of fueling the impression-install-ranking cycle: improve the product! A better app can go a very long way: a higher quality app w... more »

Traceview War Story

Tim Bray at Android Developers Blog - 1 year ago
I recently took my first serious look at Traceview, and it occurred to me, first, that there are probably a few other Android developers who haven’t used it and, second, that this is an opportunity to lecture sternly on one of my favorite subjects: performance improvement and profiling. This is perhaps a little bit Android-101; If you already know all about Traceview, you can stop here and go back to coding. Making Apps Fast Here’s a belief that I think I share with most experienced developers: For any app that is even moderately complex, you’re not smart enough to predict what th... more »

The Five Steps to Future Hardware Happiness

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Reto Meier AKA @retomeier, who wrote the book on Android App development. —Tim Bray]* Two questions I regularly get asked are “Why isn’t my app visible on the Market on the (insert device name here)?” and “How can I prepare for GoogleTV and Android tablets?” If you care about how broadly your app is available, pay attention now. Seriously. I don’t want to hear anyone telling me they weren’t told. *[Seems a little combative? -Ed. Take it up a notch! -RM]* By now you’ve probably heard of Google TV, the Samsung Galaxy Tab, and the Dell Streak. These are only the va... more »

Android Market New Country Roll-out Details

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by the Android Market team. — Tim Bray]* Last week, we announced that over the next two weeks, users in 18 additional countries would gain the ability to purchase paid apps from Android Market. Effective today, users can now see paid apps in Argentina, Belgium, Brazil, Czech Republic, Denmark, Finland, Hong Kong, India, Ireland, Israel, Mexico, Norway, Poland, Portugal, Russia, Singapore, Sweden, and Taiwan. For users to make a purchase of paid apps in these countries, they must have the latest Android Market client, which we have started to make available as a sel... more »

More Countries, More sellers, More buyers

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Eric Chu, Android Developer Ecosystem. — Tim Bray]* Since we launched Android and Android Market, we have seen the population of Android users and devices expand into many countries. This widespread adoption has brought with it growing interest in Android Market’s support for the buying and selling of paid applications in these additional countries. We have been hard at work on this and it is my pleasure to announce that effective today, developers from 20 more countries can now sell paid apps on Android Market. Additionally, over the next 2 weeks, users in 18 a... more »

Reflections on G-Kenya

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Reto Meier AKA @retomeier, who wrote the book on Android App development. — Tim Bray]* Recently I visited Kenya for the three-day G-Kenya event. I was there for two reasons: - To talk about Android and the emerging mobile opportunities for African developers. - To ask questions and find out more about the reality of mobiles and writing code from the people there. Of the countries I’ve visited to talk about Android, nowhere have people had such a close connection to their mobile phones as in Africa. While most Kenyans own feature ph... more »

Reflections on G-Kenya

Tim Bray at Android Developers Blog - 1 year ago
Post Content

Proguard, Android, and the Licensing Server

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Dan Galpin, an Android Developer Advocate specializing in games and comics. — Tim Bray]* The Securing Android LVL Applications blog post makes it clear that an Android developer should use an obfuscation tool such as Proguard in order to help safeguard their applications when using License Server. Of course, this does present another question. How should one integrate such a tool with the Android build process? We’re specifically going to detail integrating Proguard in this post. Before you Begin You must be running the latest version of the Android SDK Tools (at... more »

Supporting the new music Voice Action

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Mike LeBeau, the Tech Lead and architect behind Voice Actions. — Tim Bray]* We recently launched Voice Actions in the new Google Voice Search for Android — an awesome new way to search, control, and communicate on your phone faster than ever before, by using your voice. One of these new Voice Actions lets users find and automatically play music. By speaking something like “listen to They Might Be Giants” into the new Voice Search, users can quickly find the music they want online and play it, using any number of different apps. (Pandora, Last.fm, Spotify, mSpot,... more »

Screen Geometry Fun

Tim Bray at Android Developers Blog - 1 year ago
The recent announcement of the Samsung Galaxy Tab should be a wake-up call for Android developers. What’s scary is that we’ve never seen a screen like this on an Android device before. What’s reassuring is that most apps Just Work (in fact, a lot of the ones I’ve tried so far have looked terrific) and the potential problems are easy to avoid. Here’s what you need to do to take advantage of not just the Tab, but all the new form factors that are coming down the pipe. Let’s consider the Tab as a “teachable moment”: - Its screen is 1024x600; no compatible device’s screen h... more »

One Screen Turn Deserves Another

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Dan Morrill, Open Source & Compatibility Program Manager. — Tim Bray]* Android has an API for accessing a variety of sensor types, such as an accelerometer or light sensor. Two of the most commonly-used sensors are accelerometers and magnetometers (that is, compasses.) Applications and devices frequently use these as forms of user input, and to determine which way to orient the screen. However, there’s a new wrinkle: recently, a few devices have shipped (see here and here) that run Android on screens that are naturally landscape in their orientation. That is, wh... more »

Brace for the Future

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Dan Morrill, Open Source & Compatibility Program Manager. — Tim Bray]* Way back in November 2007 when Google announced Android, Andy Rubin said “We hope thousands of different phones will be powered by Android.” But now, Android’s growing beyond phones to new kinds of devices. (For instance, you might have read about the new 7” Galaxy Tab that our partners at Samsung just announced.) So, I wanted to point out a few interesting new gadgets that are coming soon running the latest versions of Android, 2.1 and 2.2. For starters, the first Android-based non-phone han... more »

Securing Android LVL Applications

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Trevor Johns, who's a Developer Programs Engineer working on Android. — Tim Bray]* The Android Market licensing service is a powerful tool for protecting your applications against unauthorized use. The License Verification Library (LVL) is a key component. A determined attacker who’s willing to disassemble and reassemble code can eventually hack around the service; but application developers can make the hackers’ task immensely more difficult, to the point where it may simply not be worth their time. Out of the box, the LVL protects against casual piracy; users ... more »

Licensing Server News

Tim Bray at Android Developers Blog - 1 year ago
It’s been reported that someone has figured out, and published, a way to hack some Android apps to bypass our new Android Market licensing server. We’ll be saying more on this, but there are a few points that deserve to be made right now: - The licensing service, while very young, is a significant step forward in terms of protection over the plain copy-protection facility that used to be the norm. In the how-to-pirate piece, its author wrote: “For now, Google’s Licensing Service is still, in my opinion, the best option for copy protection.” - The ... more »

A Little Too Popular

Tim Bray at Android Developers Blog - 1 year ago
A couple of weeks ago, we arranged that registered developers could buy an unlocked Nexus One via their publisher page in Android Market. We think it’s a good development platform and a nice phone. Apparently, you agree. Somewhat too many of you, in fact; we blew through the (substantial) initial inventory in almost no time, and they’re back-ordered from HTC, who are doing a pretty good job of managing runaway success amid a worldwide AMOLED shortage. Everyone appreciates that it’s important to the platform to get phones in the hands of developers, so we’re working hard on re-stoc... more »

Two Simple Questions

Tim Bray at Android Developers Blog - 1 year ago
And the answers to them, posted here and there by senior Android engineers. How much memory is my app using? Over at Stack Overflow, our own Dianne Hackborn takes this up in detail. There's no simple answer, but Dianne does offer lots of useful information. How do I make a ScrollView behave? This one does have a simple answer, and our Romain Guy offers it in ScrollView’s handy trick. It's easy enough to do once you know how, which is harder to find out than you might think, because there's one useful XML attribute that's there in the examples but missing in the docs. Oops!

Powering Chrome to Phone with Android Cloud to Device Messaging

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Dave Burke, who's an Engineering Manager 80% of the time. — Tim Bray]* Android Cloud to Device Messaging (C2DM) was launched recently as part of Android 2.2. C2DM enables third-party developers to push lightweight data messages to the phone. C2DM created a nice opportunity for us to pull together different Google developer tools to create a simple but useful application to enable users to push links and other information from their desktop / laptop to their phone. The result was Chrome to Phone - a 20-percent time project at Google. Chrome to Phone comprises a C... more »

Nexus One Developer Phone

Tim Bray at Android Developers Blog - 1 year ago
We've always offered unlocked phones for direct sale to registered Android Developers. As of today, the Developer Phone is the Nexus One, at a price of $529. To see the details or order a phone, you need to sign in to your Android developer account and click on the "Development Phones" link. The Nexus One combines an up-to-the-minute platform (Android 2.2), modern hardware, and the pure Android software suite. It's a good choice both for people who want to build Android applications using either the SDK or the NDK, and those who want to experiment with modified versions of the Andr... more »

Best Practices for Handling Android User Data

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Nick Kralevich, an engineer on the Android Security Team. — Tim Bray]* As the use of mobile applications grows, people are paying more attention to how these applications use their data. While the Android platform contains extensive permissions designed to protect users, application developers are ultimately responsible for how they handle users’ information. It’s important for developers to understand the code they include, and consider the permissions they request, as mishandling these issues can result in users perceiving a violation of trust. Maintaining a h... more »

Licensing Service Technology Highlights

Tim Bray at Android Developers Blog - 1 year ago
We’ve just announced the introduction of a licensing server for Android Market. This should address one of the concerns we’ve heard repeatedly from the Android developer community. The impact and intent, as outlined in the announcement, are straightforward. If you want to enable your app to use the licensing server, there’s no substitute for reading the authoritative documentation: Licensing Your Applications. Here are some technical highlights. - This capability has been in the Android Market client app since 1.5, so you don’t have to be running the latest Android f... more »

Licensing Service For Android Applications

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Eric Chu, Android Developer Ecosystem. — Tim Bray]* In my conversations with Android developers, I often hear that you’d like better protection against unauthorized use of your applications. So today, I’m pleased to announce the release of a licensing service for applications in Android Market. This simple and free service provides a secure mechanism to manage access to all Android Market paid applications targeting Android 1.5 or higher. At run time, with the inclusion of a set of libraries provided by us, your application can query the Android Market licensing... more »

Adjustment to Market Legals

Tim Bray at Android Developers Blog - 1 year ago
Please note that we have updated the Android Market Developer Distribution Agreement (DDA). This is in preparation for some work we’re doing on introducing new payment options, which we think developers will like. In the spirit of transparency, we wanted to highlight the changes: - In Section 13.1, “authorized carriers” have been added as an indemnified party. - Section 13.2 is new in its entirety, covering indemnity for payment processors for claims related to tax accrual. These new terms apply immediately to anyone joining Android Market as a new ... more »

Multithreading For Performance

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Gilles Debunne, an engineer in the Android group who loves to get multitasked. — Tim Bray]* A good practice in creating responsive applications is to make sure your main UI thread does the minimum amount of work. Any potentially long task that may hang your application should be handled in a different thread. Typical examples of such tasks are network operations, which involve unpredictable delays. Users will tolerate some pauses, especially if you provide feedback that something is in progress, but a frozen application gives them no clue. In this article, we wi... more »

Market Statistics Adjustments

Tim Bray at Android Developers Blog - 1 year ago
If you look closely today, you'll notice that some per-app Android Market statistics have lower values; not big differences, but noticeable in a few cases. We discovered last week that, starting in early June, certain events had been double-counted: installs, uninstalls, impressions, and so on. The most obvious symptom was (for paid apps) a discrepancy between the number of installs and the number of reported sales through Checkout. The underlying problem has been corrected and following data repair, the reported statistics should now be accurate. Our apologies for the glitch.

Android Market Welcomes Korea!

Tim Bray at Android Developers Blog - 1 year ago
As of today, Android Market is open for business to application buyers in the Republic of Korea. We hope that this will make the outstanding Android devices now available in that nation even more useful and fun. We welcome the people of Korea, acknowledged everywhere as one of the world's most-wired societies, to the world of Android.

How to have your (Cup)cake and eat it too

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Adam Powell, his second touchy-feely outing in just a few weeks. I asked him to send me a better picture than we ran last time, and got this in response. Photo by our own Romain Guy. — Tim Bray]* Android developers concerned with targeting every last device with their apps are no doubt familiar with this chart: On July 1, 2010 this was the breakdown of active devices running different versions of the Android platform. With all of the new platform features added to the Android SDK in each version, this chart has many developers shouting the F-word when they are fo... more »

Apps on SD Card: The Details

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Suchi Amalapurapu, an engineer who worked on this feature. — Tim Bray]* Android 2.2 supports application installation on external storage devices like the SD card. This should give users room for many more apps, and will also benefit certain categories, like games, that need huge assets. (Note that not all of the contents of an “SD-card-resident” APK are actually on the card; the dex files, private data directories, and native shared libraries remain in internal storage.) The “Manage Applications” screen in the Settings app now has an “On SD Card” tab. The sizes... more »

Android 2.2 SDK refresh

Xavier Ducrohet, Android SDK Tech Lead at Android Developers Blog - 1 year ago
As you may have noticed, the source code for Android 2.2, which we call Froyo, has been released. The Android 2.2 SDK that was released at Google I/O contained a preview of the Froyo system image and today, we are releasing an update to bring it into sync with the system image pushed to Nexus One devices. I encourage all developers to use the SDK manager to update to this version.

Android Love at OSCON

Tim Bray at Android Developers Blog - 1 year ago
Android developers who aren't already going should take a moment to check out the OSCON 2010 schedule, and give serious thought to a trip to Portland in a couple of weeks. OSCON is one of the world's premiere events for those who care about Open Source, and one of my personal favorite conferences, with a powerful community vibe. And this year, the Android drums are sounding. There are a bunch of mobile and Android-related sessions, both pure and * extremely* impure; for example, I bet both Steve Jobs and I are dubious about Cross-Compiling Android Applications to the iPhone. There'... more »

Exercising Our Remote Application Removal Feature

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Rich Cannings, Android Security Lead. — Tim Bray]* Every now and then, we remove applications from Android Market due to violations of our Android Market Developer Distribution Agreement or Content Policy. In cases where users may have installed a malicious application that poses a threat, we’ve also developed technologies and processes to remotely remove an installed application from devices. If an application is removed in this way, users will receive a notification on their phone. Recently, we became aware of two free applications built by a security researche... more »

Android Market Problem

Tim Bray at Android Developers Blog - 1 year ago
Earlier today we had a brief outage in Android Market. For a period of about thirty minutes, some users were unable to find any apps. The problem was detected and corrected, and we believe the user experience is now back to normal. We apologize for the outage.

The Froyo Code Drop

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Jean-Baptiste Queru, who moves truck-loads of source code in and out of the Googleplex. — Tim Bray]* Today is one of those days that has my heart racing; we’ve just released the source code for Android 2.2. This is a big step forward for the entire Android ecosystem. Please don’t melt the servers down again while trying to download that latest source code. This blog typically talks about developing Android applications using the SDK and NDK. However, the skills of a platform contributor aren’t fundamentally different from those of an application developer. Those ... more »

Hands-on at OSCON

Tim Bray at Android Developers Blog - 1 year ago
This year at OSCON we and O’Reilly are co-presenting Android Hands-on. The event is on the evening of Wednesday, July 21 after the Expo-hall reception. Led by Google Android experts, the Hands-on will run from 7:00 pm-10:00 pm, and will be intense, technical, and structured. The goal is that you leave the room with foundation skills for writing interesting code for an open-source stack that runs on a pocket-sized Internet-connected device. Some specific topics we’ll cover: - Porting existing C codebases to Android - Integrating Android apps with RESTful web i... more »

Future-Proofing Your App

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Reto Meier AKA @retomeier, who wrote the book on Android App development. — Tim Bray]* As a developer, I’m excited by Android’s potential as a single development platform that can make my apps available on a wide range of devices. From smartphones to televisions, Android is now being used on an increasingly diverse collection of hardware. Last year’s Android SDK 1.6 release was the first to introduce support for variations in device hardware, paving the way for devices like the HTC Tattoo — a small screen device with a non-autofocus camera. Future devices, like ... more »

Game Development for Android: A Quick Primer

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Chris Pruett, an outward-facing Androider who focuses on the world of games. — Tim Bray]* If you attended Google I/O this year, you might have noticed the large number of game developers showing off their stuff in the Android part of the Developer Sandbox. Unity, EA, Com2Us, Polarbit, Laminar Research, and several others demonstrated high-end games running on Android devices. Part of my role as a Game Developer Advocate for Android is to field requests for information about Android from game developers, and in the last six months the number of requests has gone t... more »

Download Count Problems

Tim Bray at Android Developers Blog - 1 year ago
Something is apparently wrong in the Android Market. We are getting multiple reports of erroneous download counts. The right people are aware of the situation and are working on it. *[Update, Monday morning: The fix was rolled in early Sunday and it seems as though app developers have their missing downloads back.]*

Blogging Round the World

Tim Bray at Android Developers Blog - 1 year ago
It seems that once or twice a week, I run across an Android-developer-oriented site that I hadn’t previously noticed. There are already a few aggregators and directories, and I think we’re going to need more. But for the moment, here are three pieces of bloggy Android goodness, from Florida, Odessa (Ukraine!), and Sydney. What they have in common is that I previously hadn't encountered any of them. Font Magic This is from Florida-based Jeff Vera’s Musings of the Bare Bones Coder, which, although it advertises itself as being about “Coding and managing in the .NET space”, recently ... more »

Making Sense of Multitouch

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Adam Powell, one of our more touchy-feely Android engineers. — Tim Bray]* The word “multitouch” gets thrown around quite a bit and it’s not always clear what people are referring to. For some it’s about hardware capability, for others it refers to specific gesture support in software. Whatever you decide to call it, today we’re going to look at how to make your apps and views behave nicely with multiple fingers on the screen. This post is going to be heavy on code examples. It will cover creating a custom View that responds to touch events and allows the user to ... more »

Application Visibility Issues

Tim Bray at Android Developers Blog - 1 year ago
Recently we became aware that some Android applications were not visible on the Android Market. While we were internally troubleshooting and qualifying the fix and communicating with our hardware partners, developers were trying hard to get our help through various technical support sites. Regrettably, we fell short of our own standard for customer support by not communicating the issue to our developers and how we were working to resolve it. We’re pleased to say that the issue looks to be resolved with a patch, and to our best knowledge, all apps that were previously impacted are... more »

Allowing applications to play nice(r) with each other: Handling remote control buttons

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Jean-Michel Trivi, an engineer working on the Android Media framework, whose T-shirt of the day reads “all your media buttons are belong to you”. — Tim Bray]* Many Android devices come with the Music application used to play audio files stored on the device. Some devices ship with a wired headset that features transport control buttons, so users can for instance conveniently pause and restart music playback, directly from the headset. But a user might use one application for music listening, and another for listening to podcasts, both of which should be controlle... more »

On Android Compatibility

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Dan Morrill, Open Source & Compatibility Program Manager. — Tim Bray]* At Google I/O 2010, we announced that there are over 60 Android models now, selling 100,000 units a day. When I wear my open-source hat, this is exciting: every day the equivalent of the entire population of my old home city starts using open-source software, possibly for the first time. When I put on my hat for Android Compatibility, this is humbling: that’s a whole lotta phones that can all share the same apps. Another thing we launched at Google I/O was an upgraded and expanded source.andr... more »

Android Cloud To Device Messaging

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Wei Huang, who helped implement this feature. — Tim Bray]* In the just-launched Android 2.2, we’ve added a new service to help developers send data from servers to their applications on Android phones. Android Cloud to Device Messaging (C2DM) makes it easier for mobile applications to sync data with servers. Most of the useful applications on your mobile phone use the Internet to keep users connected. Traditionally, many apps use polling to fetch data periodically. POP mail clients, for example, connect to the server every 15 minutes or so. Polling is fairly easy... more »

Dalvik JIT

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Dan Bornstein, virtual-machine wrangler. — Tim Bray]* As the tech lead for the Dalvik team within the Android project, I spend my time working on the virtual machine (VM) and core class libraries that sit beneath the Android application framework. This layer is mostly invisible to end users, but done right, it helps make Android devices run smoothly and improves developer productivity. The 2.2 release is particularly pleasing to me, as it is the first release since before 1.0 in which we have been able to deliver significantly new VM technology. And unlike much o... more »

Android Application Error Reports

Tim Bray at Android Developers Blog - 1 year ago
*[This post, the first in a series about new features in Android 2.2 ("Froyo"), is by Jacek Surazski, a Googler from our Krakow office. — Tim Bray]* The upcoming release of Android will include a new bug reporting feature for Market apps. Developers will receive crash and freeze reports from their users. The reports will be available when they log into their Android Market publisher account. No more blind debugging! When an app freezes or stops responding, the user can send a bug report to the developer with a click of a button, right from their phone. The new button appears in t... more »

The Google TV Story

Tim Bray at Android Developers Blog - 1 year ago
Vincent Dureau, who’s in charge of Google TV, is a lean, bony-faced man with a strong French accent; not too far off my own age, I’d say. With the announcement imminent, he’s been too busy to write; I'm reporting on my talk with him to give a feel for the thinking behind the project. You’ll notice an absence of quotation marks; Vincent’s half of the conversation is reconstructed from the combination of my memory and notes. I think it’s accurate in essence, but certainly not in detail; among other things I can’t write with a French accent. *On why Google TV is needed: * Even two ... more »

Android 2.2 and developers goodies.

Xavier Ducrohet, Android SDK Tech Lead at Android Developers Blog - 1 year ago
Today at Google I/O we announced that Android 2.2 is right around the corner. This is our seventh platform release since we launched Android 1.0 in September 2008. We wanted to highlight five areas in particular: *Performance & speed:* The new Dalvik JIT compiler in Android 2.2 delivers between a 2-5X performance improvement in CPU-bound code vs. Android 2.1 according to various benchmarks. *New enterprise capabilities:* We’ve added Exchange capabilities such as account auto-discovery and calendar sync. Device policy management APIs allow developers to write applications that can ... more »

Latitude API Launch

Tim Bray at Android Developers Blog - 1 year ago
Over at the Google Code Blog, there's a pretty significant announcement, about the release of APIs for Latitude. the idea, as you might expect, is that the best way to get good location-based applications is to put the tools for building them into everyone's hands. A glance at the online documentation reveals an essentially-RESTFul API with JSON payloads, which should be easy to use from an Android app. It seems likely that a device which knows its location is a really good platform for building location-sensitive apps.

Stand By...

Tim Bray at Android Developers Blog - 1 year ago
I'm posting this from Moscone West, the site of Google I/O 2010. Some things that it may be useful to know: - The official hash tag is #io2010 - The keynotes will be live-blogged all over the place (thus, not here) and also live-streamed on YouTube. - If you're mad because you couldn't get a ticket, we're sorry, but you're not alone. We have filled Moscone West to the very absolute splitting-at-the-seams max. There are a ton of Googlers who couldn't get in. [image: Roman Nurik speaks at the Google I/O 2010 Bootcamp] Things have already s... more »

Twitter for Android: A closer look at Android’s evolving UI patterns

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Chris Nesladek, Interaction Designer, Richard Fulcher, Interaction Designer, and Virgil Dobjanschi, Software Engineer — Tim Bray]* Along with our regular updates of the Android platform, we like to build example applications that showcase best practices for UI features and behavior patterns, to help our 3rd party developers create even richer applications. For example, the Twitter for Android application that we worked with Twitter to design gives you, the 3rd party developer, a working example of how you can customize and build an application that’s both fun and... more »

Be Careful With Content Providers

Tim Bray at Android Developers Blog - 1 year ago
The notion of a Content Provider is central to getting things done in an Android application. This is the mechanism used to expose many of a device's data resources for retrieval and update: Contacts, media store, bookmarks, phone-call log, and so on. It’s hard to find an interesting Android app that doesn’t either use or implement (or both) a Content Provider. There’s nothing magical or terribly surprising about Content Providers - you address them by Url, query them with SQL, and iterate them with a Cursor. They do what they say they do and get out of the way and they’re easy to... more »

Taking the Android Show on the Road

Tim Bray at Android Developers Blog - 1 year ago
*[This spring, the Android Developer Relations team (where I work, too) went on the road round the world with boxes of phones, their laptops bulging with slide-ware. Here we’ve combined write-ups from Billy Rutledge (who leads the Android evangelism team at Google HQ) and Reto Meier, who has a desk in London and wrote the book on Android. Featuring Europe is a little unfair, there are a ton of stories from Asia and North America too, but we wanted to keep this reasonably short. - Tim Bray]* Introduction Billy: The Android Developer Lab (ADL) events are sponsored by Google to help ... more »

Multitasking the Android Way

Tim Bray at Android Developers Blog - 1 year ago
*[This post is by Dianne Hackborn, a Software Engineer who sits very near the exact center of everything Android. — Tim Bray]* Android is fairly unique in the ways it allows multiple applications to run at the same time. Developers coming from a different platform may find the way it operates surprising. Understanding its behavior is important for designing applications that will work well and integrate seamlessly with the rest of the Android platform. This article covers the reasons for Android's multitasking design, its impact on how applications work, and how you can best take ... more »

More Blogginess

Tim Bray at Android Developers Blog - 1 year ago
Hello everyone, and welcome to a rare (in this space) blog about blogging. My name is Tim Bray, and I’m the new editor of this Android Developers’ Blog. I am only a student of Android, but I’m a veteran blogger, I’m part of the Android team, and they’ve given me a pretty free hand to find and publish the interesting stories. I’m expecting to enjoy this and hope you will too. The work on Android is done at various places around the world, but in Mountain View, California there’s a building on the Google campus with an Android statue in front of it, positioned among dessert-themed s... more »

Android NDK r3

David Turner at Android Developers Blog - 1 year ago
The third release of the Android Native Development Kit (NDK) is now available for download from the Android developer site. It can be used to target devices running Android 1.5 and higher. In addition to a few bug fixes and improvements, this release includes the following new features: Toolchain improvement The toolchain binaries have been refreshed for this release with GCC 4.4.0, which should generate slightly more compact and efficient machine code than the previous one (4.2.1). Note that the GCC 4.4.0 C++ frontend is more pedantic, and may refuse to compile certain *rare* a... more »

Speech Input API for Android

Alex Gruenstein at Android Developers Blog - 1 year ago
People love their mobile phones because they can stay in touch wherever they are. That means not just talking, but e-mailing, texting, microblogging, and so on. So, in addition to search by voice and voice shortcuts like "Navigate to", we included a voice-enabled keyboard in Android 2.1, which makes it even easier to stay connected. Now you can dictate your message instead of typing it. Just tap the new microphone button on the keyboard, and you can speak just about anywhere you would normally type. We believe speech can fundamentally change the mobile experience. We would like t... more »

Android at the Game Developer's Conference

Chris Pruett at Android Developers Blog - 1 year ago
Tuesday, March 9 marks the start of the 2010 Game Developers Conference in San Francisco, and Android will be there! There has been a lot of interest about Android from the game development community, and our presence at GDC is intended to provide developers everything they need to get started with the platform. We are hosting several technical sessions and participating in two industry panels. We also want to meet you and answer your questions about Android game development, so we've set aside time for "office hours." Android team engineers will be on-hand to answer your question... more »

Service API changes starting with Android 2.0

Dianne Hackborn at Android Developers Blog - 1 year ago
*Service API changes starting with Android 2.0* Watching developers use the Android platform the last year has shown a number of trouble areas in the Service API as well as growing issues in the ways services operate. As a result, Android 2.0 introduced a number of changes and improvements in this area for both developers and users. The three main changes to be aware of are: - Service.setForeground() is now deprecated and in 2.0 does nothing. - There were many edge cases in the service lifecycle that made it very easy to accidentally leave a service running; new APIs in 2... more »

Live wallpapers

Romain Guy at Android Developers Blog - 2 years ago
With the introduction of live wallpapers in Android 2.1, users can now enjoy richer, animated, interactive backgrounds on their home screen. A live wallpaper is very similar to a normal Android application and has access to all the facilities of the platform: SGL (2D drawing), OpenGL (3D drawing), GPS, accelerometers, network access, etc. The live wallpapers included on Nexus One demonstrate the use of some of these APIs to create fun and interesting user experiences. For instance, the Grass wallpaper uses the phone's location to compute sunrise and sunset times in order to displa... more »

Android at Mobile World Congress

Eric Chu, Android Mobile Platform at Android Developers Blog - 2 years ago
I'm happy to announce that we'll be hosting a very special Android Developer Lab at Mobile World Congress (MWC) in Barcelona on Wednesday, February 17th as part of the inaugural App Planet event. There will be technical presentations throughout the day and a developer lounge where you can talk to Android team members and meet others in the growing Android developer community. Whether you’re already developing Android apps, you're an experienced mobile developer, or you’re considering making your first foray into writing mobile applications, the Android Developer Lab will provide ac... more »

Android Developer Labs World Tour

Reto Meier at Android Developers Blog - 2 years ago
Late last year, we held a series of developer labs to give you a chance to ask questions and play with some new hardware. One of the most common questions we received was, "When are you going to visit my city?" It's a good question, and we're pleased to answer it today. The Android team is embarking on a world tour, which will include cities in Europe, North America, and Asia. At each stop, we'll be delivering an update on the state of the Android platform—including a look at the latest Android hardware. It's a great opportunity to meet like-minded Android app developers, play wi... more »

Android at the 2010 Game Developers Conference

Eric Chu, Android Mobile Platform at Android Developers Blog - 2 years ago
2009 has been a great year for Android Market. With the support of developers like you, Android Market now has more than 20,000 applications. Of these applications, games have proven to be particularly popular with Android users. Seven of the ten most popular paid applications on Android Market are games, so there's a significant opportunity for game developers as the number of Android devices continues to grow at a rapid pace. To better support this trend, we are increasing our support of Android game development. As a first step, we will be presenting a number of Android session... more »

IRC office hours update

Megha Joshi at Android Developers Blog - 2 years ago
You may recall that we announced IRC Office Hours for Android app developers back in December. We just want to provide a quick update that upcoming office hours will be held on Thursdays from 5 p.m. to 6 p.m. PST, instead of twice weekly. These will be held in the #android-dev channel on irc.freenode.net as before. Please post your questions on Stack Overflow with "from-irc" tag in addition to "android" tag one day before office hours. We will follow up on those specific questions during office hours, and will also post answers after. We hope to see you there!

Android 2.1 SDK

Xavier Ducrohet, Android SDK Tech Lead at Android Developers Blog - 2 years ago
Today, we are releasing the SDK component for Android 2.1, so that developers can take advantage of the new features introduced in Android 2.1. Please read the Android 2.1 release notes for more details. You can download the Android 2.1 component through the SDK Manager. In addition to the new SDK, a new USB driver that supports Nexus One is also available today through the SDK Manager. The USB driver page contains more information.

Hello, Stack Overflow!

Roman Nurik, Android Developer Relations at Android Developers Blog - 2 years ago
Over the past year, an Android presence has been growing on a relatively new technical Q&A web site called Stack Overflow. The site was designed specifically for programmers, with features like syntax highlighting, tagging, user reputation, and community editing. It's attracted a loyal software developer community, and developers continue to express great praise for this new tool. Well, the Android team has been listening...and we agree. Today, I'm happy to announce that we're working with Stack Overflow to improve developer support, especially for developers new to Android. In e... more »

Back and other hard keys: three stories

Dianne Hackborn at Android Developers Blog - 2 years ago
Android 2.0 introduces new behavior and support for handling hard keys such as BACK and MENU, including some special features to support the virtual hard keys that are appearing on recent devices such as Droid. This article will give you three stories on these changes: from the most simple to the gory details. Pick the one you prefer. Story 1: Making things easier for developers If you were to survey the base applications in the Android platform, you would notice a fairly common pattern: add a little bit of magic to intercept the BACK key and do something different. To do this righ... more »

New resources and sample code on developer.android.com

Roman Nurik, Android Developer Relations at Android Developers Blog - 2 years ago
Hey Android developers—if you've visited the online Android SDK documentation recently, you may have noticed a few changes. That's right, there's a new Resources tab, which was designed to take some of the load off the Developer's Guide. We've moved a number of existing resources to the Resources tab, including tutorials, sample code, and FAQs. We've also formalized a few of our most popular developer blog posts into technical articles; watch for more of these to appear in the future. In addition, we just released a new batch of sample code, available now as a ZIP file download on... more »

Knowing is half the battle

Raphaël Moll at Android Developers Blog - 2 years ago
As a developer, I often wonder which Android platforms my applications should support,especially as the number of Android-powered devices grows. Should my application only focus on the latest version of the platform or should it support older ones as well? To help with this kind of decision, I am excited to announce the new device dashboard. It provides information about deployed Android-powered devices that is helpful to developers as they build and update their apps. The dashboard provides the relative distribution of Android platform versions on devices running Android Market. ... more »

Come to Our Virtual Office Hours

Reto Meier at Android Developers Blog - 2 years ago
Starting this week, we're going to be holding regular IRC office hours for Android app developers in the #android-dev channel on irc.freenode.net. Members of the Android team will be on hand to answer your technical questions. (Note that we will not be able to provide customer support for the phones themselves.) We've arranged our office hours to accommodate as many different schedules as possible, for folks around the world. We will initially hold two sessions each week: - 12/15/09 Tuesday, 9 a.m. to 10 a.m. PST - 12/17/09, Thursday 5 p.m. to 6 p.m. PST - 12/22/09, Tuesd... more »

Optimize your layouts

Romain Guy at Android Developers Blog - 2 years ago
Writing user interface layouts for Android applications is easy, but it can sometimes be difficult to optimize them. Most often, heavy modifications made to existing XML layouts, like shuffling views around or changing the type of a container, lead to inefficiencies that go unnoticed. Starting with the SDK Tools Revision 3 you can use a tool called layoutoptto automatically detect common problems. This tool is currently only available from the command line and its use is very simple - just open a terminal and launch the layoutopt command with a list of directories or XML files to ana... more »

Android SDK Updates

Xavier Ducrohet, Android SDK Tech Lead at Android Developers Blog - 2 years ago
Today we are releasing updates to multiple components of the Android SDK: - Android 2.0.1, revision 1 - Android 1.6, revision 2 - SDK Tools, revision 4 Android 2.0.1 is a minor update to Android 2.0. This update includes several bug fixes and behavior changes, such as application resource selection based on API level and changes to the value of some Bluetooth-related constants. For more detailed information, please see the Android 2.0.1 release notes. To differentiate its behavior from Android 2.0, the API level of Android 2.0.1 is 6. All Android 2.0 devices will be updat... more »

Announcing the Winners of ADC 2

Eric Chu, Android Mobile Platform at Android Developers Blog - 2 years ago
Back in May at Google I/O, we announced ADC 2 -- the second Android Developer Challenge -- to encourage the development of cool apps that delight mobile users. We received many interesting and high-quality applications -- everything from exciting arcade games to nifty productivity utilities. We also saw apps that took advantage of openness of Android to enhance system behavior at a deep level to provide users with a greater degree of customization and utility. We were particularly pleased to see submissions from many smaller and independent developers. Over the last couple of mont... more »

ADC 2 Public Judging is now closed

Eric Chu, Android Mobile Platform at Android Developers Blog - 2 years ago
Thanks to tens of thousands of Android users around the world who participated in the review of ADC 2 finalist applications, we have now collected sufficient scores to complete Round 2 of public judging. We are reviewing the final results and will announce the top winners this coming Monday, November 30. Thanks to all who've participated in ADC 2 and good luck to all the finalists.

Integrating Application with Intents

Justin Mattson at Android Developers Blog - 2 years ago
*Written in collaboration with Michael Burton, Mob.ly; Ivan Mitrovic, uLocate; and Josh Garnier, OpenTable.* OpenTable, uLocate, and Mob.ly worked together to create a great user experience on Android. We saw an opportunity to enable WHERE and GoodFood users to make reservations on OpenTable easily and seamlessly. This is a situation where everyone wins — OpenTable gets more traffic, WHERE and GoodFood gain functionality to make their applications stickier, and users benefit because they can make reservations with only a few taps of a finger. We were able to achieve this deep inte... more »

ADC 2 Round 2 Voting Open

Eric Chu, Android Mobile Platform at Android Developers Blog - 2 years ago
The results from ADC 2 Round 1 are now tabulated and verified. With the top 200 applications identified, it's time to begin the final round judging. Be sure to download the ADC 2 judging application, or update your existing application, and help us select the final winners! For the final round, both users and a Google-selected panel of industry judges will provide votes to determine the final winners. Prizes will be distributed to the top 3 entrants in each of the 10 categories, and the top 3 overall entrants will receive additional prizes. Please see our reference page for full c... more »

Bring Your Lab Coats

Eric Chu, Android Mobile Platform at Android Developers Blog - 2 years ago
With the recent release of Android 2.0 and the growing number of available devices, we want to give developers a convenient way to test drive their apps on these new devices. We also want to make our Android advocates available to answer any questions you may have. We are pleased to announce that we will host a series of all day Android developer labs over the next month in the following cities (dates in local time): - Mountain View, CA - Nov 9 - New York, NY - Nov 16 - London, UK - Nov 17 - Tokyo, JP - Nov 18 - Taipei, TW - Nov 20 Due to limited space, developers w... more »

Announcing Android 2.0 support in the SDK!

Xavier Ducrohet, Android SDK Tech Lead at Android Developers Blog - 2 years ago
I am excited to announce that the Android SDK now supports Android 2.0 (also known as Eclair). Android 2.0 brings new developer APIs for sync, Bluetooth, and a few other areas. Using the new sync, account manager and contacts APIs, you can write applications to enable users to sync their devices to various contact sources. You can also give users a faster way to communicate with others by embedding Quick Contact within your application. With the new Bluetooth API, you can now easily add peer-to-peer connectivity or gaming to your applications. To get a more complete list of the ne... more »

UI framework changes in Android 1.6

Romain Guy at Android Developers Blog - 2 years ago
Android 1.6 introduces numerous enhancements and bug fixes in the UI framework. Today, I'd like to highlight three two improvements in particular. Optimized drawing The UI toolkit introduced in Android 1.6 is aware of which views are opaque and can use this information to avoid drawing views that the user will not be able to see. Before Android 1.6, the UI toolkit would sometimes perform unnecessary operations by drawing a window background when it was obscured by a full-screen opaque view. A workaround was available to avoid this, but the technique was limited and required work o... more »

Support for additional screen resolutions and densities in Android

Romain Guy at Android Developers Blog - 2 years ago
You may have heard that one of the key changes introduced in Android 1.6 is support for new screen sizes. This is one of the things that has me very excited about Android 1.6 since it means Android will start becoming available on so many more devices. However, as a developer, I know this also means a bit of additional work. That's why we've spent quite a bit of time making it as easy as possible for you to update your apps to work on these new screen sizes. To date, all Android devices (such as the T-Mobile G1 and Samsung I7500, among others) have had HVGA (320x480) screens. The ... more »

ADC 2 Round 1 Scoring Complete

Eric Chu, Android Mobile Platform at Android Developers Blog - 2 years ago
[image: ADC 2 icon] The response to round one of the Android Developer Challenge 2 has been phenomenal! We originally expected that it would take two weeks to get all the necessary data to complete scoring. Over the last 10 days, more than 26,000 Android users reviewed and submitted our target of over 100 scores per application. With this enthusiastic support of the Android community, we are closing the first round of ADC 2 judging today. We will now be reviewing the results and preparing for round 2. Please stay tuned for information about round 2, where the community, combined wit... more »

Gestures on Android 1.6

Romain Guy at Android Developers Blog - 2 years ago
Touch screens are a great way to interact with applications on mobile devices. With a touch screen, users can easily tap, drag, fling, or slide to quickly perform actions in their favorite applications. But it's not always that easy for developers. With Android, it's easy to recognize simple actions, like a swipe, but it's much more difficult to handle complicated gestures, which also require developers to write a lot of code. That's why we have decided to introduce a new gestures API in Android 1.6. This API, located in the new package android.gesture, lets you store, load, draw ... more »

Now available: Android 1.6 NDK

David Turner at Android Developers Blog - 2 years ago
Today Android 1.6 NDK, release 1 is available for download from the Android developer site. To recap, the NDK is a companion to the SDK that provides tools to generate and embed native ARM machine code within your application packages. This native code has the same restrictions as the VM code, but can execute certain operations much more rapidly. This is useful if you're doing heavy computations, digital processing, or even porting existing code bases written in C or C++. If you already use the Android 1.5 NDK, upgrading to this release is highly recommended. It provides the foll... more »

Zipalign: an easy optimization

Jean-Baptiste Queru, Android Open-Source Project at Android Developers Blog - 2 years ago
The Android 1.6 SDK includes a tool called zipalign that optimizes the way an application is packaged. Doing this enables Android to interact with your application more efficiently and thus has the potential to make your application and the overall system run faster. We strongly encourage you to use zipalign on both new and already published applications and to make the optimized version available—even if your application targets a previous version of Android. We'll get into more detail on what zipalign does, how to use it, and why you'll want to do so in the rest of this post. In... more »

A Note on Google Apps for Android

Dan Morrill at Android Developers Blog - 2 years ago
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'... more »

ADC 2 Judging Has Begun!

Eric Chu, Android Mobile Platform at Android Developers Blog - 2 years ago
[image: ADC 2 App Logo][image: ADC 2 Judging App Screenshot]I am happy to announce that Android Developer Challenge 2's first round of judging has begun! As a reminder, user voting determines which apps will make it to the second round. Voting will occur through an application called *Android Developer Challenge 2*, which is now available for download from Android Market. *Android Developer Challenge 2* presents apps for each user to download and score according to a set of criteria, such as originality and effective use of the Android platform, among others. The first round of ju... more »

An introduction to Text-To-Speech in Android

Jean-Michel Trivi at Android Developers Blog - 2 years ago
We've introduced a new feature in version 1.6 of the Android platform: Text-To-Speech (TTS). Also known as "speech synthesis", TTS enables your Android device to "speak" text of different languages. Before we explain how to use the TTS API itself, let's first review a few aspects of the engine that will be important to your TTS-enabled application. We will then show how to make your Android application talk and how to configure the way it speaks. Languages and resourcesAbout the TTS resources The TTS engine that ships with the Android platform supports a number of languages: Engli... more »

Introducing Quick Search Box for Android

Mike LeBeau and Karl Rosaen at Android Developers Blog - 2 years ago
One of the new features we're really proud of in the Android 1.6 release is Quick Search Box for Android. This is our new system-wide search framework, which makes it possible for users to quickly and easily find what they're looking for, both on their devices and on the web. It suggests content on your device as you type, like apps, contacts, browser history, and music. It also offers results from the web search suggestions, local business listings, and other info from Google, such as stock quotes, weather, and flight status. All of this is available right from the home screen, by... more »

Android 1.6 SDK is here

Xavier Ducrohet, Android SDK Tech Lead at Android Developers Blog - 2 years ago
I am happy to let you know that Android 1.6 SDK is available for download. Android 1.6, which is based on the donut branch from the Android Open Source Project, introduces a number of new features and technologies. With support for CDMA and additional screen sizes, your apps can be deployed on even more mobile networks and devices. You will have access to new technologies, including framework-level support for additional screen resolutions, like QVGA and WVGA, new telephony APIs to support CDMA, gesture APIs, a text-to-speech engine, and the ability to integrate with Quick Search ... more »

Some News from Android Market

Eric Chu, Android Mobile Platform at Android Developers Blog - 2 years ago
I'm pleased to let you know about several updates to Android Market. First, we will soon introduce new features in Android Market for Android 1.6 that will improve the overall experience for users. As part of this change, developers will be able to provide screenshots, promotional icons and descriptions that will better show off applications and games. We have also added four new sub-categories for applications: sports, health, themes, and comics. Developers can now choose these sub-categories for both new and existing applications via the publisher website. Finally, we have added... more »

ADC2 Submissions Closing Monday!

David McLaughlin at Android Developers Blog - 2 years ago
Don't forget to submit your ADC2 apps by midnight PST on Monday, August 31! Remember that this is Pacific time in the US (GMT - 7) so be sure to convert the deadline into your local timezone. Also, even if you've already submitted your apps, please double check and make sure that your app is in the "Submitted" state in the UI! If it says "Unsubmitted", it will NOT be considered as an entry.

Android Developer Challenge 2 open for submissions

Eric Chu, Android Mobile Platform at Android Developers Blog - 2 years ago
[image: Android Developer Challenge]The time has come! The submission site for Android Developer Challenge 2 is now open. You can now submit applications for the Challenge at http://market.android.com/adc. Full instructions are also available on the site. The key thing to remember is that all submissions must be entered by 11:59:59pm Pacific Time in the United States on August 31, 2009. If your applications are not submitted by that time, they won't be eligible for participation. Please carefully note what time that is in your local time zone. It's very important that your apps o... more »

ADC 2 Updates

Eric Chu, Android Mobile Platform at Android Developers Blog - 2 years ago
Since the announcement of Android Developer Challenge 2 in May, Android phones continue to be deployed in countries worldwide. Android phones are currently available in over 20 countries, with more on the way. As I've mentioned earlier, we'll be including real-world users of these phones to help review and score your submissions. It is important to remember that your apps will be reviewed by judges around the world on actual devices; thus, be sure to make it extremely easy for users/judges to access your apps with minimum setup. Some of you have been asking for clarifications on ... more »

Introducing Android 1.5 NDK, Release 1

David Turner at Android Developers Blog - 2 years ago
Many of you have been asking for the ability to call into native code from your Android applications. I'm glad to announce that developers can now download the Android Native Development Kit from the Android developer site. As you know, Android applications run in the Dalvik virtual machine. The NDK allows developers to implement parts of these applications using native-code languages such as C and C++. This can provide benefits to certain kinds of applications. The NDK provides: - a set of tools and build files used to generate native code libraries from C and C++ sources ... more »

Activities and Tasks Design Guidelines

Doug Kramer at Android Developers Blog - 2 years ago
For our third post in the series of Android UI, we're releasing Activity and Task Design Guidelines. This section of our guidelines aims to help you understand basic concepts of activities and tasks, how they work, and how to enrich the user experience you are creating. We've packed a lot into this section, which is targeted at designers and developers. You'll see examples that will illustrate how to use our core principles and mechanisms, such as multitasking, activity reuse, intents, and the back stack. Additionally, we are providing some best practices around our UI patterns s... more »

Calling all developers for Android Developer Challenge 2!

Eric Chu, Android Mobile Platform at Android Developers Blog - 2 years ago
I'm excited to announce the second Android Developer Challenge (ADC)! The first challenge was a huge success with over 1,700 entries that resulted in 50 excellent winners. With the recent release of Android 1.5, as well as the availability of devices in multiple markets around the world, I'm pleased to announce the second ADC. We've expanded ADC 2 to involve a very important part of the Android community—the users who will be running these applications. Users of Android-powered devices with Android Market will be able to download a special Android judging application and use it to... more »

Android Icon Guidelines

Chris Nesladek at Android Developers Blog - 2 years ago
For our second post in our series on Android UI, we're releasing our Icon Design Guidelines and an Android Icon Templates Pack. These should make it a lot easier for you (or your designer) to develop all the icons your applications need, so they fit with the other icons in the Android environment. The Icon Design Guidelines document describes how to design and export icons that fit within the Android framework. It includes a wealth of detail about icons in the Home screen, menus, the status bar, tabs, dialogs, and lists. The Android Icon Templates Pack is a collection of template... more »

Lightning talks at Google I/O

James Yum at Android Developers Blog - 2 years ago
Google I/O is approaching, and with over ten quality talks lined up, we should all strive to be attentive, avid learners. But for the last Android session of the conference, we thought it would be fun to unwind and open up the podium for lightning talks. This is where anyone can take the stage for six minutes and talk about anything. If you've done a cool hack involving Android, if you've devised a clever technique for a common problem, or even if you just want to get up on your soapbox for six minutes to appeal to your fellow developers, this is your time to be heard. For those p... more »

Painless threading

Romain Guy at Android Developers Blog - 2 years ago
Whenever you first start an Android application, a thread called "main" is automatically created. The main thread, also called the UI thread, is very important because it is in charge of dispatching the events to the appropriate widgets and this includes the drawing events. It is also the thread you interact with Android widgets on. For instance, if you touch the a button on screen, the UI thread dispatches the touch event to the widget which in turn sets its pressed state and posts an invalidate request to the event queue. The UI thread dequeues the request and notifies the widget... more »

Drawable mutations

Romain Guy at Android Developers Blog - 2 years ago
Android's drawables are extremely useful to easily build applications. A Drawable is a pluggable drawing container that is usually associated with a View. For instance, a BitmapDrawable is used to display images, a ShapeDrawable to draw shapes and gradients, etc. You can even combine them to create complex renderings. Drawables allow you to easily customize the rendering of the widgets without subclassing them. As a matter of fact, they are so convenient that most of the default Android apps and widgets are built using drawables; there are about 700 drawables used in the core Andr... more »

Widget Design Guidelines

Chris Nesladek at Android Developers Blog - 2 years ago
Since the beginning of the year, the Android UI team has been hard at work on the Android 1.5 release. Starting today with widgets, we would like to share some of our evolving Android design principles with you. Widgets are a new feature that application developers can use to promote a small sample of the most relevant dynamic data from their applications on the Home screen. We've designed widgets to fit within our Home screen grid framework, which means you and your designer can create a widget within a 4x1, 3x3, or 2x2 grid cell, depending on the space you need for an at-a-glanc... more »

Backward compatibility for Android applications

Andy McFadden at Android Developers Blog - 2 years ago
Android 1.5 introduced a number of new features that application developers can take advantage of, like virtual input devices and speech recognition. As a developer, you need to be aware of backward compatibility issues on older devices—do you want to allow your application to run on all devices, or just those running newer software? In some cases it will be useful to employ the newer APIs on devices that support them, while continuing to support older devices. If the use of a new API is integral to the program—perhaps you need to record video—you should add a manifest entry to en... more »

Android 1.5 at Google I/O

Dan Morrill at Android Developers Blog - 2 years ago
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, to my mind, is the technical content. We have 9 sessions listed now on the Google I/O sessions site, 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... more »

Android 1.5 is here!

Xavier Ducrohet, Android SDK Tech Lead at Android Developers Blog - 2 years ago
I've got some good news today: the Android 1.5 SDK, release 1 is ready! Grab it from the download page. For an overview of the new Android 1.5 features, see the 1.5 release notes page in our developer site. I am also happy to let you know that our partners at HTC have made available new system images to upgrade your Android Dev Phone 1 (ADP1) to Android 1.5. This new version (which is only available for the ADP1) is based on the Cupcake branch from the Android Open Source Project and corresponds to the system image of the Android 1.5 SDK, release 1. If you have questions about th... more »

Introducing GLSurfaceView

Jack Palevich at Android Developers Blog - 2 years ago
GLSurfaceView is a new API class in Android 1.5. GLSurfaceView makes OpenGL ES applications easier to write by: - Providing the glue code to connect OpenGL ES to the View system. - Providing the glue code to make OpenGL ES work with the Activitylife-cycle. - Making it easy to choose an appropriate frame buffer pixel format. - Creating and managing a separate rendering thread to enable smooth animation. - Providing easy-to-use debugging tools for tracing OpenGL ES API calls and checking for errors. GLSurfaceView is a good base for building an application that uses... more »

Live folders

Romain Guy at Android Developers Blog - 2 years ago
Live folders have been introduced in Android 1.5 and let you display any source of data on the Home screen without forcing the user to launch an application. A live folder is simply a real-time view of a ContentProvider. As such, a live folder can be used to display all your contacts, your bookmarks, your email, your playlists, an RSS feed, etc. The possibilities are endless! Android 1.5 ships with a few stock live folders to display your contacts. For instance, the screenshot below shows the content of the live folders that displays all my contacts with a phone number: If a conta... more »

Future-Proofing Your Apps

Dan Morrill at Android Developers Blog - 2 years ago
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 before you can start taking advantage of Android 1.5. 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 b... more »

Creating an Input Method

Amith Yamasani at Android Developers Blog - 2 years ago
To create an input method (IME) for entering text into text fields and other Views, you need to extend android.inputmethodservice.InputMethodService. This API provides much of the basic implementation for an input method, in terms of managing the state and visibility of the input method and communicating with the currently visible activity. A good starting point would be the SoftKeyboard sample code provided as part of the SDK. Modify this code to start building your own input method. An input method is packaged like any other application or service. In the AndroidManifest.xml fi... more »

Updating Applications for On-screen Input Methods

Dianne Hackborn at Android Developers Blog - 2 years ago
One of the major new features we are introducing in Android 1.5 is our Input Method Framework (IMF), which allows developers on-screen input methods such as software keyboards. This article will provide an overview of what Android input method editors (IMEs) are, and what an application developer needs to do to work well with them. The IMF allows for a new class of Android devices, such as those without a hardware keyboard, so it is important that your application work well with it to provide the users of such devices a great experience. What is an input method? The Android IMF is... more »

Introducing home screen widgets and the AppWidget framework

Jeff Sharkey at Android Developers Blog - 2 years ago
One exciting new feature in the Android 1.5 SDK is the AppWidget framework which allows developers to write "widgets" that people can drop onto their home screen and interact with. Widgets can provide a quick glimpse into full-featured apps, such as showing upcoming calendar events, or viewing details about a song playing in the background. When widgets are dropped onto the home screen, they are given a reserved space to display custom content provided by your app. Users can also interact with your app through the widget, for example pausing or switching music tracks. If you have ... more »

UI framework changes in Android 1.5

Romain Guy at Android Developers Blog - 2 years ago
On Monday, we released an early look at the Android 1.5 SDK. Not only does this platform update contain numerous new features, APIs, and bug fixes, but Android 1.5 also brings a new default look for the Android UI framework. After Android 1.0 and 1.1, our designers worked hard to refine and polish the appearance of the system. The screenshots below show the same activity (creating a new contact) on Android 1.1 and Android 1.5: You can see in this example that the buttons and checkboxes have a new appearance. Even though these changes do not affect binary nor source compatibility, ... more »

Getting ready for Android 1.5

Xavier Ducrohet, Android SDK Tech Lead at Android Developers Blog - 2 years ago
[image: Android 1.5 SDK release!]I'm excited to announce that starting today, developers can get an early look at the SDK for the next version of the Android platform. This new version (which will be 1.5) is based on the cupcake branch from the Android Open Source Project. Version 1.5 introduces APIs for features such as soft keyboards, home screen widgets, live folders, and speech recognition. At the developer site, you can download the early-look Android 1.5 SDK, read important information about upgrading your Eclipse plugin and existing projects, and learn about what's new and ... more »

Developer News

Dan Morrill at Android Developers Blog - 2 years ago
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 2009 Google I/O developer conference. 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 full list plus abstracts on the Google I/O site, but here are the titles: - Turbo-Charge Your UI: How to Make You... more »

Android Layout Tricks #3: Optimize with stubs

Romain Guy at Android Developers Blog - 2 years ago
Sharing and reusing layouts is very easy with Android thanks to the tag, sometimes even too easy and you might end up with user interfaces that contain a large number of views, some of which are rarely used. Thankfully, Android offers a very special widget called ViewStub, which brings you all the benefits of the without polluting your user interface with rarely used views. A ViewStub is a dumb and lightweight view. It has no dimension, it does not draw anything and does not participate in the layout in any way. This means a ViewStub is very cheap to inflat... more »

Software Update Available for the Android Developer Phone

Dan Morrill at Android Developers Blog - 2 years ago
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 many developers will be pleased to hear that today, our colleagues at HTC have released a 1.1 version of Android for the Android Dev Phone which you can install on your device. If you have questions about the process of updating your device, you can ask the mailing list we've set up for such questions. This new system image is fully com... more »

Window Backgrounds & UI Speed

Romain Guy at Android Developers Blog - 2 years ago
Some Android applications require to squeeze every bit of performance out of the UI toolkit and there are many ways to do so. In this article, you will discover how to speed up the drawing and the *perceived* startup time of your activities. Both these techniques rely on a single feature, the window's background drawable. The term *window background* is a bit misleading however. When you setup your user interface by calling setContentView() on an Activity, Android adds your views to the Activity's window. The window however does not contain only your views, but a few others create... more »

Android Layout Tricks #3: Optimize by merging

Romain Guy at Android Developers Blog - 2 years ago
In the previous installment of *Android Layout Tricks*, I showed you how to use the tag in XML layout to reuse and share your layout code. I also mentioned the and it's now time to learn how to use it. The was created for the purpose of optimizing Android layouts by reducing the number of levels in view trees. It's easier to understand the problem this tag solves by looking at an example. The following XML layout declares a layout that shows an image with its title on top of it. The structure is fairly simple; a FrameLayout is used to stack a TextVie... more »

Android Layout Tricks #2: Reusing layouts

Romain Guy at Android Developers Blog - 2 years ago
Android comes with a wide variety of *widgets*, small visual construction blocks you can glue together to present the users with complex and useful interfaces. However applications often need higher level visual *components*. A component can be seen as a complex widget made of several simple stock widgets. You could for instance reuse a panel containing a progress bar and a cancel button, a panel containing two buttons (positive and negative actions), a panel with an icon, a title and a description, etc. Creating new components can be done easily by writing a custom View but it can... more »

Android Layout Tricks #1

Romain Guy at Android Developers Blog - 2 years ago
The Android UI toolkit offers several layout managers that are rather easy to use and, most of the time, you only need the basic features of these layout managers to implement a user interface. Sticking to the basic features is unfortunately not the most efficient way to create user interfaces. A common example is the abuse of LinearLayout, which leads to a proliferation of views in the view hierarchy. Every view, or worse every layout manager, you add to your application comes at a cost: initialization, layout and drawing become slower. The layout pass can be especially expensive... more »

Android Market update: priced applications for US users

Eric Chu, Android Mobile Platform at Android Developers Blog - 2 years ago
Last Friday, we enabled developers to upload priced apps and saw a flurry of activity in the days that followed. Today, it is my pleasure to let you know that we have begun the phased rollout of priced applications to T-Mobile G1 users in the US. Once the service is enabled on their devices, T-Mobile G1 users will be able to see the priced apps immediately without the need to reboot. For more details on this update to Android Market, please see last week's blogpost.

Faster screen orientation change

Romain Guy at Android Developers Blog - 2 years ago
Android is a mobile operating system meant to be run on a wide array of devices, with very different hardware configurations. Some devices, like the T-Mobile G1, can change their hardware configuration at runtime. For instance, when you open the keyboard, the screen change from the portrait orientation to the landscape orientation. To make Android applications development easier, the OS automatically handles configuration changes and restart the current activity with the new configuration. This is the default behavior that lets you declare resources like layouts and drawables base... more »

Android Market update: support for priced applications

Eric Chu, Android Mobile Platform at Android Developers Blog - 2 years ago
I'm pleased to announce that Android Market is now accepting priced applications from US and UK developers. Developers from these countries can go to the publisher website at http://market.android.com/publish to upload their application(s) along with end user pricing for the apps. Initially, priced applications will be available to end users in the US starting mid next week. We will add end user support for additional countries in the coming months. We will also enable developers in Germany, Austria, Netherlands, France, and Spain to offer priced applications later this quarter. B... more »

Track memory allocations

Romain Guy at Android Developers Blog - 2 years ago
Despite the impressive hardware of the first Android phones (T-Mobile G1 and ADP1) writing efficient mobile applications is not always straightforward. Android applications rely on automatic memory management handled by Dalvik's garbage collector which can sometimes cause performance issues if you are not careful with memory allocations. In a performance sensitive code path, like the layout or drawing method of a view or the logic code of a game, any allocation comes at a price. After too many allocations, the garbage collector will kick in and stop your application to let it free... more »

Apps that work together

Jason Chen at Android Developers Blog - 2 years ago
Android applications can easily be linked together using intents. One example of this involves Shazam, MySpace, and the Amazon MP3 Store. Once Shazam has identified a song, you can also search for the artist's official MySpace profile page or buy the song via via the Amazon MP3 app. Here, the three developers behind these apps talk about how they accomplished this: To hear more about how the MySpace app for Android was built and lessons learned, watch Matt Kanninen: Tomasz Zawada of Shazam also talks about his opinions on the Android platform and has some tips for developers build... more »

Android 1.1 SDK, release 1 Now Available

Dan Morrill at Android Developers Blog - 2 years ago
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 new APIs in 1.1, you'll need an updated SDK. That's why I'm pleased to let you know that the Android 1.1 SDK, release 1 is now available. As you'll quickly see from the release notes, the actual API ... more »

Avoiding memory leaks

Romain Guy at Android Developers Blog - 3 years ago
Android applications are, at least on the T-Mobile G1, limited to 16 MB of heap. It's both a lot of memory for a phone and yet very little for what some developers want to achieve. Even if you do not plan on using all of this memory, you should use as little as possible to let other applications run without getting them killed. The more applications Android can keep in memory, the faster it will be for the user to switch between his apps. As part of my job, I ran into memory leaks issues in Android applications and they are most of the time due to the same mistake: keeping a long-l... more »

Why is my list black? An Android optimization

Romain Guy at Android Developers Blog - 3 years ago
ListView is one of Android's most widely used widgets. It is rather easy to use, very flexible and incredibly powerful. ListView can also be difficult to understand at times. One of the most common issues with ListView happens when you try to use a custom background. By default, like many Android widgets, ListView has a transparent background which means yo can see through the default window's background, a very dark gray (#FF191919 with the current dark theme.) Additionally, ListView enables the *fading edges* by default, as you can see at the top of the following screenshot; the... more »

Can I use this Intent?

Romain Guy at Android Developers Blog - 3 years ago
Android offers a very powerful and yet easy to use tool called intents. An intent can be use to turn applications into high-level libraries and make code re-use something even better than before. The Android Home screen and AnyCut use intents extensively to create shortcuts for instance. While it is nice to be able to make use of a loosely coupled API, there is no guarantee that the intent you send will be received by another application. This happens in particular with 3rd party apps, like Panoramio and its RADAR intent. While working on a new application, I came up with a very s... more »

New Resources for Developers

Dan Morrill at Android Developers Blog - 3 years ago
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. First, the Android 1.0 SDK, release 2 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-illega... more »

Touch Mode

Romain Guy at Android Developers Blog - 3 years ago
Designing and developing user interfaces for Android is very different from doing so in a regular desktop environment. Because Android runs applications on mobile devices, application designers and developers must deal with numerous constraints that are not always obvious. To help you design and develop better applications, we are publishing a new series of posts focusing on Android user interfaces. In this series, we will give you design guides and tools, development tips, and explain the fundamental principles of the Android UI toolkit. The goal here is simple: we want to help y... more »

Behind the apps: Amazed

Jason Chen at Android Developers Blog - 3 years ago
This week's developer video features Jason Tomlinson of Hands-On Mobile. He wrote Amazed, an application open sourced in the apps-for-android project. Things Jason mentions in the videos include: - Amazed was built primarily to get familiar with the accelerometer. This helped him in his work on Guitar Hero® World Tour Mobile for Android. - Using traceview to track down which methods take the most CPU cycles. This and other Android developer videos can be found here.

Behind the apps: Amazon and imeem

Jason Chen at Android Developers Blog - 3 years ago
Last week we introduced a couple Android developers who shared how they built their Android apps and gave their insight into Android app development. This week, we have videos of two developers who've built music-related apps. The first is of Allan Hsu—he wrote imeem's Android app. A couple of things he mentions in his videos: - Using SQLite databases and regular expressions - Completing the app, including rewriting many of their Activities and web service API calls, in just 6 weeks. The second video features Casey Langen—he wrote the Amazon MP3 for Android app. Thin... more »

The stories behind the apps

Jason Chen at Android Developers Blog - 3 years ago
As we mentioned yesterday, the Android Market is now open for developers to upload their applications. I'm pretty excited because Market, along with the availability of the first Android-powered phone and the Android 1.0 SDK, puts the basic pieces of the Android platform into place for developers to create and distribute their apps. To help developers better understand what's available to them, we've collected stories from some Android application developers. In the videos, you'll hear them talk about how they built their apps, their takes on the Android platform, and also some ti... more »

Android Market: Now available for users

Eric Chu, Android Mobile Platform at Android Developers Blog - 3 years ago
Last month I outlined some details around Android Market. Today, Android Market launched for users to download applications along with the first Android-powered phone—the T-Mobile G1. With Android Market, users can easily download apps to their Android-powered phone. Users can also rate the apps they've downloaded and leave comments. These users' ratings along with anonymous usage statistics help determine how apps are ranked and presented within Android Market. If you're a developer, you will be able to register and upload your applications starting next Monday, 2008-10-27, when ... more »

New Android Maps API Terms of Service and Key Enforcement

Dan Morrill, Developer Advocate at Android Developers Blog - 3 years ago
When we released the 0.9_r1 beta SDK, we mentioned that the Maps APIincluded 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. Today, I'm pleased to be able to tell you that the new Android Maps API ToSare now finalized and they're actually pretty exciting. Most of the restrictions present in the old ToS are now gone—for instance, it's now permissible to use the Android Maps API to build "friend finder" style applications. There are still a few ... more »

Android is now Open Source

Jason Chen at Android Developers Blog - 3 years ago
Over the past year, we announced Android, released several SDKs (eventually resulting in the 1.0 SDK), gave out the first half of the $10,000,000 prize money for the Android Developer Challenge, and prepared the first Android-powered device for users. Tomorrow, the T-Mobile G1 goes on sale. But today, we're making what might just be the most exciting announcement of all: we and our Open Handset Alliance partners have now released the source code for Android. There's a huge amount of code and content there, so head over to http://source.android.com/ for all the details. I'd like to... more »

Announcing the Android 1.0 SDK, release 1

Dan Morrill, Developer Advocate at Android Developers Blog - 3 years ago
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—November 12 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 *very* excited about that upcoming release. In the year since, we've run and concluded the first Android Developer Challenge, given away $5,000,000, released more SDK builds, and worked with our partners to prepare the first device for users. It's been quite the whirlwind of a year. In one of those str... more »

Panoramio

Mike Cleron at Android Developers Blog - 3 years ago
The Panoramio web site has a great collection of photos from all over the world, and they also have a very convenient web API. I thought it would be a lot of fun to use Android to access this content while you are out walking around – and especially to have Android find interesting photos based on your current location. The resulting open source application is now available in the apps-for-android project. The application starts by showing your current location in a custom MapView. You can pan and zoom this map to choose the area you want to search. Once you have selected a search... more »

Using WebViews

Mike Cleron at Android Developers Blog - 3 years ago
I've written a small application called WebViewDemo that shows how you can add web content to your application. You can find it in the apps-for-androidproject. This application demonstrates how you can embed a WebView into an activity and also how you can have two way communication between your application and the web content. A WebView uses the same rendering and JavaScript engine as the browser, but it runs under the control of your application. The WebView can be full screen or you can mix it with other Views. The content for your WebView can come from anywhere. The WebView can... more »

Divide and Conquer

Karl Rosaen at Android Developers Blog - 3 years ago
Years ago I was addicted to a simple game that I played on my then state-of-the-art Pentium-75. In this game, balls would bounce around, and I would try to partition them into small enough spaces so that I could go to the next level where more and more balls would be added. As of a couple of months ago, for the life of me, I couldn't remember the name of this game. So when I sat down to write an application for Android in my 20% time, I thought, why not try to recreate something similar? After completing most of the game and showing it to some of my friends at work, one of them sai... more »

Three new Samples: Triangle, SpriteText and Downloader

Jack Palevich at Android Developers Blog - 3 years ago
I've posted three new open source samples to the apps-for-android project: Triangle, SpriteText and Downloader. The first two samples, Triangle and SpriteText, show techniques that would be useful to anyone using the OpenGL ES 3D graphics APIs to write Android applications. The samples contain several reusable classes that may eventually be incorporated (in some form) into the SDK. Chief among these is the GLView class, which abstracts the OpenGL ES book-keeping code from the rest of the application. GLView helps handle the extra work OpenGL ES applications have to do when the act... more »

Android Photostream

Romain Guy at Android Developers Blog - 3 years ago
I'm pleased to announce that a new open source sample application—called Photostream—has been added to the apps-for-android project. Photostream is a simple photos browser and viewer for Flickr. All you need to use it is a Flickr screen name or user name (the application offers a default user name if you just want to try it.) This application serves as an illustrative example of several Android features and APIs: - Activity aliases - Adding custom shortcuts to Home - Adding a new wallpaper chooser to the system - Custom layouts - Custom XML attributes - Use ... more »

Presenting the Winners of the Android Developer Challenge I

Eric Chu, Android Mobile Platform at Android Developers Blog - 3 years ago
Since we started the first Android Developer Challenge late last year, we all have been eager to see who the winners of $275,000 and $100,000 would be. All 50 applications that emerged from Round 1 of ADC I showed great promise, and these teams have been working intensely for the past several months to polish their apps for the final round. Similar to round 1 we sent laptops preconfigured with the judging environment, emulator, and all entries to each of our seven judges. In this round, each judge reviewed all 50 applications, took collaborative notes and gave initial scores. Then... more »

Android Market: a user-driven content distribution system

Eric Chu, Android Mobile Platform at Android Developers Blog - 3 years ago
When we talk to developers, a common topic is the challenge of getting applications in the hands of users. That's why today I'm happy to share early details of Android Market—an open content distribution system that will help end users find, purchase, download and install various types of content on their Android-powered devices. The concept is simple: leverage Google's expertise in infrastructure, search and relevance to connect users with content created by developers like you. Developers will be able to make their content available on an open service hosted by Google that featu... more »

Some information on APIs removed in the Android 0.9 SDK beta

Dan Morrill, Developer Advocate at Android Developers Blog - 3 years ago
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. GTalkService 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 ... more »

Announcing a beta release of the Android SDK

Dan Morrill, Developer Advocate at Android Developers Blog - 3 years ago
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, you can visit the download page. Once you've got it, be sure to visit our Developer Forum if you have any questions. 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 t... more »

Android at Google I/O and Developer Days

David McLaughlin, Developer Advocate at Android Developers Blog - 3 years ago
It was great to connect with everyone at the Google I/O event in San Francisco and at our recent Developer Days across the globe. We enjoyed meeting all of the Android developers and answering your questions - both at our booth and at the fireside chats. For those of you who were unable to attend, all of the sessions are available on video: http://sites.google.com/site/io/ Enjoy!

AndroidGlobalTime

Megha Joshi at Android Developers Blog - 3 years ago
We are pleased to announce that a new open source sample application—called AndroidGlobalTime — has been added to the apps-for-android project. It's a 3D world clock developed by an engineer at Google and may serve as an illustrative example of how to use the OpenGL ES APIs in your Android applications. Just a quick word on how to use AndroidGlobalTime. When you launch it, you'll see a spinning globe showing day and night regions. Pressing the space bar will overlay an analog clock with the time corresponding to location you're currently examining. The arrow keys allow you to ... more »

Android Developer Challenge Judges and Top 50 Details

David McLaughlin, Developer Advocate at Android Developers Blog - 3 years ago
It's been a busy few weeks here as we've wrapped up the first round of the Android Developer Challenge. We'd like to share a couple pieces of information with you: - The full list of judges is now available. It was fun to work with such a diverse group of judges from different companies all around the world. - A slide deck of the Android Developer Challenge prize recipients is also available. The deck includes descriptions and screenshots of the 46 recipients who consented to sharing their information and is a great way to get a feel for the quality of apps submi... more »

A Challenge in More than One Way

Dan Morrill, Developer Advocate at Android Developers Blog - 3 years ago
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 *fierce.* 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. Speaking of the judges...we'll soon publish a list of who the judges are, but I know many ... more »

The Top 50 Applications

Jason Chen at Android Developers Blog - 3 years ago
As you may have heard, the results from Android Developer Challenge Part 1, Round 1 were announced to all the participants late last week. We're still working on pulling together a more extensive listing for each application that made it into the top 50, but in the spirit of releasing early and often, here's a list containing the name of the application and its author(s): - AndroidScan - Jeffrey Sharkey - Beetaun - Sergey Gritsyuk and Dmitri Shipilov - BioWallet - Jose Luis Huertas Fernandez - BreadCrumbz - Amos Yoffe - CallACab - Konrad Huebner and Henning Boeger... more »

Android Developer Challenge: Round I Results are In

Eric Chu, Android Mobile Platform at Android Developers Blog - 3 years ago
The last few weeks were both extremely intense and rewarding. Based on feedback from the judges, it was apparent that large number of applications were compelling, innovative and well implemented. The quality of these entries clearly reflects the creativity and hard work that developers have invested in building their apps. In addition to developers' participation and contributions, over 100 industry judges around the world spent weeks reviewing these submissions. I want to thank all the developers and judges who have worked incredibly hard over the last few months, making the An... more »

Android Developers Have Risen to the Challenge

Azhar Hashem, Product Marketing Manager for Android, Google Developer Products Team at Android Developers Blog - 3 years ago
I'm thrilled to share the news that developers from over 70 countries submitted 1,788 entries to the Android Developer Challenge! Here are a few facts that I thought were interesting. When we announced the Android Developer Challenge back in January, developers started submitting entries right away but it wasn't until the April 14 deadline approached that the flood really began. The rate of submissions spiked in the wee hours of Tuesday morning, reaching as high as 170+ submissions per hour. What I find truly amazing is how global the interest in the challenge has been. Developers... more »

Android Developer Challenge Judges

David McLaughlin, Developer Advocate at Android Developers Blog - 3 years ago
We have received a few inquiries regarding the judges who will be evaluating entries to the Android Developer Challenge (ADC). All Entries will be judged by a panel of experts in the fields of mobile devices, cellular telecommunications, software development, and/or technology innovation ("Judges"). Google will select the Judges from the member organizations of the Open Handset Alliance, Google and/or mobile experts. As a reminder, the deadline for the Android Developer Challenge is April 14, 2008. We're really looking forward to seeing what you've created so make sure you submit ... more »

Android University

Dan Morrill, Developer Advocate at Android Developers Blog - 3 years ago
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 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 submit your application. Remember to submit by midnight on April 14th, PST (GMT-8). But after the Ch... more »

Android's First 5 Months

Dan Morrill, Developer Advocate at Android Developers Blog - 3 years ago
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 promises openness and innovation, perhaps changing not only the mobile Internet but the Internet itself." 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... more »

WikiNotes for Android: Routing Intents

Dick Wall, Developer Advocate at Android Developers Blog - 3 years ago
In the last article, we talked about using Linkify to turn wiki words (those that match a regular expression we defined) into a content: URI and defining a path to data that matched a note belonging to that wiki word. As an example, a matching word like ToDoList would be turned into a content: URI like content://com.google.android.wikinotes.db.wikinotes/wikinotes/ToDoList and then acted upon using the VIEW action from the Linkify class. This article will examine how the Android operating system takes this combination of VIEW action and content: URI and finds the correct activity ... more »

Linkify your Text!

Dick Wall, Developer Advocate at Android Developers Blog - 3 years ago
This is the first in a series of technical articles about WikiNotes for Android, part of the Apps for Android project. This article covers the use of Linkify to turn ordinary text views into richer link-oriented content that causes Android intents to fire when a link is selected. *Linkify*: The Linkify class in the SDK is perfect for creating a wiki note pad. This class lets you specify a regular expression to match, and a scheme to prepend. The scheme is a string that, when the matched text is added, forms a Content URI to allow the correct data to be looked up. For example, in ... more »

Android Developer Challenge Deadline Approaching Quickly

David McLaughlin, Developer Advocate at Android Developers Blog - 3 years ago
The Android Developer Challenge is proceeding nicely. We're excited about the interest people have shown so far and have enjoyed talking to everyone working on new Android Apps. As a quick reminder, the first phase of the challenge will be ending on April 14. In the Android Developer Challenge I, the 50 most promising entries received by April 14 will each receive a $25,000 award to fund further development. Those selected will then be eligible for even greater recognition via ten $275,000 awards and ten $100,000 awards. Keep working on your applications, and be sure to post in th... more »

Announcing: Apps for Android

Dick Wall, Developer Advocate at Android Developers Blog - 3 years ago
[image: Screenshot of WikiNotes for Android]We are pleased to announce that a new open source project has been created on Google code hosting called apps-for-android. Our goal is to share some sample applications that demonstrate different aspects of the Android platform. The first application to be included in the new project is called WikiNotes for Android. For anyone not familiar with the concept of a wiki, it is a simple way to link up pages of information using WikiWords (words that use CamelCase). For example, in the previous sentence, both WikiWords and CamelCase would bec... more »

Android SDK update: m5-rc15 released

Jason Chen at Android Developers Blog - 3 years ago
Earlier today we released an update to the Android SDK – we're calling it m5-rc15. With this update, the SDK now includes all of the incremental changes we've been making to the online documentation since m5-rc14 was released in mid-February. In addition to the latest documentation, we've also fixed a security issue involving handling of image files. We recommend that you install m5-rc15 at your earliest convenience. The update doesn't change any of the Android APIs or introduce any new ones. Eclipse users don't need to update the ADT plug-in either. Once you've unzipped the file ... more »

Android SDK m5-rc14 now available

Jason Chen at Android Developers Blog - 3 years ago
On behalf of the entire Android team, I'm happy to let you know that an updated version of the Android SDK – we're calling it m5-rc14 – is now available. Today, we're continuing the early look at the Android SDK that we started back in November by providing updates to the Android APIs and the developer tools based, in part, on the great feedback and suggestions developers have been giving us. We're excited about the progress that we've made and look forward to making additional updates in the future as the platform evolves towards production-readiness. There are a couple of change... more »

Android in Harvard Square

Dan Morrill, Developer Advocate at Android Developers Blog - 3 years ago
As promised, there's another Android event coming up – 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 so make sure you reserve your spot. Here are the details: *Date*: Saturday, February 23, 2008 *Time*: 10:00 am - 4:00 pm *Location* : The Charles Hotel Harvard Square 1 Bennett St Cambridge, MA 02138 As a reminder, a Code Day is an immersive introduction and hands-on session for Android. It's promising to be a real Android nor'easter. W... more »

Deadline Extension for the Android Developer Challenge

Quang Nguyen, Developer Advocate at Android Developers Blog - 4 years ago
We'd like to let you know that we are extending the submission deadline for the first Android Developers Challenge to *14 April 2008*. Based on the great feedback you've given us, we've made significant updates to the SDK that we'll be releasing in several weeks. In order to give you extra time to take advantage of these forthcoming UI and API enhancements, we've decided to extend the submission deadline. In addition, a fair number of developers have also asked for more time to build and polish their applications. Of course, you can stay the course and submit your applications usi... more »

Intercontinental Androids

Dan Morrill, Developer Advocate at Android Developers Blog - 4 years ago
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 31 January, we'll split up, and host Android Code Days in London, UKand Tel Aviv, Israel. - On 23 February, we'll host one in Boston, Massachusetts. (We'll post the registration page for this event soon.) In addition, as we've announced via Mobile Monday Germany, we'll be having a similar event in Munich, Germany on 29 Janua... more »

You can't rush perfection, but now you can file bugs against it

Dan Morrill, Developer Advocate at Android Developers Blog - 4 years ago
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 on Android, and meanwhile the Developer Challenge has been heating up and the submissions have started coming in. 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... more »

Who wants cocoa & s'mores?

Dan Morrill, Developer Advocate at Android Developers Blog - 4 years ago
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 stop and smell the roses. 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. Join us for food, drinks, and great conversatio... more »

Rising to the Challenge

Dan Morrill, Developer Advocate at Android Developers Blog - 4 years ago
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 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 Android Developer Challengeis now "open for business" and accepting your submissions. The excitement! The anticipation! The pageantry! Okay, not ... more »

On the Road with Android

Dick Wall, Developer Advocate at Android Developers Blog - 4 years ago
This week finds me at the Google offices in jolly old London after a quick dash out to Belgium last week. I have had the chance to meet the Mobile developers based here in London and give them an introduction to Android, as well as do the same for 70ish external developers from the London area. It has been a fun week of Android hackathons, brainstorming for Android application ideas and occasionally finding bugs and holes in the documentation. It has been really valuable spending enough time with a group of motivated developers to move beyond the first steps and into real developm... more »

Life can be tough; here are a few SDK improvements to make it a little easier

Quang Nguyen, Developer Advocate at Android Developers Blog - 4 years ago
It's been just over a month since we gave developers the first early peek at the Android SDK. We've been hard at work since then on some nifty new stuff we think you'll really like. We hope to show that to you soon, but in the meantime, we wanted to fix some of the important issues you've raised. We're very pleased to announce the immediate availability of m3-rc37a. (What a great name for a droid!) Our servers are quivering in anticipation of the opportunity to deliver these bits fresh to your desktop. Don't be shy! But if you need further enticement to download the new version, h... more »

Google Developer Podcast: Android

Dick Wall, Developer Advocate at Android Developers Blog - 4 years ago
Dianne Hackborn and Jason Parks are two of the architects on the Android engineering team, and in this podcast they talk to us about the Android platform from a technical perspective. Dianne and Jason share a background at both Be and PalmSource, and talk about how that experience has been applied to Android. Other topics covered include: - Some history behind the project - The high level architecture of Android. For example, how Linux processes handle the VM and manage security (the VM doesn't handle it) - Details on the Dalvik VM and how it is optimized for small d... more »

A Maze of Twisty Little Passages

Dick Wall, Developer Advocate at Android Developers Blog - 4 years ago
The end of last week was Thanksgiving in the US, the tradition is to be with family, eat too much food and watch football (not necessarily in that order). Apparently some folks took the chance to work on Android projects too. We are highlighting a few of the projects that caught our eye. One of the coming of age rituals of any new platform is the porting of the Z-machine – the interpreter used in the Zork series of games from Infocom. Now Android has the Z-machine thanks to sussman and mariusm. The project, called Twisty, is available on Google code hosting. Thanks for the lost ... more »

A Stitch in Time

Dick Wall, Developer Advocate at Android Developers Blog - 4 years ago
*Background*: While developing my first useful (though small) application for Android, which was a port of an existing utility I use when podcasting, I needed a way of updating a clock displayed on the UI at regular intervals, but in a lightweight and CPU efficient way. *Problem*: In the original application I used java.util.Timer to update the clock, but that class is not such a good choice on Android. Using a Timer introduces a new thread into the application for a relatively minor reason. Thinking in terms of mobile applications often means re-considering choices that you migh... more »

Android: the first week

David McLaughlin (Android Advocate) at Android Developers Blog - 4 years ago
Wow, what a week! The response from the community on Monday's Android SDK release has been overwhelming. Our forums have been flooded and we're glad to be helping people dig in writing new applications. A handful of quick notes for this Friday evening: 1. We've released a quick point-revision of the SDK to fix some high-priority issues. You can now download M3-RC22a and read the release notes. Don't forget to get Eclipse to update the ADT plugin. 2. A couple of good articles on the web for your reading pleasure: - A developer's perspective on Google's Android SDK... more »

Just show me the code

Quang Nguyen, Developer Advocate at Android Developers Blog - 4 years ago
OK, you've downloaded the SDK and are now ready to build the next killer app for mobile (and maybe win some $$$ in the process ;) *Activities? Intents? SimpleCursorAdapter? Huh? Hmm...how do I proceed?* Well, that depends on your style. Some will want to carefully go through all the documentation top-to-bottom, while others may prefer to just dive right into code. Either path will eventually lead to the sample applications provided in the SDK — these samples will be invaluable in your quest for Android mastery. The samples include: *API Demos* A 'kitchen sink' application that co... more »

This is the droid you're looking for

A Googler at Android Developers Blog - 4 years ago
Following last week's announcement of the Open Handset Alliance, today we're happy to offer an early look at the Android SDK. We're eager to get feedback from lots of developers in our discussion group. We're also providing developer documentation and this blog to help you get up and going. You're probably wondering about what's available today. This preview of the SDK will allow you to develop Android applications that you can run, test, profile, and debug using the emulator and the other included tools. Note that the look and feel of the user interface in the emulator is a plac... more »

No comments:

Post a Comment

Vulgar language in this blog is PROHIBITED....