2017-01-11 ../..

Mobile and Cloud Computing: P1

Table of Contents

The purpose of this lab is (i) to make you aware that an Android device is a fully networked computer system, and get you started with (ii) cloud computing, and (iii) software design and development on the Android platform.

  1. Finish re-reading the notes for all the lectures given so far.
  2. All lab work is expected to be performed on Linux systems connected to real (or virtual) Android devices. The Tasks expect you to have already installed Android Studio.
  3. Report, as used below, is a single pdf file named report-P1.pdf, where all your work for this P1 should appear. Include a short description of your real device and laptop. Include screenshots. Use whatever editor to produce this pdf.
  4. Include a journal. Record how long each task took. Record glitches, if any. Critique the P1 overall.

1 Task 1: Android Networking APKs

Experience Android as a "full-scale" networked computer system. (i) Install the following APKs: AirDroid, KeepPass, AIDE, an sftp/ssh server, an ssh client/terminal, a local terminal (from Google Play) and FDroid from https://f-droid.org/. Install through FDroid the following: Hacker's Keyboard, termux, an sftp-server of your choice. Some example APKs are web.oss.sshsftp, sk.vx.connectbot, com.spartacusrex.spartacuside. But, you are welcome to choose other APKs that fit the description.

Deliverables: (i) Please include in your Report your experience of using these apps. (ii) Include several screenshots running the APKs in the emulator or real device in your write-up.

2 Task 2: Android Development

Use IDE (IntelliJ IDEA or Android Studio) to build "Hello-This-Is-Me" APK satisfying the requirements given below, and run it within Android Emulator or on a real device. It is highly recommended that you first build the "Hello World" following the Android developer's site http://developer.android.com/ tutorial.

  1. In the following, WSTR refers to the string "WSU CEG3900 Mobile and Cloud Computing – " + <your name>.
  2. Display WSTR on the screen by using Java.
  3. Display WSTR on the screen by XML.
  4. Display your real photo on the screen.
  5. Use two different layouts in Android to display WSTR followed by your photo.
  6. Combine all the above into one APK with multiple screens with transitions in the order shown.

Deliverables: (i) Please include in your Report your experience on the installation and verification of the IDE. (ii) Include several screenshots running the APK in the emulator (or real device) in your write-up. (iii) Your project files (java, xml, etc) exported from your Android project as an archive. (iv) HelloThisIsMe.apk

3 Task 3: Build an Android Open Source APK

Goal: To get you to see some reasonably well-mode APKs. To give you some APK build experience.

  1. http://www.makeuseof.com/tag/12-best-free-open-source-android-apps/
  2. https://guardianproject.info/apps
  3. The above sites describe several open source APKs. Select one, and download its source code (to enhance in later lab/ projects). For now, the task is to build it as-is. To successfully build, you may have to tweak several files. Build in the Linux environment – any distribution. Android Studio recommends Ubuntu.
  4. The above apps vary quite a bit in complexity. Do not hesitate to try what appears to be hard one from the list. Show us your effort in the Report file, and we will be very supportive.
  5. In later projects, we will focus on mobile computing (i.e., networking, processes/threads, location based services, etc.) rather than UI. Use this as a criterion for selection.
  6. Generally speaking, build the APKs for latest Android.

Deliverables: (i) Include in the Report an overview of what you built and how, followed by an exhaustive list of changes you made. (ii) The APK produced.

4 Task 4: adb (Android Debug Bridge)

  1. Reference http://developer.android.com/tools/help/adb.html
  2. If using a real device: Physically connect a real Android device to a PC with a USB cable.
  3. Connect to real/ virtual device using adb.
  4. Install the two APKs you built.
  5. Invoke shell.
  6. List the command file names found in /system/bin and /system/xbin of this device.
  7. List the partitions and what is mounted where.

Deliverables: (i) Capture all of the above into the Report file. [Hint: Use the command named script.]

5 Task 5: Get Started with AWS Cloud Computing

Do the Lab Experiment described in ../Cloud/cloud-intro.html. Deliverables are listed therein.

6 Turnin

Due date is posted on the Course Home Page. Submit on Pilot the report-P1.pdf, plus other deliverables listed in the tasks.

The file named exactly report-P1.pdf should include your commentary on all aspects of this lab. (Scripts are used to check various things – so file names should obey "rules".) Suggestions as to what this commentary should focus on are spread out in the above.

7 End

Copyright © 2017 pmateti@wright.eduwww.wright.edu/~pmateti 2017-01-11