Вы находитесь на странице: 1из 18

Defragging Your Android Development

Jeff DeCew Mobile Engineer Arjun Dayal Product Lead


Slide 1

Meet Your Presenters!

Jeff DeCew Android Mobile Engineer Olin Engineering Former Software Engineer at Blue Origin

Arjun Dayal Android Product Lead MIT Course 6 Former PM on Xbox Kinect

Pocket Gems
Founded 2009, backed by Sequoia Capital
14 Android and iOS and titles Pioneer in free to play mobile games 1st farm game 1st store game 1st zoo game 1st hotel game

1st exploration simulation game

Android growth is accelerating!

> 300 million activations to date 850,000 new activations per day > 1 Billion app installs per month! New Google Play consolidated marketplace

= Huge Opportunity!

Pocket Gems 4 titles on Android with Many More to Come!

Tap Zoo (iOS #1 grossing app in 2011)

Tap Zoo: Santas Quest

+ Many More To Come!

Tappily Ever After

Tap Safari (New!)

So much is involved in creating a successful game

1. Killer game concept 2. Intuitive UI & engaging art 3. In-App Purchase vs. paid 4. Backend services + scale for millions of users But dont forget about 5. Device type support 6. Memory and performance 7. Regions & locales

Tip 1: Pick the right set of devices that make your experience shine!

Lots of choice is great, but dont let it bog you down

Start with market device info

Its better to exclude a device for launch than receive poor ratings from users who have a subpar experience

Tip 2: Dont forget that screen resolution matters

Tablets vs. high res phones vs. low res phones

Android allows you to restrict


Scale UI appropriately

10 tablet vs. a 4 phone yields different results!


Teeny tiny button hit targets on a high res phone dont work well Know your limits!

Use the right tools

Script your builds! Build with an IDE sparingly Sandbox your QA and Production builds Utilize CI systems

Unit and integration testing with Robolectric


Makes testing simpler and easier

Add a cheat menu

Welcome to the matrix. Place your bets!


2.1
Galaxy Ace Droid X Galaxy Nexus Galaxy Tab (Tablet)

2.2

3.1

4.0

4.0.3

LG Optimus

Note: For illustration purposes only.

Welcome to the matrix. Place your bets!


2.1
Galaxy Ace Droid X Galaxy Nexus Galaxy Tab (Tablet)

2.2

3.1

4.0

4.0.3

LG Optimus

Note: For illustration purposes only.

Evolve the matrix over time with new data!


2.1
Galaxy Ace Droid X Galaxy Nexus Galaxy Tab (Tablet)

2.2

3.1

4.0

4.0.3

90 % of $$$

LG Optimus

Note: For illustration purposes only.

Now that I have chosen, what should I be running?

Full pass: Select devices Compatibility tests - "Broad, but shallow


Touch every feature

Minutes, not hours

Prioritize most popular devices vs. all


Test to the s

Its all about risk!

Feedback loop is key. Leverage the tools you already have!

Standard loop: Develop -> QA -> Release Google crash reporter, stats on devices, OS version, country, etc.

Develop

QA

Release!

Crash Reports

Learn from your mistakes

Have a robust, verbose crash reporting system Stack traces and info stacks
Automatic deobfuscation

Rolling log data Group reports hash based on partial stacktrace Prioritization is key Move on if there is not enough info

Utilize reviews and customer support

Provide the right experience to the right people!

Tiered failure schemes help everyone

Dear Developer, Stop writing garbage code!

Dear QA, File a bug on this issue please! -Android User continues on with normal game play, but log is created.

-Android

CRASH!

New ICS features are compelling

Design custom android experiences! Android Beam Resizable widgets Google+ integration

Thanks + Q&A
Were accepting resumes right now! Email jobs@pocketgems.com
We love partnering with other developers! Use our new kiosk to start earning $$$ now: http://pocketgems.com/kiosk

Presenters: arjun@pocketgems.com, jdecew@pocketgems.com

Slide

Вам также может понравиться