Droidcon London 2010 - Android Beyond Phones

268 views
213 views

Published on

These are the slides from my Droidcon 2010 talk; Android beyond 'phones

Published in: Technology, Business
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
268
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Droidcon London 2010 - Android Beyond Phones

  1. 1. Funky Android Ltd. http://www.funkyandroid.com/ Android beyond the phone; Tablets, eReaders, & more Al Sutton, Funky Android Ltd.
  2. 2. www.funkyandroid.com Why Bother? • Tablets, eReaders, etc. aren’t like ‘phones • The Register reports TownHall research estimates over 500 MILLION tablets shipped by 2015*. • The 500 million figure doesn’t include eReaders, Desk ‘phones, and.... TVs. • Users with bigger screens want a bigger screen experience and will prefer apps that can give it to them. *Source : http://www.theregister.co.uk/2010/10/03/rim_blackberry_playbook/
  3. 3. www.funkyandroid.com Why Bother? • Smartphone purchased running Android = 32%* • 32% of 500 Million = 160 Million • Sell to 0.1% of 160 Million = 160,000 purchases • £1 per app sale = £160,000 *Source : Neilsen Company August 2010 data
  4. 4. www.funkyandroid.com Known brands • Dell Streak • Samsung Galaxy Tab • Sony Google TV • Toshiba AC100 • Dixons Advent Vega • Amazon Kindle?
  5. 5. www.funkyandroid.com #1 Think Landscape
  6. 6. www.funkyandroid.com Device Design •Dell Streak. •Buttons on Right. •Premium Case with kick stand. •All push user towards Landscape mode.
  7. 7. www.funkyandroid.com #2 Think large
  8. 8. www.funkyandroid.com Resources • -large modifier for screens over 4.8” in size • Add elements for a large screen • findViewById(xxx) != null if they’re in being shown • Activate logic if they’re on screen.
  9. 9. www.funkyandroid.com #3 MDPI != HVGA
  10. 10. www.funkyandroid.com Resolution Assumptions • Don’t assume -ldpi is for a QVGA device, - mdpi is for a HVGA device, and -hdpi is for a WVGA device • Dell Streak is a WVGA MDPI device • Galaxy Tab is a WSVGA HDPI device
  11. 11. www.funkyandroid.com Getting it wrong
  12. 12. www.funkyandroid.com Facebook •Portrait Only •Lots of unused space •Activity Areas no bigger than on a Nexus One
  13. 13. www.funkyandroid.com Twitter •Portrait Only (again) •Lots of unused space (again) •“Floating” bubbles •Tiny bird
  14. 14. www.funkyandroid.com Device specific features
  15. 15. www.funkyandroid.com Device Specific Code • Keep to as few binaries as possible • Use reflection (see http://goo.gl/8hpP ) • Use library projects (see http://goo.gl/ mHnC )
  16. 16. www.funkyandroid.com Non CDD Device; The Alex (http://www.springdesign.com/)
  17. 17. www.funkyandroid.com Alex Features •Dual Screens •EPD Grey Scale (6” 800x600 pixels) •LCD Colour Touch Screen (3.5” 480x320 Pixels) •eReader focused buttons
  18. 18. www.funkyandroid.com Two screens? • EPD screen = Longer battery life & more readable • LCD screen = Touch capable, faster redraw time & colour • Can display different information
  19. 19. www.funkyandroid.com Accessing the screens • Two layouts in One file using a FrameLayout. • LCD layout in element. EPD Layout in another; <FrameLayout android:layout_width="fill_parent android:layout_height="fill_parent"> <LinearLayout android:id="@+id/epdLayout" ...> {EPD Layout} </LinearLayout> <LinearLayout ...> {LCD Layout} </LinearLayout> </FrameLayout>
  20. 20. www.funkyandroid.com eReader Functionality • Custom Class to access eReader functionality; import android.widget.EpdRender; ... private final EpdRender epdRender = new EpdRender(){ @Override public boolean onFontKeyPressed(int arg1, int arg2) { .... return true; } @Override public boolean onPageUp(int arg1, int arg2) { .... return true; } @Override public boolean onPageDown(int arg1, int arg2) { .... return true; } };
  21. 21. www.funkyandroid.com Displaying on the EPD • Uses the EpdRender custom class • One call to pick the layout; epdRender.bindLayout( (ViewGroup)findViewById(R.id.epdLayout) ); • Another to update the EPD; epdRender.updateEpdView(); • Treat as a normal display, calling updateEpdView after each set of changes.
  22. 22. www.funkyandroid.com Getting to the users
  23. 23. www.funkyandroid.com OEM Deals • Non-CDD devices OEMS want apps • Discounts to list price are normal • No App Store / Market fees
  24. 24. www.funkyandroid.com Alternative App Stores • Already on a number of devices • Wide range of users • Varying fees (0% to 30%) • Examples : AndAppStore, SlideME, GetJar
  25. 25. www.funkyandroid.com Directly from you • Easy to do, hard to be visible. • Consider marketing work • Consider time to list on an alternative market • Consider possible anti-piracy measures
  26. 26. Funky Android Ltd. http://www.funkyandroid.com/ Questions ?

×