Lab 0. Setup


Github Classroom repository

As mentioned in Online Activities page, you will use a git repository hosted on github classroom for all activities (labs and project).

Step 1. Create a github account or login on an existing one

Step 2. Use the invite link received from your Teaching Assistant during the live session

Step 3. Accept the assignment

Step 4. Refresh your page

Step 5. Click on your repository link (if you get an error, make sure you are logged in)

Step 6. Edit the readme file and add your name, master programme and any other information you consider necessary

Tip: You can edit files directly on github, which is an useful feature especially for readme files.


You should clone your repository to a local folder

The following steps can be performed in the command line, in Android Studio or in any other git source control app (e.g. SourceTree], [[|Github desktop]).

Useful resources:

Step 1. Clone your repo

$ git clone demo
Cloning into 'demo'...
remote: Enumerating objects: 5, done.
remote: Counting objects: 100% (5/5), done.
remote: Compressing objects: 100% (2/2), done.
remote: Total 5 (delta 0), reused 0 (delta 0), pack-reused 0
Receiving objects: 100% (5/5), done.
$ cd demo
$ git status
On branch main
Your branch is up to date with 'origin/main'.
nothing to commit, working tree clean

Step 2. Create a new branch

$ git branch lab0
$ git status
On branch main
Your branch is up to date with 'origin/main'.
nothing to commit, working tree clean
$ git branch -l
* main
$ git checkout lab0
Switched to branch 'lab0'
$ git status
On branch lab0
nothing to commit, working tree clean

Step 3. Configure .gitignore

We don't usually store generated files, compiled files etc in our repositories.

For Android, there are some IDE generated folders and files that should be ignored and not committed. You can use an existing template or the one we use for the labs snippets repository. You can add and edit the file directly on Github or create it locally and follow the next steps.

The following steps should be done after the Hello World part of the lab

Step 4. Add your changes

$ git add .

Step 5. Commit your changes

$ git commit -m 'Lab 0 demo'

Step 6. Push your changes

You should also have an email and username already configured. If not, you can configure using the commands shown in this guide

$ git push

Code review

For code reviews we use pull requests. Depending on the repository hosting platform, we can have different names for them, but the concept is the same: a mechanism for requesting reviews for your code. It usually shows a diff of your new changes vs the branch you want to merge your code into and it allows reviewers to submit comments, tasks and to approve/reject.


Push the changes made of the branch lab0 and then go on Github to create a Pull Request. Don't forget to add reviewers to your PR.

$ git push --set-upstream origin lab0
Enumerating objects: 4, done.
Counting objects: 100% (4/4), done.
Delta compression using up to 8 threads
Compressing objects: 100% (2/2), done.
Writing objects: 100% (3/3), 295 bytes | 295.00 KiB/s, done.
Total 3 (delta 0), reused 0 (delta 0), pack-reused 0
remote: Create a pull request for 'lab0' on GitHub by visiting:
 * [new branch]      lab0 -> lab0
Branch 'lab0' set up to track remote branch 'lab0' from 'origin'.

A pull request can be created in many ways. For example:

  • By opening the link provided in the push message (shown above)
  • By going to the repo's page on github and clicking on Create Pull Request

  • By going to the repo's page, choosing the branch you are on and clicking on Pull Request

  • By going to the repo's page on github and clicking to view its branches

The pull requests you create for your labs must have a suggestive title. In general you should also add a description with useful info for reviewers.

TODO Github automatically created a branch called 'feedback' and a pull request Feedback when it generated your repository. Please add your Teaching Assistant as reviewer to it to approve it. After the approval please close the Pull Request and delete the feedback branch. You can view your Pull requests on Github in the Pull Requests section of your repo.

Android environment

:!: This part can take more than half an hour due to all the tools you need to download

Install on any OS you prefer the following tools:

* Android Studio

  • It offers support for git, logcat (android logs), profiling, database inspection, layout inspection

* Install the SDK and tools

SDK - the latest one should be enough (Android 11)

  • We recommend installing the sources as well to easily see the javadocs of the API you'll use

Android SDK Tools and Emulator

The Android SDK Tools offer adb, which you can use to connect to your device.

Android Emulator

Most apps can be run in an emulator (most because the emulator lacks support for some features such as Bluetooth connectivity). You can run the apps your create during the labs in an emulator or on a physical device.

Step 1. To setup a virtual device you need to access Tools → AVD Manager Step 2. Create a device

Step 3. Select a device type and system image

Setting up your physical device

Activate Developer Options

  • Go to About phone in the phone Settings
  • Tap on the Build number tile 7 times until it says “You are now a developer!”
  • You should now see a tile that says “Developer options” right above of the “About phone” tile

Connect your device via an USB cable or configure adb via Wi-FI

When the device is connected you can see it in the run targets window:

or using the adb devices command from the CLI (make sure you add android sdk tools to your Path variable)

$ adb devices
List of devices attached
R58M24W63GN     device

Hello World

Let's create a Hello World project to try out the IDE and tools.

Explanations about these steps: Create your first project

Run the app on your physical device or in a virtual device. Press the run button

You can check the logs in the Logcat window


Check your project's structure. More info on this page

  • Android Manifest - declares
  • gradle files for build configuration
  • java → com.smd.helloworld → - the screen you viewed when the app was opened
  • res → resources dir
    • layout → activity_main.xml → the layout of your Activity (the “views” you see in an app are Activities or Fragments, you will learn about them in the next lab).
    • you can edit your layouts using the layout editor (drag and drop) or using the xml editor.
smd/laboratoare/00.txt · Last modified: 2021/03/10 21:55 by adriana.draghici
CC Attribution-Share Alike 3.0 Unported Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0