•  

Sessions at AnDevCon II about Android

Your current filters are…

Sunday 6th November 2011

  • Android for .NET/C# Developers Using MonoDroid

    by Wallace B. McClure

    Calling all .NET developers! This workshop will introduce you to writing native applications geared for the Android Platform based on .NET/C#/Mono. We’ll examine the overall architecture of MonoDroid, discuss how it integrates with Visual Studio, debug with MonoDroid, and look at a couple of example apps written with MonoDroid.

    This session is for the .NET developer that wants to move to Android. While the session will be introductory for the Android platform, it will be advanced for those on the .NET Platform.

    Native Android development is predominantly with the Java Language based on the Dalvik Java virtual machine using the Eclipse IDE. But if you or your company have already made a significant investment in .NET, the time to learn Java and Android is significant. Fortunately, there’s another way! You’ll be able to take your existing knowledge of .NET/C# and Visual Studio and immediately apply this to writing apps for Android using the Novell MonoDroid plugin.

    At 9:00am to 5:00pm, Sunday 6th November

  • Hands-On Android Tablet Programming

    by Donn Felker

    Come to this hands-on-lab to be introduced to Android tablet development. We'll build out a simple android application, which showcases features of the new Android Tablet APIs. First, we will cover a short synopsis of what is new in Android Tablet development and then we will dive right in, creating an application which allows users to utilize the action bar, fragments, emulator and more. You will build an app that works on small screen devices, as well as large screen devices. We'll briefly touch on the new Android widgets, RoboGuice integration and internationalization.

    At 9:00am to 5:00pm, Sunday 6th November

  • Visage Android Hands-on Lab

    by Stephen Chin

    Visage is a domain-specific language for writing UIs that deploys to native code on Android devices. It excels at rapid application design, reducing the amount of boilerplate you have to write to create great looking UIs.

    In this lab, you will have an opportunity to write Visage applications that deploy to and run on Android mobile devices. To participate in this session you will need a laptop running Windows, Mac OS X, or Linux. We will distribute a VirtualBox install and image via thumb drives, letting you get up and running very quickly with no reliance on the conference network.

    At 9:00am to 12:30pm, Sunday 6th November

  • Testing Android Apps – Going from Zero to Hero

    by Manfred Moser

    Go from your first unit test to a continuous integration server build! This two-part class will introduce you to reasons for automating the testing of your applications and then go on to show you how it can be done. You will learn about unit tests of plain Java classes running on the JVM.

    After learning the difference of code running on the JVM and the Dalvik VM and the associated Android stack, you will see how to write integration (or instrumentation) tests with the features supplied by the Android SDK. After that you will see how Robotium builds on top of that and how Robolectric takes a completely different approach by running on JVM with mocked classes instead. Comparing and combining the approaches, we will finally get it all running on the continuous integration server Hudson.

    At 1:30pm to 5:00pm, Sunday 6th November

Monday 7th November 2011

  • Keynote: Developing Consumer Apps in a Really, Really Big Company

    by Andrew Peret and David Baldie

    At 8:45am to 9:45am, Monday 7th November

  • Creating an Easy-To-Use Modular Framework

    by Lee S. Barney

    The Model-View-Control pattern as implemented by Google is great as far as it goes. However, it does tend to lead to implementation code being scattered across many areas of your application.

    This class helps you design and implement a modular, reusable framework that can speed up your application development dramatically. Initial data indicates you could reduce your time to market by a factor of 10 or more by reusing the framework you will create in this class.

    You will create a command-response, highly modular framework that you can reuse in every Android or other Java applications you ever create. Your framework will be fast. It will be small. It will be easy to use.

    At 10:00am to 11:15am, Monday 7th November

  • Taking Advantage of Apache Maven for Your Android Builds

    by Manfred Moser

    This class will give a you an introduction to the Apache Maven build system and then go on to show how you can take advantage of it for building your Android applications.

    You will learn how to build a simple application or convert an existing application. You will learn how to reuse existing pure Java libraries as well as Android library projects. Furthermore, you will see how unit and instrumentation testing is simplified with Maven and how it can help you with the release of your application with steps like signing, zipaligning and optionally obfuscating and automating it all as well.

    This class will have live demos, but is not intended to be followed by the attendee as a live coding exercise.

    At 10:00am to 11:15am, Monday 7th November

  • What Are Wearables For? Android Meets Arduino

    by Rachel Lyra Hospodar

    This session provides an overview of existing trends and possibilities in embedded and wearable circuitry.

    We’ll cover existing hardware and software, including Arduino, an open-source prototyping platform, the Amarino toolkit library for Arduino, wireless radio capabilities (using Bluetooth, Zigbee and serial interface), the Sparkfun IOIO board, and other Android-specific hardware, off-the-shelf sensors and other components, smart fabrics, conductive thread, and other inherently functional materials.

    In this session, you’ll also see some examples of existing products, like filtration scarf, music tapestries, other music manipulation devices, microphone/earphones scarfs or hats, JeeNode sensor networks, pants interfaces, Kobakant conductive threads, and much more!

    What are the applications of wearables? Many! They include: warehouse/inventory tracking; music/lighting control for the stage, gaming, creative/generative (DJ to watercolor to lighting design), biometrics tracking for medical and sports. Also, event generation for any application (like an alarm clock), object tracking, centralization and specialized sensor networks (such as pollution sensing, efficiency-data gathering, and smarthomes) are included.

    At 10:00am to 11:15am, Monday 7th November

  • Android Variants, Hacks, Tricks and Resources

    by Karim Yaghmour

    While Google makes periodic code drops to the Android Open Source Project (AOSP), the bulk of the work done on Android occurs behind closed doors. There are, therefore, only a limited numbers of parties who can meaningfully influence Android's future at any point in time. This, though, hasn't stopped third parties and enthusiastic developers from customizing and extending Android in a variety of different ways.

    This talk provides an overview of third-party projects, resources, tools, etc. that embedded developers may want to look at if they intend to build Android-based embedded systems. Amongst other things, this talk will go over the Cyanogenmod project, one of the more prominent Android derivatives.

    At 11:30am to 12:45pm, Monday 7th November

  • Creating ePub Books for Android

    by Jason Mark

    Thinking of writing or creating an eBook? Come to this class to learn what ePub is (hint: It's a limited subset of XHTML), and how Android handhelds and tablets are different from the Kindle. We'll talk about limitations to the format and what types of material lend themselves to ePub. We'll also leave a chunk of time to discuss specific challenges (technical or conceptual) with your eBooks, so bring your questions. Participants will leave this session with a good understanding of what tools are available for creating ePubs, when not to use ePub, and how to submit your ePub book for sale via various channels.

    At 11:30am to 12:45pm, Monday 7th November

    Coverage slide deck

  • Pragmatic Android Layouts

    by Kirill Grouchnikov

    Understanding and mastering the Android layout system is a key factor in helping the user to navigate your application and presenting the relevant information in a clear and consistent way. While some developers seem to be able to effortlessly translate complex wireframes into a collection of flexible, reusable and maintainable layout definitions, others find it much more difficult.

    Foregoing the beginner-level approach that painstakingly takes you through all possible attribute combinations of linear and relative layouts, this class focuses on the underlying principles of identifying the major building blocks of real-life designs and finding pragmatic solutions.

    From extending core layout managers and tweaking a few alignments to writing brand-new layouts that address the specific design requirements, the goal of this session is to present a core collection of techniques that enable creating high-fidelity implementations of even the most challenging wireframes that scale to different screen sizes, ratios and resolutions.

    At 11:30am to 12:45pm, Monday 7th November

    Coverage slide deck

  • Refactoring for Mobile with CSS3 and HTML5

    by Joseph R. Lewis ☕

    The rate at which customers, partners and employees are accessing our websites via handheld devices has grown explosively in the past few years. How are these users interacting with your Web content? Are you delivering an enjoyable and useful experience? If not, come to this class and learn what to do about it!

    This class explores recent trends in the mobile Web and use live code examples to demonstrate how you can make Web pages more accessible to mobile devices by taking a CSS-based, minimally intrusive approach to page markup.

    Starting with an off-the-shelf content management system theme, we will modify the layout for an optimized small screen, touch-based experience. You will learn practical strategies and methods for refactoring existing websites for mobile devices, leveraging HTML5 and CSS3 components that work well today.

    At 1:45pm to 3:00pm, Monday 7th November

  • Marketing for Independent Android Developers

    by Nathan Mellor

    As an independent developer, you may not have access to a huge corporate budget or an experienced marketing staff. Worried? Don’t be! Come to this class to learn techniques that will work for marketing your own app inexpensively and wisely.

    You will learn:

    • Advertising ideas (to avoid) that burn money without results.
    • What causes people to buy apps.
    • Why the Android Market comment system is stacked against you, and what to do about it.
    • E-mail marketing through newsletters.
    • Keyword research and its role in marketing apps.
    • Web Page Marketing.
    • Video Marketing.
    • Tracking app discovery and conversions through analytics.
    • Beyond the one-man show: tools and outsourcing.

    At 3:15pm to 4:30pm, Monday 7th November

  • SCM for Android Developers Using Git

    by Tony Hillerson

    Whether you work alone or in a team, some sort of source control management is essential for things such as keeping a history of your code, dealing with integrating code, managing releases, and making your development workflow through different features painless.

    If you’re coming from something like CVS or SVN, the open-source Git version control system will turn what you know about SCM on its head. Come learn about why Git is different, and what that difference means to you as an Android developer.

    At 3:15pm to 4:30pm, Monday 7th November

    Coverage slide deck

  • Spread my application across the globe!

    by Manfred Moser

    What are the pitfalls when distributing applications to multiple markets? Come to this chat to exchange experiences on getting applications spread across the globe and share tips and tricks on how to deal with technical problems.

    At 8:00pm to 9:30pm, Monday 7th November

Tuesday 8th November 2011

  • Deep Dive Into Android Security

    by Aleksandar Gargenta

    With Android activations reaching a million devices per day, it is no surprise that security threats against our favorite mobile platform have been on the rise.

    In this session, you will learn all about Android's security model, including application isolation (sandboxing) and provenance (signing), its permission system and enforcement, data protection features and encryption, as well as enterprise device administration.

    Together, we will dig into Android's own internals to see how its security model is applied through the entire Android stack - from the Linux kernel, to the native layers, to the Application Framework services, and to the applications themselves.

    Finally, you’ll learn about some of the weaknesses in the Android's model (including rooting, tap-jacking, malware, social-engineering) as well as what can be done to mitigate those threats, such as SE-Linux, memory protection, anti-malware, firewall, and developer best practices.

    By the end of this session you will have a better understanding of what it takes to make Android a more trusted component of our personal and professional lives.

    At 8:30am to 9:45am, Tuesday 8th November

    Coverage slide deck

  • Keynote: Android Awesomeness

    by Chet Haase and Romain Guy

    At 10:00am to 11:00am, Tuesday 8th November

  • A Mobile Web App for Android in 75 Minutes

    by James Pearce

    Using Web technologies offers an exciting way to create cross-platform mobile applications. This hands-on class will drop straight down into HTML5, CSS3 and JavaScript, which we will use to create an application from scratch.

    We will be using JavaScript frameworks to create a rich Web-based app for the Android platform. We will use a variety of user interface controls, geolocation, JSON & CORS-based data feeds, a client-side MVC architecture, and then SaaS-based theming to round it all off.

    At 11:30am to 12:45pm, Tuesday 8th November

  • RoboGuice: Dependency Injection for Android, Part One

    by Michael Burton

    RoboGuice smooths out some of the wrinkles in your Android development experience and makes things simple and fun. It slims down your application code, and less code means fewer opportunities for bugs. It also makes your code easier to follow. No longer is your app littered with the mechanics of the Android platform, but now it can focus on the actual logic unique to your application.

    In this two-part class you will build a new Android application from scratch using RoboGuice to ease the process. We'll get into some of the behind-the-scenes about how RoboGuice works, and from there we'll launch into the more subtle and advanced ins and outs of RoboGuice-brand dependency-injection to help you build better applications. If time permits, we may also incorporate some test-driven development using Robolectric to make our apps more robust.

    This is a hands-on session for developers with Android experience. Bring a laptop with the Android SDK, maven3, and RoboGuice, which you can download from http://code.google.com/p/roboguice

    At 11:30am to 12:45pm, Tuesday 8th November

  • Advanced Transfers

    by Jim McKeeth

    Downloading a single file form a Web server is easy. How about downloading a small part of a file, like one file from an archive? How about downloading one file from multiple servers? Uploading files? Resuming Downloads? Transferring files between devices? Peer discovery? Now you are talking about advanced transfers. Come to this class to learn how to code it!

    At 3:45pm to 5:00pm, Tuesday 8th November

    Coverage slide deck

  • Honeycomb's Sweet UI: Designing For Android Tablets

    by Amanda Zacharski

    Honeycomb was arguably one of the biggest landmarks in the tablet landscape since the birth of the iPad. This operating system re-approached tablet computing with a new UI and represented the first real challenge to iPad's market dominance.

    These new UI elements make Android tablets vastly more usable, particularly in the enterprise space, but also requires designers to add even more to their already fragmented Android knowledgebase. This design-focused class looks at how to make the most of Honeycomb, whether it be an original app or a port from iPad. We will cover:

    • Best practices for utilizing fragments, system bars, action bars and other new UI elements
    • Making the most of Honeycomb's new widget options
    • Sizing and bounding boxes for Honeycomb
    • The importance of naming conventions and how to correctly name files to avoid distorted graphics.

    We will mix lecture with interactive lessons. Students should bring paper, a pencil and their laptops if they are not already very familiar with Android tablets and its design practices. We will be doing some activities in small teams and will provide a few printed copies of the Android Design Guidelines to help participants.

    At 3:45pm to 5:00pm, Tuesday 8th November

  • RoboGuice: Dependency Injection for Android, Part Two

    by Michael Burton

    RoboGuice smooths out some of the wrinkles in your Android development experience and makes things simple and fun. It slims down your application code, and less code means fewer opportunities for bugs. It also makes your code easier to follow. No longer is your app littered with the mechanics of the Android platform, but now it can focus on the actual logic unique to your application.

    In this two-part class you will build a new Android application from scratch using RoboGuice to ease the process. We'll get into some of the behind-the-scenes about how RoboGuice works, and from there we'll launch into the more subtle and advanced ins and outs of RoboGuice-brand dependency-injection to help you build better applications. If time permits, we may also incorporate some test-driven development using Robolectric to make our apps more robust.

    This is a hands-on session for developers with Android experience. Bring a laptop with the Android SDK, maven3, and RoboGuice, which you can download from http://code.google.com/p/roboguice

    At 3:45pm to 5:00pm, Tuesday 8th November

Wednesday 9th November 2011

  • Advanced Skinning and Styling for Android

    by Joshua Jamison

    The default application theme for most versions of Android is far from breathtaking. Getting a designer to create a beautiful theme for your application is a great start, but what do you do with all these assets afterward? Implementing those designs properly can be quite a headache.

    This class will cover advanced topics in Android styles, themes and component skinning. By attending this session you will learn how to develop Android applications while keeping styling in mind from the start, how to manipulate and organize your Android themes to suit your applications, how to break apart a design into the necessary assets for your application, and how to properly style and skin your custom components.

    At 11:30am to 12:45pm, Wednesday 9th November

  • Using HTML5 to Target Android and other Devices

    by Wallace B. McClure

    Come to this class to examine the features of the Android WebKit-based browser and jQuery Mobile, and learn how to leverage them to build applications that target Android and other devices.

    Building native applications can be costly and time consuming. How can companies effectively target both of these platforms with the same codebase and save development dollars? The Android and iPhone Web browsers are based on WebKit. We’ll look at the features common to both and how developers and companies can target both of these platforms.

    By taking this class, you’ll learn how to create Web applications that target Android and iPhone. The benefits of this approach are:

    • Easy cross-platform development.
    • No requirement to learn Objective-C/Xcode or Java/Eclipse.
    • Applications are immediately upgradeable. There is no requirement to go through the marketplace and app store of either platform.
    • Web developers are easier to find than Objective-C or Java developers.

    At 11:30am to 12:45pm, Wednesday 9th November

  • Testing Sucks - But It Doesn't Have To

    by Nicholas FritzRoy-Dale

    Writing an app for Android takes a lot of work. One of the greatest pains developers suffer from is the testing process, which many do badly or not at all. Why? Testing sucks - but it's a necessary evil.

    In this class, you'll learn about test methods available to developers today, in particular Monkey, the user interface testing tool. You'll learn why Monkey is such an effective tool, and how to use it to test your own apps. You'll also learn about the limitations of Monkey, especially when it comes to making sure your app runs on any Android device. Finally, you'll learn about Apkudo, a testing solution that lets developers see how their apps install, execute, and perform on every (yes, every) Android device, assuring interoperability and customer satisfaction.

    Testing doesn't have to suck. We'll show you why.

    This class is sponsored by Apkudo.

    At 2:15pm to 3:15pm, Wednesday 9th November

  • Practical Android Tips and Lessons from the Trenches

    by Anna Schaller

    Have you ever wondered what “Telephony” means on a tablet? The device does have a radio, but what does that mean? That question comes up frequently enough that the instructor, a Developer Advocate with Motorola Mobility, decided to tackle it in this session. In addition to answering that question, the instructor will incorporate advice on avoiding failures that repeatedly show up in the MOTOREADY App Compatibility Program testing, which you might not have thought of. You will also learn how to run your app through a static analysis tool to avoid potential failures on devices you don’t have access to.

    At 3:30pm to 4:45pm, Wednesday 9th November

  • Supercharging Advanced Apps with Android NDK

    by Andrew Sofie, Chris Pederson and Stephen Jones

    Android devices are rapidly gaining in capabilities and performance, and application developers need enabling APIs to harness this newly delivered power. The Android SDK is a great platform for most applications, but some developers find themselves searching for more functionality and performance, including advanced camera control, GPU accelerated vision and image processing, fusion of imaging with advanced 3D graphics, and acquisition of holistic sensor data.

    In this session, you’ll learn about powerful native capabilities of the Android NDK and new open standard APIs being developed to extend its footprint. NVIDIA will outline cross-vendor APIs based on Khronos standards and how they enable new use cases on the Android platform, such as OpenMAX AL for camera, image and video processing, and StreamInput for advanced sensor input.

    The session will include code examples of cutting-edge use cases being developed by both NVIDIA and the Verizon Application Innovation Center, and advanced profiling tools that illustrate the advantages of NDK acceleration that you can use to optimize your high-power apps.

    At 3:30pm to 4:45pm, Wednesday 9th November

  • Taming Android: User Experience Lessons from Square

    by Eric Burke

    Many Android apps are ugly, but not all. Apps like Square, Twitter, Pulse, and others are raising the bar for Android user experience.

    Through concrete code examples, this class exposes how Square creates custom UIs for its Card Case app. Topics include alpha compositing, creating a shiny plastic background, custom views and layouts, and even writing a hologram. Come to this session and learn practical, real-world techniques that can improve your own application's user experience.

    At 3:30pm to 4:45pm, Wednesday 9th November