Skip to content

Rwothoromo/Android-Codelab

Repository files navigation

Developers

CircleCI Test Coverage Maintainability

This Android application retrieves a listing of Java Developers in Nairobi using the Github API and allows you to share their profiles. Download it on Amazon.

Design

The design mockup is for the following pages:

1. Developers list. 2. Developer profile. 3. Share profile.
Developers list image Developer profile image Share profile image

Try out the interactive design.

The design was based off Material Design and created using Adobe XD, a free and effective tool that also allows publishing one's design as well as testing the design with ease on a Smart Phone.

Project setup

These instructions will guide you on how to set up this Android project on your local machine.

Prerequisites

Installation

Clone this repository by running the following command in your terminal:

$ git clone https://github.com/Rwothoromo/Android-Codelab.git

Open and run the project in Android Studio

  • Start Android Studio and select Open project then browse this project at path-to-project/Android-Codelab.
  • Send in a request for google-services.json and add the file received to app/google-services.json, app/src/mock/google-services.json and app/src/prod/google-services.json.
  • Send in a request for keystore.jks, alias and passwords, and add the file received to keystores/keystore.jks.
  • Wait for the project to complete building and indexing.
  • Go to Run in the menu and select Run to run the project on an emulator or your connected Android device.

Run tests

To run all checks, run the following command in your terminal:

$ ./gradlew check

To run Espresso tests on all connected devices:

$ ./gradlew connectedCheck

To install and run Espresso instrumentation tests for all flavors on connected devices:

$ ./gradlew connectedAndroidTest

To run unit tests for all variants:

$ ./gradlew test

Reporting

Before running any of these commands, run ./gradlew clean to clear any previous reports.

To Generate a JaCoCo coverage report:

$ ./gradlew jacocoTestReport