Top Banner
Android Fragmentation.co m The Open Android Device Knowledge Base
32

AndroidFragmentation.com – an open community project

May 06, 2015

Download

Technology

Joachim Ritter

This presentation is about an open community project called AndroidFragmentation.com which aims at becoming a central imformation hub for specific fragmentation related device information.
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: AndroidFragmentation.com – an open community project

Android Fragmentation.com

The Open Android Device Knowledge Base

Page 2: AndroidFragmentation.com – an open community project

What is this all about?

• Android is a great platform. But its growing fragmentation destroys value for developers, consumers and carriers.

• This presentation introduces a community effort that enables developers to share knowledge about device specifics and address the problems before their apps hit the market– AndroidFragmentation.com– Open Source project android analyzer

Page 3: AndroidFragmentation.com – an open community project

Friendly Reminder

• Fragmentation isn‘t evil, it‘s the natural result of an open market place and diverse demand.

• No reason to get emotional about it (like many people do)!

• No reason to blame anyone. • No reason to deny its existance.

Page 4: AndroidFragmentation.com – an open community project

The Problem

Photo by Brantano Shoe City

Page 5: AndroidFragmentation.com – an open community project

The Problem

Theory:

Page 6: AndroidFragmentation.com – an open community project

The Problem

Theory: Practice:

Page 7: AndroidFragmentation.com – an open community project

The Problem

• The Android platform is fragmented• Different Android OS versions• Different form factors• Different UIs (and other OEM specifics)• Different device categories (mobiles, tablets,

cars…)• …

Page 8: AndroidFragmentation.com – an open community project

The Problem

• Android apps don’t run on all devices• Higher development cost for developers• Possible reach goes down

• Less “platform value” for end consumers• Less revenue for developers• Less selling points for carriers & OEMs

• Higher customer care expenditures

Page 9: AndroidFragmentation.com – an open community project

Fragmentation Examples• … our developer spent ~1hr on implementing a

progress animation in a home screen widget, and another ~4hrs porting it and making it consistent across Archos 5IT, Google Nexus One, HTC Hero and G1

• Blinkendroid project: Works fine on all phones except the Motorola Milestone. Some UDP related problem.

• DroidSpray: Problems with touch events on GL surface over camera view. Device specific re-ordering of views required …

Page 10: AndroidFragmentation.com – an open community project

Fragmentation Examples• Android platform API increments: basic APIs like

Bluetooth added continuously to the platform• API behavior inconsistency: bug #4961

(File.getCanonicalPath throws exception) introduced in 2.x, but the same method works in previous versions

• Screen size and resolution: apps should provide special layouts and drawables for different sizes/resolution combinations.

Page 11: AndroidFragmentation.com – an open community project

Fragmentation Examples• OEM specifics:

• receiving multicast messages over WiFi is disabled in the Linux kernel for most HTC devices, but is enabled on Archos 5IT

• Supported file types and formats: Droid can record raw .aac audio files, but most Android phones don’t support this file type, although they support the codec (based on specs)

• Devices come with different themes, which always eat a pixel here and there

Page 12: AndroidFragmentation.com – an open community project

Fragmentation Examples• Issue 4739: 2.0 SDK breaks older contact apps.

summary: 2.0 seems to require apps to set a newly defined field when adding a contact programmatically. thus, old apps that don't set it won't work properly

• …

What‘s your favorite example?

Page 13: AndroidFragmentation.com – an open community project

Facts andFigures

Page 14: AndroidFragmentation.com – an open community project

Android OS Lifeline

2008 2009 2010 2011

October ‘08:Android OSS Project,

v1.0 launch,G1 on sale

February ’09: v1.1

April ‘09: v1.5

September ‘09: v1.6

October ‘09: v2.0

December ‘09: v2.0.1

January ‘10: v2.1

May ‘10: v2.2

Q4 ‘10: v3.0

Page 15: AndroidFragmentation.com – an open community project

Device Launches per OEM

* Source: http://en.wikipedia.org/wiki/List_of_Android_devices

** Source: http://pdadb.net

Total: 194 Devices (as of July)

56

3420

18

15

98

76 4 4 4 3 3 3

OEMs with 1 Device LaunchOEMs with 2 Device LaunchesMotorolaHTCSamsungAcerDellHuaweiLGSony EricssonZTEFirstOneBluelans CommunicationEkenPhilips

Page 16: AndroidFragmentation.com – an open community project

37%

26%

24%

6%3% 2% 2%

Android 2.1

Android 1.5

Android 1.6

Android 2.2

Android 2.0

Android 2.0.1

Android 1.0/1.1

Device Distribution per OS Version

* Source: http://en.wikipedia.org/wiki/List_of_Android_devices

** Source: http://pdadb.net

Page 17: AndroidFragmentation.com – an open community project

17%

16%

14%11%

10%

5%

4%

4%

3%

3%3%

3% 1% 1% 1%1%1%1%1%1%

3.2"

2.8"

3.5"

3.7"

7"

3"

3.1"

5"

10.1"

2.6"

4"

4.3"

4.8"

3.8"

15.6"

2.7"

3.4"

3.6"

4.1"

8"

Device Distribution per Screen Size

* Source: http://en.wikipedia.org/wiki/List_of_Android_devices

** Source: http://pdadb.net

Page 18: AndroidFragmentation.com – an open community project

40%

24%

20%

6%3% 2% 1% 1%1%1%1%

WVGAHVGAQVGAWQVGAWSVGA360x4001366x768VGA360x480960x480SVGA

Device Distribution per Resolution

* Source: http://en.wikipedia.org/wiki/List_of_Android_devices

** Source: http://pdadb.net

Page 19: AndroidFragmentation.com – an open community project

Device Types and Markets

Mobile Phone

TVInternet Tablet

Telematics and NavigationSet-top Box

Page 20: AndroidFragmentation.com – an open community project

Highlights• Huge amount of devices launched: 194 models in 23

months• Active OS versions & APIs on the market: 6 (out of 8)• On average, new OS release announced every ~4

months• Over 8 screen resolutions on the market, excluding

orientation and resolution families• At least 20 different screen sizes, that affect the DPI• Variety of vertical markets with own specifics

Page 21: AndroidFragmentation.com – an open community project

Bottom Line

• Will fragmentation go away? No!• What can we do about it? Embrace it!• Let’s engage as a community and create a

knowledge base about this problem!

Page 22: AndroidFragmentation.com – an open community project

Solution?

Page 23: AndroidFragmentation.com – an open community project

AndroidFragmentation.com• Free hub for fragmentation knowledge• Purpose: discuss, learn, compare, share• Contents:

– Database with device- and firmware-specific information, APIs, hardware & software capabilities, etc. (coming soon)

– News Feed & Forum– Device search and comparison (coming soon)

• Database fed by a client app developed by the sister project Android Analyzer hosted on Google Code

Page 24: AndroidFragmentation.com – an open community project

AndroidFragmentation.com

AF.com

DeviceCapability

DB

WebServer

Analyzer

Website

Webservice

Tools

Page 25: AndroidFragmentation.com – an open community project

Enter AndroidFragmentation.com

Page 26: AndroidFragmentation.com – an open community project

Device Capability Database

Preview

Page 27: AndroidFragmentation.com – an open community project

Android Analyzer App• Open source client-side project on Google Code:

http://code.google.com/p/android-analyzer/• Collects data and sends to the server• Users can extend the report with their own findings• Will evolve as Android OS evolves• Will be published on the Market

!!! Everyone welcome to contribute !!!

Page 28: AndroidFragmentation.com – an open community project

Android Analyzer App

Page 29: AndroidFragmentation.com – an open community project

Android Analyzer: Plugins

Page 30: AndroidFragmentation.com – an open community project

Coming Soon• AndroidFragmentation.com Roadmap:

– Q3/2010: Forum, device database, reports, comparison, advanced search– Q4/2010: UI enhancements, web-based data edit and comments– Idea: Ecplise plugin for auto validation of APIs used in your project– Idea: Open APIs for access to device capability database

• Android Analyzer App Roadmap:– Q3/2010: analyzer core, pluggable architecture, data collection based on

available Android APIs, reporting to backend, user comments– Q4/2010: enhanced user interface and reporting on the device, fine-

grained data edit and comments– Q1/2011: advanced capability detection, auto-testing (e.g. media

formats), support for OEM-specific extensions

Page 31: AndroidFragmentation.com – an open community project

Your Feedback Needed!

• PLEASE tell us what you think!• Send us your suggestions about how to

improve the site and what services to offer!• Any feedback is very much appreciated!

Feedback can be sent through web site or to email address [email protected]

Page 32: AndroidFragmentation.com – an open community project

[email protected]/joritter

ThanksAndroid Stammtisch

Rheinland

15.09. Köln