A sample real estate app showing how to:
- use Maven build system with multiple modules
- use Robolectric, Robotium and Calabash for testing
- use Navigation Drawer and ActionBarCompat
- support multiple screen sizes
- use Event Bus for decoupling fragments and activities
- use Picasso for image loading and Retrofit for HTTP requests
- use maven to upload apks to TestFairy and run monkey
- In this project I used a custom calabash-android gem from this pull request
- To install Calabash:
- install Apache Ant
- follow the prerequisite steps from calabash-android
- install bundler gem
gem install bundler
- checkout calabash-android from pull request:
git clone https://github.com/AlexeyDsov/calabash-android.git -b callActivityMethod
- follow the steps from here without git clone
- when the gem is built go to
pkg
folder and execute:gem install [name of the gem].gem
- Usage is described here and a list of predefined steps is here
Problem: When running a Robolectric Test a "Stub!" exceptions occurs.
Solution: Open Module Settings -> Dependencies and move Android framework to the bottom
Problem: When running a Robolectric Test AndroidManifest.xml is not found.
Solution: A correct module needs to be selected. Edit run configuration and select real-estate instead of real-estate-parent for Use classpath of module
Problem: No Android SDK selected.
Solution: Select real-estate-all, right-click and select Open Module Settings. Select your Java and Android SDK locations.
Problem: IntelliJ cannot find ActivityName_ classes
Solution: Add generated source code to source root description
Problem: When running SqlGenerator a FileNotFoundException is thrown
Solution: Make sure that in your Run Configuration you have set sql-generator as your Working Directory