[Case study]

anroid for cars app library:

creating a simple and efficient library to develop car apps

for Android Auto & android automotive OS

A global set of apps created with Car app library v1

 
 

Design lead

product definition

research

ui design & Prototyping

Partner relationships

developer facing documentation

Project: Develop an SDK (development kit) for car app developers.

Problem statement:

  • The number 1 user dissatisfaction on Android Auto was lack of apps.

  • Existing ways to develop car apps required developers to design for various screen sizes, input models (rotary, touch etc.) and driver distraction requirements, bringing high cost of development and maintenance.

Opportunity: Provide an efficient way for developers to create car apps, so that users have access to a wider app ecosystem.

Process: Initiated mid-year 2019 and launched early 2021. Program had an ambiguous scope and involved close coordination with external partners (developers, car OEMs) as well as internal Auto/Google teams. We developed and iterated alongside early access partners, went through closed and open user testing. Released as part of Jetpack in early 2021 and beta for Automotive OS early 2022.

My role and responsibilities: As the UX lead, I worked closely with cross-discipline partners to define the initial and multi-year product vision. Collaborated tightly and gave oversight to a small team of designers, researchers and writers; while executing the roadmap alongside engineers within agile development methodology. I was also the main design point of contact for global app developer partners and car OEMs.

 

final product snapshot

GOOGLE IO 2021 ANNOUNCEMENT. I DO AN INTO TO DESIGNING WITH LIBRARY STARTING ON 7:45.

 

The Android for Cars App Library allows developers to bring navigation, parking, charging and all other Point of Interest apps to the car. It does so by providing a set of templates designed to meet driver distraction standards, and taking care of details such as the variety of car screen factors and input modalities.

Library enables developers to build a single app and deploy it on Android Auto Projected and Android Automotive OS (beta) platforms. The unified library across platforms is a strategy I advocated for early on. This was supported with the insight that app-related user and developer needs rarely differ based on platform.

 
 

Project highlights

FIRST SET OF TEMPLATES AND COMPONENTS TO VALIDATE WITH DEVELOPERS

sample

FINAL TEMPLATE AND COMPONENTS SAMPLES ACROSS SCREEN SIZES

 
  1. starting in ambiguity and building a design foundation

The needs and goals were identified. But, where to start and how to scope the problem was highly ambiguous. There was no prior examples for the first 2 new app categories, parking and charging. And very few for the navigation category.

Team dove right into prototyping and design explorations, but instantly were struggling with the lack of a clear strategy and set of capabilities to build for first release. We needed to better understand the breadth of user needs and app features for the initial categories, and more importantly to establish a design foundation that would expand to all developers and multiple platforms.

I led the team to do several exercises: audit various apps, conduct secondary research, create prototypes and evaluate multiple directions. During audits, I observed a number of shared UI patterns and components between all apps. Which instantly eliminated several too-flexible directions.

Using all our knowledge, we developed the final product vision: Create a set of templates, that contain a set of components and enable flexible-enough capabilities. Idea was to start small and open up as needed. This helped us build fast, start learning and iterating.

We developed an initial set of capabilities and started working with early access partners to get their input frequently. We were constantly asking questions, validating hypothesis and changing direction. This tight collaboration that I led as the main design contact, gave us deep insights about end-user needs, while enabling us to design and build the right set of features for a solid design foundation.

 
 
 

2. Design for flexibility that meet global user and developer needs

While working with early access partners, we observed how different global driving conditions and user behaviors affected product needs. We strived to enable as much flexibility for developers as possible, so they could answer their own unique user and product needs.

From early on, I advocated to enable developers to create their own app architecture and user flows. To support this, we had to design to support capabilities such as:

  • Any template could be used for the start or end of a task,

  • Same task could be designed via different template sequences,

  • Developers could pick any component to create app navigation structures.

While building the library for flexibility, we had to consider global driver safety guidelines. As driving is always the primary task for drivers. I worked closely with researchers and engineers to create a generalizable safety framework that was embodied in the SDK. As a result, we empowered developers to create car apps without being driver distraction experts.

 
 
 
 

3. developer facing design guidelines

Working alongside early partners as they built their car apps gave us the advantage to foresee guidance new car developers/designers would need. I developed many working documents during the early stages, which we leveraged to create the Design guidelines. These guidelines are an ever evolving artifact that help all developers/designers understand the design capabilities, rules and various car app best practices.

 
 
 

impact

400+ apps built with the library (growing weekly), which provide user growth in countries where Android Auto used to have minor market presence in.

Immensely positive developer feedback, partners reported building apps even in a matter of days. Signaling success in creating an efficient and simple way to build car apps.

I helped envision and build a product foundation that could efficiently be deployed on multiple car platforms, and easily support a growing ecosystem of app categories. Library recently got released on Automotive OS platform (beta) and added on support for multiple new categories (expanded to all POI apps and coming soon rideshare) with minimal effort.