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: Santa’s 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 don’t 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 don’t let it bog you down

 Start with market device info

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

Tip 2: Don’t 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 don’t 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

 It’s 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
 We’re accepting resumes right now! Email jobs@pocketgems.com
 We love partnering with other developers! • Use our new kiosk to start earning $$$ now: http://poc​ketgems.co​m/kiosk

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

Slide

Sign up to vote on this title
UsefulNot useful