MirrorLink for App Developers



Similar documents
Application Certification Program

Messaging App UI Guidelines GOOGLE INC.

Color customization & branding GOOGLE INC.

CS 528 Mobile and Ubiquitous Computing Lecture 2: Android Introduction and Setup. Emmanuel Agu

Bringing Android Apps to Tizen. Kevin Menice, OpenMobile World Wide, Inc. SVP & GM, Embedded and Core Technologies November 11, 2013

GENIVI FAQ. What is the GENIVI Alliance?

SMARTDEVICELINK CONNECTIVITY FROM THE CAR S POINT OF VIEW

Driving the User Interface. Trends in Automotive GUIs

Lee Barnes, CTO Utopia Solutions. Utopia Solutions

APPLICATION DEVELOPMENT FOR THE IOT ERA. Embedded Application Development Moves to the Cloud

Position Paper for W3C Web and Automotive Workshop. Marius Spika, Mark Beckmann

HTML5 AUTOMOTIVE 2013 White Paper Series

Workshop on Android and Applications Development

Utilizing Wireless Data Network for AVL and Mobile RWIS

Toward Connected Vehicle with AGL

Example of Standard API

Middleware- Driven Mobile Applications

AppConnect FAQ for MobileIron Technology Partners! AppConnect Overview

Mobile App Testing Process INFLECTICA TECHNOLOGIES (P) LTD

Sophos Mobile Control Administrator guide. Product version: 3

Network Licensing. White Paper 0-15Apr014ks(WP02_Network) Network Licensing with the CRYPTO-BOX. White Paper

DevOps Best Practices for Mobile Apps. Sanjeev Sharma IBM Software Group

Intel HTML5 Development Environment. Tutorial Building an Apple ios* Application Binary

Chapter 1. Introduction to ios Development. Objectives: Touch on the history of ios and the devices that support this operating system.

ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL I)

Image Area. White Paper. Best Practices in Mobile Application Testing. - Mohan Kumar, Manish Chauhan.

IOTIVITY AND EMBEDDED LINUX SUPPORT. Kishen Maloor Intel Open Source Technology Center

Process Quality Manager Monitor and document process data. With ConnectedManufacturing Solutions by Bosch Software Innovations. Software Innovations

HTML5 Applications Made Easy on Tizen IVI. Brian Jones / Jimmy Huang

Sophos Mobile Control Administrator guide. Product version: 3.6

Understanding Mobile Apps for Automotive. Kerry Johnson, Senior Automotive Product Manager

Università Degli Studi di Parma. Distributed Systems Group. Android Development. Lecture 1 Android SDK & Development Environment. Marco Picone

Open EMS Suite. O&M Agent. Functional Overview Version 1.2. Nokia Siemens Networks 1 (18)

HTML5 and Device APIs for Automotive: Is it time to power Infotainment and Car Portal Applications with Web Technologies?

Mobile application testing for the enterprise

Adobe Digital Publishing Security FAQ

Developing Mapping Applications with ArcGIS Runtime SDK for Windows Mobile. Jay Chen Justin Colville

ASHVINS Group. Mobile Application Testing Summary

Introduction to Android

Advanced Safety. Driver Vehicle Interface Collision Avoidance & Mitigation Vehicle Communications. Helping industry engineer safe vehicles

Android Auto PoC. October Oct-15. Maxim Ovchinnikov Architect Harman

Getting Started with Android Programming (5 days) with Android 4.3 Jelly Bean

GROUPTALK FOR ANDROID VERSION for Android

Wave 4.5. Wave ViewPoint Mobile 2.0. User Guide

A Survey of Existing Technologies, Applications, Products, and Services for Geofencing

Safety Integrated. SIMATIC Safety Matrix. The Management Tool for all Phases of the Safety Lifecycle. Brochure September Answers for industry.

Mobile App Testing Guide. Basics of Mobile App Testing

Programming the Internet of Things

Choosing a Mobile Application Development Approach

Building the Internet of Things Jim Green - CTO, Data & Analytics Business Group, Cisco Systems

Dell NetVault Bare Metal Recovery for Dell NetVault Backup Server User s Guide

1... Overview of Project Portfolio Management with SAP Requirements Scenario for Project Portfolio Management

Course 10978A Introduction to Azure for Developers

Customer Release Notes for Xerox Integrated Fiery Color Server for the Xerox Color C75 Press, version 1.0

Radio R 4.0 IntelliLink Frequently Asked Questions

UP L18 Enhanced MDM and Updated Protection Hands-On Lab

Developing accessible portals and portlets with IBM WebSphere Portal

Windows Phone 8 Security deep dive

CLOUD COMPUTING FOR THE ENTERPRISE AND GLOBAL COMPANIES Steve Midgley Head of AWS EMEA

YOUR STRATEGIC VIRTUALIZATION ALTERNATIVE. Greg Lissy Director, Red Hat Virtualization Business. James Rankin Senior Solutions Architect

Mobile Test Strategy. Shankar Garg. Senior Consultant - Testing

smartphone app testing

The "Eclipse Classic" version is recommended. Otherwise, a Java or RCP version of Eclipse is recommended.

September 2009 Cloud Storage for Cloud Computing

Reminders. Lab opens from today. Many students want to use the extra I/O pins on

Espial IPTV Middleware. Evo Solution Whitepaper. <Title> Delivering Interactive, Personalized 3-Screen Services

Buzztouch SDK Partner Program

ANDROID AUTO TM TROUBLESHOOTING GUIDE CONNECTIONS DATA SIGNAL STRENGTH 1. NO/WEAK DATA SIGNALS

MS 10978A Introduction to Azure for Developers

GO!Enterprise MDM Device Application User Guide Installation and Configuration for Android

EB TechPaper. Test drive with the tablet. automotive.elektrobit.com

Developer's Cookbook. Building Applications with. The Android. the Android SDK. A Addison-Wesley. James Steele Nelson To

Taxi Service Design Description

Professional navigation solutions for trucks and fleets

GEMALTO M2M KEY TECHNOLOGY TRENDS OF M2M

Lab 0 (Setting up your Development Environment) Week 1

Application Framework: Apertis Hands-on

Advanced Testing Methods for Automotive Software

[PACKTl. Flash Development for Android Cookbook. Flash, Flex, and AIR. Joseph Labrecque. Over 90 recipes to build exciting Android applications with

Adobe Flash Player and Adobe AIR security

Game Center Programming Guide

Location Identification and Vehicle Tracking using VANET(VETRAC)

Adobe Summit 2015 Lab 718: Managing Mobile Apps: A PhoneGap Enterprise Introduction for Marketers

Implementation of CVIS ITS Application in a Driving Simulator Environment Kenneth Sørensen, kenneth.sorensen@sintef.no SINTEF

Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013

Android App User Guide

Getting Started with Tizen SDK : How to develop a Web app. Hong Gyungpyo 洪 競 杓 Samsung Electronics Co., Ltd

Sabre Red Apps. Developer Toolkit Overview. October 2014

Android Architecture. Alexandra Harrison & Jake Saxton

Present and Act Upon. Register. Consume. Stream Analytics. Event Hubs. Field Gateway. Applications Cloud Gateway. Legacy IoT (custom protocols)

IBM API Management Overview IBM Corporation

SAS Mobile BI Security and the Mobile Device

GO!es MOBILE. YOUR Enterprise. The Challenge. The Solution. Mobilise Your Services Reach Anybody, Anywhere, Anytime

Resco CRM Guide. Get to know Resco CRM

Transcription:

for App Developers One Place for Automotive Apps 2013 Car Connectivity Consortium. All Rights Reserved. Ed Pichon February 18, 2013

for Application Developers Developing Automotive Applications is a Technical and Business Challenge Fragmented Ecosystems Limited user experience Technical and Process Hurdles CCC is Working to Make the One Place for Automotive Application Developers 2

Overview A Developer s Perspective In-Vehicle Display In-Vehicle Services GPS/Location Data Day/Night Mode In-Vehicle Controls Park/Drive Mode Audio In/Out 3

Topics Common Interface Giving developers access to capabilities Application Certification Levels of certification Certification process Application Certification Management System System overview Developer interfaces Developer Support Elements 4

Common Interface Ensuring interoperability 5

Common Interface The Automotive Interoperability Challenge App Variant 1 App Variant 2 App Variant 3 Application Custom API 1 Mobile Phone 1 Protocol 1 Head Unit 1 Custom API 2 Mobile Phone 2 Protocol 2 Head Unit 2 Custom API 3 Mobile Phone 3 Protocol 3 Head Unit 3 Common API Server (Phone) Client (Head Unit) Server (Phone) Client (Head Unit) Server (Phone) Client (Head Unit) 6

Common API Solution Addressing the Interoperability Challenge Server (Phone) Client (Head Unit) Application Common API Server (Phone) Session Client (Head Unit) Server (Phone) Client (Head Unit) Define a Common API Required functions that must be provided to applications Platform-Specific API Define the API prototypes and behavior to provide Common API functionality Servers Implement Platform-Specific API Extensive testing to ensure that each server manufacturer s implementation works correctly Common test application for each mobile device platform 7

Common API Capabilities Overview Session Info version Client information Application Certification Info Certification status Certifying entity Connection Info Audio and video capabilities Display Configuration Client resolution and geometry Scaling in operation Screen orientation control Available Controls Shift knobs Touch capabilities Available keys & mappings Context Information Framebuffer status, blocking and controls Audio status and blocking Device Status Features Drive and night modes Microphone activation Data Services Access Common Data Bus/Service Binary Protocol Client-provided location and GPS services Additional services possible Client-Based Notifications Use Client-UI for notifications and messages 8

Application Certification Certification requirements & process 9

Application Certification Categories Base-Certified Display interoperability size, resolution, orientation User interface controls single-touch and rotary/shift knob operation Test with multiple client devices with different displays and controls Drive-Certified Certified to a maximum level of allowed driver-distraction Allows use while in drive-mode More rigorous testing requirements Member Base- and Drive-Certified White-list applications Bypass CCC testing requirements Only valid for vehicles from certifying OEM 10

Drive-Certified Application Requirements Compilation of Regional Guidelines Regional Guidelines Europe European Statement of Principles on Human Machine Interface for In-Vehicle Information and Communication Systems APAC Guidelines for In-vehicle Display Systems from JAMA North America Statement of Principles, Criteria and Verification Procedures on Driver Interactions with Advanced In-Vehicle Information and Communication Systems from Alliance of Automobile Manufacturer Guidelines Global Guidelines Aggregate Superset of the Regional Guidelines General Principles of Reducing Driver Distraction No time-sensitive interactions Limit visual distractions Limit quantity of displayed text Workload Verification Methods Occlusion goggle testing Shutter timings, test subject pool UI Restrictions General design principles Visual design restrictions (contrast and color, text size) Responsiveness Sound levels 11

Global Guidelines Overview & Excerpts Basic Design Principles The system should not present information which may result in potentially hazardous behavior by the driver or other road users. Restricted Content Both automatic scrolling and user controlled manual scrolling shall be prohibited. Navigation, Radio and Warning Information Presentation UI Design Principles The driver should be able to resume an interrupted sequence of interactions with the system at the point of interruption or at another logical point. Visual Accessibility A 5 x 7 (width-to-height) character matrix shall be the minimum used for alphanumeric characters The stroke width-to-character height ratio for alphanumeric characters shall be between 0,08 and 0,2 Audio/Manual Accessibility 12

Drive-Certified Application Requirements Certification Testing Challenges Glance Timing Testing Most Rigorous Requires simulator, eye-tracking hardware Occlusion Testing is Common Verification Technique Shutter open for X seconds, off for Y seconds Measure total open time to complete tasks Maximum allowed total time to complete a task Multiple Test Subjects Required 10, variety of ages, even mix of male/female Must train subject prior to testing Complex Testing Requirements Application Does Not Have Final Control of Displayed Content Framebuffer scaling and geometry Contrast ratio and color saturation of client 13

Drive-Certified Application Requirements Certification Complexity Reduction Global Guidelines Aggregate Superset of the Regional Guidelines General Principles of Reducing Driver Distraction Workload Verification Methods UI Restrictions 3rd Party Research Tie guidelines to technical requirements to show that if an app follows guidelines, it will meet requirements. CCC Design Cookbooks Developer-focused requirements Basic design principles Font selection guidelines Text display restrictions Color combinations/contrast ratios Discouraged UI Elements Acceptable UI design patterns Baseline Client Configuration CCC s Goal: Make it Easier to Comply With Guidelines, and Make it Easier to Test 14

Application Certification Process High Level Overview Create App Use developer certificates to allow for testing on certified ML devices. Create Self-Signed App Certificate Contains information for listing in Session Included in install package Platform specific Indicates to Server that App is Aware and may have a CCC-Signed Certificate Submit App for Certification Testing Contract with CCC authorized test lab Submit reports to CCC App Certification Body or Member Whitelisting Distribute App Use existing marketplaces Update existing app using existing systems CCC-Signed Certificate Generated servers download certificates for installed apps Users can begin using application in 15

App Cert Management System ACMS for Developers 16

Application Certification Basic Architecture App Indicates that it May be Certified Server Checks with ACMS for Application Certificate Automatic, periodic checks Grace periods for offline activities Application Certificate Certification category Descriptive information about app for use by Client Changes to Certificate Can Occur Without Changes to Application Change category on-the-fly as testing completed Transparent to Existing Distribution Systems No modification or integration with existing application marketplaces App Certificate Management System Application Certificates Certificate Status Info Server Devices Phones & other mobile devices Application Certificates Certificate Status Info App Identifier Application Cert Available? Client Devices Head units 17

App Cert Management System Developer Interactions Initial Configuration of CCC-Signed Application Certificate Basic application information Request Changes to the Certificate Subject to approval by CCC App Certification Body Notify of New Versions Provide updated application identifier (platform specific) Perform new tests as directed Request Developer Certificates Request a unique Developer ID Provide IDs for devices used for testing View Application Metrics 18

Developer Actions Obtain ID from ACMS Provides Server IDs to ACMS Include Developer ID in Self- Signed App Cert Provide Developer ID to Server Server Retrieves Developer ID Certificate from ACMS Validates Developer ID matches and Server ID is valid Presents app as CCC-certified app to Client Developer Certificates Allowing Developers to Test on Certified Devices ML Client Device Allows Developers to Test Apps on Certified Devices Application Certificate Management System Developer ID Certificate Developer ID, Server Device IDs Server Device Developer ID Status Query Developer IDs, Server Device ID Dev-Signed Application Certificate Server Device IDs Developer Server IDs Developer ID 19

Developer Support Elements CCC Activities to Support App Developers 20

Developer Support Elements CCC Activities to Support App Developers Developer Portal Document archive Support forums FAQs and How-Tos Example Code Common API test app Demonstration app code Design Cookbook Research Developer-friendly recipes for reducing driver distraction Reduce testing requirements for applications Development Tools Support Software Development Kits Client Simulators CCC s Goal: Make it As Easy as Possible to Develop Applications 21

Opportunities for Developers Combination of Guidelines & Common API CCC Design Cookbooks Developer-focused requirements Basic design principles Font selection guidelines Text display restrictions Color combinations/contrast ratios Discouraged UI Elements Acceptable UI design patterns Platform-Specific Common APIs Defined by OS device vendors and platform owners. All implementations for that OS must implement same API Defined header files, or equivalent SDKs OS Specific Enforce design guidelines in UI composition Integrate with developer portal & ACMS Integrate generation of self-signed application certificates 22

Application Test Tools Tools to Aid App Developers Client Emulator Simulate Multiple Client Configurations Multiple screen sizes Multiple control interfaces - Single-touch/Multi-touch - Rotary/shift-knobs Simulate Client Data Device status Context information Data services Allow Developers to Test Application Behavior Against Multiple Client Configurations Evaluate designs for driver distraction impact Evaluate control response schemes Incorporate Test Automation/Extend Extending Software Test System for Additional Utility Application API API API Server OS, System Resources Session Client Emulator 23

Final Thoughts Developing Automotive Applications is a Technical and Business Challenge CCC is Working to Make the One Place for Automotive Application Developers Increased Interoperability Compelling User Experience Simple Processes Reducing Technical Hurdles 24

Panel Discussion Introductions & Open Questions 25

Antti Aumo Ixonos Plc Bio Antti Aumo is Vice President Marketing at Ixonos, a creative solutions IT company. He leads the marketing efforts for new Ixonos services and products worldwide. Antti has 20 years versatile and international work experience in product portfolio management, product marketing and marketing communication. He has worked in management positions in several multinational companies, including Nokia and Landis+Gyr, in Finland and abroad 26

Robert Hrabak General Motors Bio Robert Hrabak is currently a connectivity specialist for General Motors, where he leads Bluetooth feature definition and technical specification of connectivity-enabled software in Chevrolet MyLink & GMC/Buick Intellilink radios. He also serves as an officer and steering committee member for the Car Connectivity Consortium, and represented GM in CCC since its formation. Prior to GM, Hrabak played a central role in launching multiple Motorola phones shipping with Bluetooth, including the iconic Motorola RAZR. He served as lead Bluetooth engineer at Harman to realize connectivity in automotive infotainment systems for North America between 2007 and 2009 and over the course of his career has held positions and worked with leading brands such as Broadcom and Android. 27

Joel Sucherman National Public Radio Bio Joel Sucherman is Senior Director for Digital Products at NPR, guiding strategy for the group that builds the presence on emerging platforms for the Washington-based radio network. NPR (formerly National Public Radio) is a network of more than 800 radio stations with 17 international bureaus. Sucherman s mobile group covers everything from small screen, tablets, up through connected cars. Prior to NPR, Sucherman was chief digital evangelist for USA TODAY, helping the largest American newspaper re-imagine storytelling on various platforms. He has more than 20 years experience in U.S. media companies. 28

Panel Discussion Open Questions 29

Backup Slides 30

Complex Operational Environment Baseline Client & Car Environment Requirement: Text Characters Must Be Legible Application Does Not Have Final Control Text Appearance Scaling between Server and Client Color depth and contrast of Client Display Distance E Define Worst Case Baseline Scenario Define Minimum Contrast Ratios Provide Information to App via API Height of Character Application Common API Server (Phone) Session Baseline Head Unit Baseline Vehicle Environment Head Unit Geometry, Minimum Available Controls User 31

Common API The Interoperability Challenge Applications Need Access to Server, Client and Session Information Take advantage of offered controls, services and capabilities Create a compelling user experience Each Server Manufacturer May Have a Different Ways of Exposing These Systems Fragment the ecosystem Limit user-base of an application App Variant 1 Custom API Server (Phone) Client (Head Unit) App Variant 2 Custom API Server (Phone) Session Client (Head Unit) App Variant 3 Custom API Server (Phone) Client (Head Unit) 32

Test App as Example Code Test App for Testing Common API Implementation Tester sends message via Test App Platform 1 Test App Test App displays callback information. Test App calls Common API method Common API Implementation Server Common API Implementation Server Platform 1 OS, System Resources Common API Implementation Server Common API invokes a callback method. CTS Checks that proper message sent to ML Client. CTS CTS sends ML Client message to ML Server. Test App Will Show How Each Element of Common API Operates 33

Application Certificates for Developers Impact on Application Developers App Certificate Management System Certificate Distribution App & Dev Certificates Management Portal Server Devices Phones & other mobile devices Client Devices Head units ML App Certificates distributed to server devices over the Internet. App Certificate tells Servers & Clients when the app is safe to use, and where. Apps Certification Body Car Connectivity Consortium CB reviews and approves changes to Cert. Status Info. Car Manufacturers Test Labs App Stores Developers Apps Mobile Device Manufacturers SDKs/APIs Apps do not contain ML App Certificates. OEMs can whitelist and blacklist specific applications. ACMS Integration Requires No Changes to Application 34