• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Android developer's toolbox
 

Android developer's toolbox

on

  • 2,112 views

 

Statistics

Views

Total Views
2,112
Views on SlideShare
2,100
Embed Views
12

Actions

Likes
11
Downloads
48
Comments
0

3 Embeds 12

http://www.linkedin.com 9
http://www.twylah.com 2
https://twitter.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • you’re welcome to create pull requests
  • When releasing you don’t need the instrumentation testsWhen releasing you need to sign + zipalign + proguard + proguard ….
  • singleton
  • ViewById by name conventionRestService – idea is similar to retrofit

Android developer's toolbox Android developer's toolbox Presentation Transcript

  • Alex Verdyan@aexxx
  •  Build tools  ant, maven Libraries  Roboguice, retrofit, ormlite, androidannotatation s, Testing  Fonemonkey, robolectric, robotium solo Stuff  acra, bugsense,
  • Pros  developed by Google (Android tools team)  Gets all the latest SDK improvements  Generated from Eclipse (ADT)Cons  No dependency management ( needs Ivy)  Not trivial to contribute (or debug)  Ant…
  •  founded by JAYWAY developed by the community Hosted on github – easy to contribute/debug Easy to setup Dependency management  Jars depend on other jars with versions Supports  package (apk/apklib), jar sign, zipalign, proguark, native, scala and more Runs tests  start emulator prior to running test
  •  Use Maven profiles to distinguish dev from release build
  •  Based on Google Guice Simplify your code make it more readable Remove boilerplate PLUS: You get the power of dependency injection (Guice)  Automatic Injection  Loose coupling  Testing with Mocks
  •  Re-usabale library by Square Inc. Interesting stuff  RestAdapter – abstraction over HTTP for Android ▪ Create a Java interface for your services  ShakeDetector  QueueFile (for storing a Q on Android filesystem)
  •  Does all the dirty HTTP work for you All calls are Async  can be used from UI thread w/ callback Built-in JSON support Uses JdkProxy, Guice and Gson
  •  Lightweight ORM Makes DB interaction more pleasant Code more readable Mature project Good documentation + large community Excellent support from the project owner Grey Watson http://256.com/gray/
  •  Provides Android specific annotations to make the code even more readable Can be integrated with roboguice Works by generating code during build process
  •  Relatively new (4-6 month)  Backed up by commercial firm (Gorilla Logic)  Record your tests  Adjust playback speed  Add conditions  Generate JUnit from the recording  Tests can run as plain JUnit (it communicates with the app inside emulator)* very elegant solution for test recording
  •  Selenium like UI + Functional testing framework Runs on Emulator/Device
  •  You can run tests from IDE No emulator Fast Enables TDD No mocking framework neededhttp://github.com/pivotal/robolectric
  •  Run tests from IDE Very fast No emulator Intercepts loading of Android classes – rewriting their bodies to return null/0/false Or forward calls to shadow classes
  •  Starting new Android project? Here’s Intellij project template with configured:  roboguice  robolectric  C2DM  Android source jars  Jackson (json parser)  …. https://github.com/pivotal/AndroidIntelliJStarter
  •  Library that submits crash reports (or exceptions) to your server / Google spreadsheet / email Add logcat and memory usage to your report Mature project Used by lots of apps (incl. Facebook app) OSS
  •  Bug tracking for mobile Realtime crash / bugs analytics Search Notify users when bug is fixed Supports Proguard Integrates with ACRA and JIRA
  •  Post crashes/bugs as tickets in JIRA Still in development Open source Cool features  Get user feedback  Reply to user via comment on JIRA issue  Notify user the crash/bug he reported is fixed  and more…
  • Any.DO