by David Baldie and Andrew Peret
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.
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.
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.
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.
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.
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.
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.
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:
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.
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.