Difference between revisions of "MAP524/DPS924 Lab 1"

From CDOT Wiki
Jump to: navigation, search
(Part B: Configure your environment)
(Part B: Configure your environment)
Line 77: Line 77:
 
<li>Before you move on to PART C, try "gradle --help" to see what else gradle can do. If the build was successful you can run the Bash tree command to get a bird's eye view of what files/directories were created by the build. Save this tree output, you'll need it for PART D of this lab.</li>
 
<li>Before you move on to PART C, try "gradle --help" to see what else gradle can do. If the build was successful you can run the Bash tree command to get a bird's eye view of what files/directories were created by the build. Save this tree output, you'll need it for PART D of this lab.</li>
 
</ol>
 
</ol>
 +
 +
== Part C: Start an Android Virtual Device (AVD) and install your app. ==
 +
 +
<ol>
 +
<li>Use this comand to list your virtual devices:</li>
 +
<pre>android list avd</pre>
 +
<li>If you used the default settings when setting up Android Studio - you should have one AVD already. You can now start your AVD with this command: </li>
 +
<pre>emulator -avd Nexus_5_API_22_x86 &</pre>
 +
<li>If your AVD is too large on the screen you can use the scale option to make it smaller, like this:</li>
 +
<pre>emulator -scale 0.4 -avd Nexus_5_API_22_x86</pre>
 +
<li>Finally, we can install our APK onto our AVD with this command: </li>
 +
<pre>adb install build/outputs/apk/GradleProject-debug.apk</pre>
 +
<li>Now that our app is installed, we should be able to run it. Click on the app icon in the AVD to execute it.
 +
<li>Modify your app by editing your HelloActivity.java file and change the text to be displayed to "Hello Seneca".  You'll find your HelloActivity.java inside your project's java/org/hello folder.</li>
 +
<li>Back in your apps project directory rebuild your app as in step B7.</li>
 +
<li>Try to install the app using the adb command as in step C4. You should get an error message telling you that the app is already installed.</li>
 +
<li>Use this adb command to connect to your AVD:</li>
 +
<pre>adb shell</pre>
 +
<li></li>
 +
<pre></pre>
 +
<li><Now that you have a shell on the AVD you can list all installed packages using the pm command like this /li>
 +
<pre>pm list packages</pre>
 +
<li>Use the pm command to remove your app. You'll have to use the full package name like this </li>
 +
<pre>pm uninstall org.hello</pre>
 +
<li>Exit the debug shell with the "exit" command or Ctrl+d.</li>
 +
<li>You can now repeat step C4 to install your package.</li>
 +
<li>Run your app to ensure it says "Hello my name is Andrew Smith" (but use your own name).</li>
 +
<li>Now take a screen shot of your running app with this command </li>
 +
<pre>screenshot2 -e lab01.png</pre>
 +
<li>You can view the image file by using the Linux "display" command.</li>
 +
<li>Be sure to attach this screenshot to your lab answers.</li>
 +
<li>When satisfied with using Android command line tools please move on to PART D of this lab. </li>
 +
</ol>
 +
 +
== Part D: Submit ==

Revision as of 23:41, 30 June 2015

Lab 1: Build an Android App with Gradle

Part A: Setting up Android Studio on Linux

  1. Download the latest version of Android Studio.
  2. Unzip the file. You should get a directory named "android-studio".
  3. In a terminal step into the android-studio/bin directory and run the "studio.sh" script.
  4. Follow the instructions and install Android Studio. You should end up with something like this:

Android-studio-setuo-complete.png

  1. At this point you should be able to install any updates, if there are any, by clicking "Check for updates" at the bottom of the window.
  2. You can now close Android Studio.

Part B: Configure your environment

  1. In a terminal window, edit your .bashrc file to set your PATH and other environment variables.
  2. export PATH=/home/$USER/android-studio/gradle/gradle-2.2.1/bin:$PATH:/home/$USER/Android/Sdk/tools:/home/$USER/Android/Sdk/platform-tools:/home/$USER/bin
    export HISTTIMEFORMAT='%F %T '
    export HISTSIZE=2000
  3. You should now be able to run the gradle command without the ./ prefix. Try running this command to verify:
  4. gradle -h
  5. Unless it complains it's not executable, use the "chmod +x " command to add execute permissions to that file.
  6. Try the following commands to ensure they work. If they don't then adjust your environment in step 1 or install missing software. Also read the output from the adb/android commands to get an idea of what they are used for:
    java -version
    javac -version
    adb -h
    android -h
  7. We now need to create some basic source code so we can build it into an Android app. Use the mkdir command to create a source tree that looks like this (you can download the files you need here:
  8. .
    ├── build.gradle
    ├── local.properties
    └── src
        └── main
            ├── AndroidManifest.xml
            ├── java
            │   └── org
            │       └── hello
            │           └── HelloActivity.java
            └── res
                ├── layout
                │   └── hello_layout.xml
                └── values
                    └── strings.xml
    
  9. Finally you'll need to create a Gradle build file inside your project directory. The name of this file is "build.gradle" and it looks like this:
  10. buildscript {
        repositories {
            jcenter()
        }
    
        dependencies {
            classpath 'com.android.tools.build:gradle:1.0.0'
        }
    }
    
    apply plugin: 'com.android.application'
    
    android {
        compileSdkVersion 22
        buildToolsVersion "22.0.1"
    
        defaultConfig {
               applicationId "org.hello"
               minSdkVersion 15
               targetSdkVersion 21
               versionCode 1
               versionName "1.0"
        }
    }
  11. You can now use Gradle to build your app. Just run this command from inside your project directory.
  12. gradle build
  13. Before you move on to PART C, try "gradle --help" to see what else gradle can do. If the build was successful you can run the Bash tree command to get a bird's eye view of what files/directories were created by the build. Save this tree output, you'll need it for PART D of this lab.

Part C: Start an Android Virtual Device (AVD) and install your app.

  1. Use this comand to list your virtual devices:
  2. android list avd
  3. If you used the default settings when setting up Android Studio - you should have one AVD already. You can now start your AVD with this command:
  4. emulator -avd Nexus_5_API_22_x86 &
  5. If your AVD is too large on the screen you can use the scale option to make it smaller, like this:
  6. emulator -scale 0.4 -avd Nexus_5_API_22_x86
  7. Finally, we can install our APK onto our AVD with this command:
  8. adb install build/outputs/apk/GradleProject-debug.apk
  9. Now that our app is installed, we should be able to run it. Click on the app icon in the AVD to execute it.
  10. Modify your app by editing your HelloActivity.java file and change the text to be displayed to "Hello Seneca". You'll find your HelloActivity.java inside your project's java/org/hello folder.
  11. Back in your apps project directory rebuild your app as in step B7.
  12. Try to install the app using the adb command as in step C4. You should get an error message telling you that the app is already installed.
  13. Use this adb command to connect to your AVD:
  14. adb shell
  15. 
    
  16. <Now that you have a shell on the AVD you can list all installed packages using the pm command like this /li>
    pm list packages
  17. Use the pm command to remove your app. You'll have to use the full package name like this
  18. pm uninstall org.hello
  19. Exit the debug shell with the "exit" command or Ctrl+d.
  20. You can now repeat step C4 to install your package.
  21. Run your app to ensure it says "Hello my name is Andrew Smith" (but use your own name).
  22. Now take a screen shot of your running app with this command
  23. screenshot2 -e lab01.png
  24. You can view the image file by using the Linux "display" command.
  25. Be sure to attach this screenshot to your lab answers.
  26. When satisfied with using Android command line tools please move on to PART D of this lab.

Part D: Submit