Lab 4 In class Hands-on Android Debugging Tutorial

Size: px
Start display at page:

Download "Lab 4 In class Hands-on Android Debugging Tutorial"

Transcription

1 Lab 4 In class Hands-on Android Debugging Tutorial Submit lab 4 as PDF with your feedback and list each major step in this tutorial with screen shots documenting your work, i.e., document each listed step. Submit to Blackboard. Java Debugging Java TM Debug Wire Protocol (JDWP) is the protocol used for communication between a debugger and the Java Virtual Machine (VM). Used by Eclipse, IntelliJ, and AndroidStudio. JDWP allows you to step through code, view variable values, and pause execution of an application while executing (on your AVD or device). You can attach a debugger to a special port so it can communicate with the application VMs on your devices. Android Debugging adb (Android Debug Bridge) Generally used to communicate with connected emulators (AVD) and devices. Functionality for device management, moving and syncing files to the emulator (or device), running a UNIX shell on the device or emulator, interacting with SQLite database for an application. Dalvik Debug Monitor Server (DDMS) Graphical program that communicates with your devices through the adb. Capture screenshots, gather thread and stack information, monitor heap, spoof incoming calls, and send SMS messages, etc. Device or Android Virtual Device (AVD) Your App must run on a device, or in an AVD so that it can be debugged. An adb device daemon runs on an actual device or a virtual device (AVD), and provides a means for the adb host daemon to communicate with the device or emulator. Mobile Applications - Jay Urbain, Ph.D. 1

2 JDWP debugger The Dalvik VM supports the JDWP protocol. Each application runs in a VM and exposes a unique port (8700) that you can attach a debugger to via DDMS. DDMS provides a port-forwarding feature that can forward a specific VM's debugging port to port 8700 for debugging multiple ports. You can switch between Apps in the Devices tab of DDMS. Most modern Java IDEs include a JDWP debugger, or you can use a command line debugger such as jdb. Debugging Environment Mobile Applications - Jay Urbain, Ph.D. 2

3 ADB Tutorial Start AndroidStudio and run an App on an Android device through a USB port, or start up an AVD (emulator). Open the Android SDK Manager: Select Android SDK; copy the location of the Android SDK. Mobile Applications - Jay Urbain, Ph.D. 3

4 Step 1) Open a command window (or terminal on Mac/Linux) in your Android SKD platform-tools subdirectory: You can find the adb application in <sdk location>/platform- tools/. For example: Windows: C:\Program Files\Android\android-sdk\platform-tools OSX: /Users/jayurbain/Library/Android/sdk/platform-tools Note: You can navigate to <sdk location>/platform- tools/ using Windows Explorer: select the platform-tools subdirectory, and select Shift+Menu and type w to open a command window here. If you have a Mac, you can use a normal Unix terminal and just paste your actual <sdk location>/platform- tools/ path into the terminal. Type adb or adb help to get a listing of available adb commands (Note:./adb on Mac): Mobile Applications - Jay Urbain, Ph.D. 4

5 Step 2) General adb command format is as follows: adb [-d -e -s <serialnumber>] <command> To get a list of attached devices and their serial numbers type the following: Mac OSX: Windows: General form of command to attach to a specific device: adb -s <serialnumber> <command> Note: If there is only one device, you do not need the serial number. If you are having trouble with the state of a debugging session with an AVD or an Android device, a good first step is to kill the adb.exe host server and restart it. Try the following: Mac: Windows: Mobile Applications - Jay Urbain, Ph.D. 5

6 Step 3 You can install an App with the adb install command as shown below. You should be able to find your project *.apk file under your Android project s bin directory. If the App is already installed you will need to remove it. An easy way to remove an App is to remove it from the device Application Manager (on the device): Settings -> Application Manager or Play Store -> select the menu -> select My apps & games Download and install the SpinningCubeShader.apk from the course outline. Mac: Windows: Mobile Applications - Jay Urbain, Ph.D. 6

7 List apps by opening shell:./adb shell 'pm list packages -f' You can also uninstall from the command line./adb uninstall <name of package/application> Jays-MBP-2:platform-tools jayurbain$./adb uninstall 'com.jayurbain.simplelistfragment' Success You can also do this through the shell:./adb shell pm uninstall <name of package/application> Using the k option preserves the data:./adb uninstall k <name of package/application> Mobile Applications - Jay Urbain, Ph.D. 7

8 Step 4 adb allows you to run a command shell. The command shell allows you to run a variety of commands on an emulator or device. The command binaries are stored in the file system of the emulator or device, in this location: /system/bin/... General format of shell command: adb [-d -e -s {<serialnumber>}] shell Example: shell command, directory listing. Mac: Note: If you have only one device or AVD attached you do not need to include the serial number. Mobile Applications - Jay Urbain, Ph.D. 8

9 Windows: To list the installed App directories within a shell: ls /system/app The name of each listed directory is the name of an App, each directory contains the app *.apk file. Exit the remote shell by entering CTRL+D or exit. To issue a single command without entering a remote shell, use the shell command as follows: adb [-d -e -s {<serialnumber>}] shell <shellcommand> Example on Mac: Mobile Applications - Jay Urbain, Ph.D. 9

10 Step 5 You can use the adb commands pull and push to copy files to and from an emulator/device instance's data file. Unlike the install command, which only copies a *.apk file to a specific location, the pull and push commands let you copy arbitrary directories and files to/from any location on an emulator/device instance. To copy a file or directory (recursively) from the emulator or device: adb pull <remote> <local> To copy a file or directory (recursively) to the emulator or device, use adb push <local> <remote> <local> and <remote> refer to the paths to the target files/directory on your development machine (local) and on the emulator/device instance (remote). Here's example usage:./adb push /Users/jayurbain/Dropbox/Jay/stocks.txt /sdcard/stocks.txt./adb pull /sdcard/stocks.txt stocks.txt Mobile Applications - Jay Urbain, Ph.D. 10

11 Step 6 Accessing the sqlite3 database: The sqlite3 binary doesn't always get built for the Android OS builds targeting production devices (user build), only the development builds. If installed, sqlite3 is in /system/xbin. If not installed, I would recommend using an AVD emulator for this portion of the lab. Note: To install sqlite3 on your physical device, you would need to root your device. This basically amounts to installing super user su on your phone so you can install programs in /system/bin. See notes in following section on Installing sqlite3. From an adb remote shell, you can use the sqlite3 command-line program to manage SQLite databases created by different Android applications (similar to the MySql command-line interface). The sqlite3 tool includes many commands, such as.dump to print out the contents of a table and.schema to print the SQL CREATE statement for existing tables. Type.help for a list of commands. Enter.exit to quit. A separate *.db database file exists for each application under /data/data/ To use sqlite3, enter a remote shell on the emulator or device, and enter the sqlite3 command. $ adb -s emulator-5554 shell # sqlite3 /data/data/com.example.google.rss.rssexample/databases/rssitems.db SQLite version Enter ".help" for instructions... enter commands, then quit... # sqlite>.exit The tool also allows you to execute SQLite commands on the fly. You can also specify the full path to the database you want to explore. Emulator/device instances store SQLite3 databases in the folder /data/data/<package_name>/databases/. Mobile Applications - Jay Urbain, Ph.D. 11

12 You can also use a recursive directory listing ls R /data/data to find a database files from the shell command: Navigate to an App database directory: > cd /data/data/com.android.providers.contacts/databases > ls comments.db contacts2.db contacts2.db-journal profile.db profile.db-journal Connect to your database (in this case contacts2.db : > sqlite3 contacts2.db sqlite3 contacts2.db SQLite version :17:19 Enter ".help" for usage hints. sqlite> Mobile Applications - Jay Urbain, Ph.D. 12

13 List tables with.table: sqlite>.table Step 7 List db schema with.schema: sqlite>.schema sqlite>.schema CREATE TABLE android_metadata (locale TEXT); CREATE TABLE _sync_state (_id INTEGER PRIMARY KEY,account_name TEXT NOT NULL,account_type TEXT NOT NULL,data TEXT,UNIQUE(account_name, account_type)); Query db (columns are separated by the pipe ): sqlite> select * from contacts; r1-3F512D294D514B2B r2-3D r sqlite> Mobile Applications - Jay Urbain, Ph.D. 13

14 If you use an App that does not have any tables, you can just create one: sqlite> create table x(name TEXT); sqlite> insert into x values ('Jay'); sqlite> select * from x; Another option for reviewing your App s database files is to pull (copy) your *.db file onto your host machine and run sqlite on your host. Note: They need to be compatible versions, i.e., sqlite 3 since the file format changed significantly between sqlite 2 and 3. Mobile Applications - Jay Urbain, Ph.D. 14

15 Step 8 Other useful adb shell commands: dumpsys Dumps system data to the screen dumpstate Dumps state More adb information can be found here: Mobile Applications - Jay Urbain, Ph.D. 15

16 Step 9) Running DDMS DDMS is packaged with the Android SDK. It can be accessed from the SDK tools/ directory, or from within Eclipse or Android Studio. From Android Studio: Select Tools -> Android -> Android Device Monitor. There are also icons. When DDMS starts, it connects to the adb. Note: The screens vary based on your version of the SDK. Mobile Applications - Jay Urbain, Ph.D. 16

17 Select a process from the Devices tab, and select the update threads icon Mobile Applications - Jay Urbain, Ph.D. : 17

18 Select a process from the Devices tab, select the heap database can icon (along the top of the Devices tab), select the Heap tab in the main window, and initiate garbage collection by selecting the GC button. The display should now update automatically. Mobile Applications - Jay Urbain, Ph.D. 18

19 Select a Type to generate an allocation chart: Select your application in the Devices tab, the Threads icon in the Devices tab, then select the Treads tab in the main window to list App threads. Select the Profiling icon in the Devices Tab Mobile Applications - Jay Urbain, Ph.D. to profile your process> 19

20 Memory allocation tracker: File explorer: Mobile Applications - Jay Urbain, Ph.D. 20

21 Logcat (lower window) outputs the messages that you print out in your App using the Log class along with other system messages. You can filter messages with the following settings: Verbose Debug Info Warn Error Other DDMS features: The Emulator control tab lets you simulate a phone's voice and data network status. The Telephony Status section of the Emulator control tab lets you change different aspects of the phone's networks status, speed and latency. Spoofing calls or SMS text messages Note: This only works on a simulator not an actual device. On your device, go to Settings->Applications->Development and select "Allow mock locations". Add ACCESS_MOCK_LOCATION permission to AndroidManifest.xml: <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android=" <uses-permission android:name="android.permission.access_mock_location"> More can be found here: Mobile Applications - Jay Urbain, Ph.D. 21

22 Miscellaneous (optional): Take a screenshot (easier within DDMS Icon) adb shell screencap -p perl -pe 's/\x0d\x0a/\x0a/g' > screen.png Power button This command sends the power button event to turn the device on or off. adb shell input keyevent 26 Unlock screen This command sends the event that unlocks the lockscreen on the device. It can be combined with the power button command above to turn on and unlock the device. adb shell input keyevent 82 Print all installed packages adb shell pm list packages -f Clear application data adb shell pm clear PACKAGE_NAME # example adb shell pm clear com.growingwiththeweb.example Logging To show the log stream on your command line. adb logcat Filter by tagname adb logcat -s TAG_NAME adb logcat -s TAG_NAME_1 TAG_NAME_2 #example adb logcat -s TEST adb logcat -s TEST MYAPP Filter by priority To show logs of a specific priority warning and above. adb logcat "*:PRIORITY" # example adb logcat "*:W" Mobile Applications - Jay Urbain, Ph.D. 22

23 Here are the priority levels: V - Verbose (lowest priority) D - Debug I - Info W - Warning E - Error F - Fatal S - Silent (highest priority, on which nothing is ever printed) Filter by tagname and priority adb logcat -s TAG_NAME:PRIORITY adb logcat -s TAG_NAME_1:PRIORITY TAG_NAME_2:PRIORITY #example adb logcat -s TEST: W Filter using grep Alternatively the output of logcat can be piped to grep on a system that supports it. adb logcat grep "SEARCH_TERM" adb logcat grep "SEARCH_TERM_1\ SEARCH_TERM_2" #example adb logcat grep "Exception" adb logcat grep "Exception\ Error" Clearing the logcat buffer Use this to clear the buffer to remove any old log data. adb logcat -c Acknowledgement: This lab was developed by Jay Urbain. Mobile Applications - Jay Urbain, Ph.D. 23

SD Card with Eclipse/Emulator

SD Card with Eclipse/Emulator SD Card with Eclipse/Emulator Creating the SD Card "image" file (a file representation of a physical SD Card) Assume Cygwin bash shell: $ cd c: $ mkdir sdcards $ cd sdcards $ Android\android-sdk\tools\mksdcard

More information

Android Debug Framework

Android Debug Framework Android Debug Framework (Logcat, DDMS, Debug, Exception Handling, Third Party APIs) Sisoft Technologies Pvt Ltd SRC E7, Shipra Riviera Bazar, Gyan Khand-3, Indirapuram, Ghaziabad Website: www.sisoft.in

More information

Install ADB on Windows

Install ADB on Windows Android Debug Bridge or better known as ADB is a powerful and versatile tool that lets you do a lot of things like pulling out logs, installing and uninstalling apps, transferring files, rooting and flashing

More information

21. This is a screenshot of the Android Studio Debugger. It shows the current thread and the object tree for a certain variable.

21. This is a screenshot of the Android Studio Debugger. It shows the current thread and the object tree for a certain variable. 4. Logging is an important part of debugging, which is hard to achieve on mobile devices, where application development and execution take place on different systems. Android includes a framework that

More information

How to Demonstrate Junos Pulse L3 VPN - Android

How to Demonstrate Junos Pulse L3 VPN - Android How to Demonstrate Junos Pulse L3 VPN - Android 1 Setup and Demonstration 1.1 Demonstrating Junos Pulse L3 VPN on Android 4 Setup and Demonstration How to Demonstrate Junos Pulse L3 VPN - Android - 3 Juniper

More information

Wirtschaftsinformatik Skiseminar ao. Prof. Dr. Rony G. Flatscher. Seminar paper presentation Dennis Robert Stöhr

Wirtschaftsinformatik Skiseminar ao. Prof. Dr. Rony G. Flatscher. Seminar paper presentation Dennis Robert Stöhr Android Programming Wirtschaftsinformatik Skiseminar ao. Prof. Dr. Rony G. Flatscher Seminar paper presentation Dennis Robert Stöhr 0453244 11.01.2011 Agenda Introduction Basics of Android Development

More information

Installing and configuring an Android device emulator. EntwicklerCamp 2012

Installing and configuring an Android device emulator. EntwicklerCamp 2012 Installing and configuring an Android device emulator EntwicklerCamp 2012 Page 1 of 29 Table of Contents Lab objectives...3 Time estimate...3 Prerequisites...3 Getting started...3 Setting up the device

More information

Mobile and Wireless Systems Programming

Mobile and Wireless Systems Programming to Android Android is a software stack for mobile devices that includes : an operating system middleware key applications Open source project based on Linux kernel 2.6 Open Handset Alliance (Google, HTC,

More information

Minds-on: Android. Session 1

Minds-on: Android. Session 1 Minds-on: Android Session 1 Paulo Baltarejo Sousa Instituto Superior de Engenharia do Porto 2016 Outline Mobile devices Android OS Android architecture Android Studio Practice 1 / 33 2 / 33 Mobile devices

More information

Mobile OS. Symbian. BlackBerry. ios. Window mobile. Android

Mobile OS. Symbian. BlackBerry. ios. Window mobile. Android Ing. Elton Domnori December 7, 2011 Mobile OS Symbian BlackBerry Window mobile Android ios Mobile OS OS First release Last release Owner Android Android 1.0 September 2008 Android 4.0 May 2011 Open Handset

More information

COSC 3P97 Mobile Computing

COSC 3P97 Mobile Computing COSC 3P97 Mobile Computing Mobile Computing 1.1 COSC 3P97 Prerequisites COSC 2P13, 3P32 Staff instructor: Me! teaching assistant: Steve Tkachuk Lectures (MCD205) Web COSC: http://www.cosc.brocku.ca/ COSC

More information

Programming Concepts and Skills. Creating an Android Project

Programming Concepts and Skills. Creating an Android Project Programming Concepts and Skills Creating an Android Project Getting Started An Android project contains all the files that comprise the source code for your Android app. The Android SDK tools make it easy

More information

Basic Android Setup for Machine Vision Fall 2015

Basic Android Setup for Machine Vision Fall 2015 Basic Android Setup for Machine Vision 6.870 Fall 2015 Introduction Here we will learn how to set up the Android software development environment and how to implement machine vision operations on an Android

More information

OWASP German Chapter Stammtisch Initiative/Ruhrpott. Android App Pentest Workshop 101

OWASP German Chapter Stammtisch Initiative/Ruhrpott. Android App Pentest Workshop 101 OWASP German Chapter Stammtisch Initiative/Ruhrpott Android App Pentest Workshop 101 About What we will try to cover in the first session: Setup of a Mobile Application Pentest Environment Basics of Mobile

More information

Tutorial on Basic Android Setup

Tutorial on Basic Android Setup Tutorial on Basic Android Setup EE368/CS232 Digital Image Processing, Spring 2015 Linux Version Introduction In this tutorial, we will learn how to set up the Android software development environment and

More information

Lab Android Development Environment

Lab Android Development Environment Lab Android Development Environment Setting up the ADT, Creating, Running and Debugging Your First Application Objectives: Familiarize yourself with the Android Development Environment Important Note:

More information

CS260 Intro to Java & Android 04.Android Intro

CS260 Intro to Java & Android 04.Android Intro CS260 Intro to Java & Android 04.Android Intro Winter 2015 Winter 2015 CS260 - Intro to Java & Android 1 Android - Getting Started Android SDK contains: API Libraries Developer Tools Documentation Sample

More information

Open Lecture Mobile Programming. Command Line Tools

Open Lecture Mobile Programming. Command Line Tools Open Lecture Mobile Programming Command Line Tools Agenda Setting up tools Android Debug Bridge (ADB) Gradle Setting up tools Find path of Android SDK Default paths: Windows - C:\Users\\AppData\Local\Android\sdk

More information

Around Android. Essential Android features illustrated by a walk through a practical example

Around Android. Essential Android features illustrated by a walk through a practical example Around Android Essential Android features illustrated by a walk through a practical example By Stefan Meisner Larsen, Trifork. sml@trifork.dk. Twitter: stefanmeisner Agenda Introduction to MoGuard Alert

More information

Lecture 1 - Introduction to Android

Lecture 1 - Introduction to Android Lecture 1 - Introduction to Android This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this license, visit http://creativecommons.org/licenses/by/4.0/

More information

COLLEGE OF ENGINEERING, NASHIK-4

COLLEGE OF ENGINEERING, NASHIK-4 Pune Vidyarthi Griha s COLLEGE OF ENGINEERING, NASHIK-4 DEPARTMENT OF COMPUTER ENGINEERING 1) What is Android? Important Android Questions It is an open-sourced operating system that is used primarily

More information

Android Forensics: Simplifying Cell Phone Examinations

Android Forensics: Simplifying Cell Phone Examinations Android Forensics: Simplifying Cell Phone Examinations Jeff Lessard, Gary Kessler 2010 Presented By: Manaf Bin Yahya Outlines Introduction Mobile Forensics Physical analysis Logical analysis CelleBrite

More information

Chapter 2. Operating-System Structures

Chapter 2. Operating-System Structures Chapter 2 Operating-System Structures 2.1 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System

More information

Android Development Tools = Eclipse + ADT + SDK

Android Development Tools = Eclipse + ADT + SDK Lesson 2 Android Development Tools = Eclipse + ADT + SDK Victor Matos Cleveland State University Portions of this page are reproduced from work created and shared by Google and used according to terms

More information

SHWETANK KUMAR GUPTA Only For Education Purpose

SHWETANK KUMAR GUPTA Only For Education Purpose Introduction Android: INTERVIEW QUESTION AND ANSWER Android is an operating system for mobile devices that includes middleware and key applications, and uses a modified version of the Linux kernel. It

More information

Lab 6: Google Maps Android API v2 Android Studio 10/14/2016

Lab 6: Google Maps Android API v2 Android Studio 10/14/2016 Lab 6: Google Maps Android API v2 Android Studio 10/14/2016 One of the defining features of mobile phones is their portability. It's not surprising that some of the most enticing APIs are those that enable

More information

DEVELOPERS MANUAL. Philip SUPER HAPPY FUN FUN INC Research Blvd. Suite C-220 Austin, TX, 78759

DEVELOPERS MANUAL. Philip SUPER HAPPY FUN FUN INC Research Blvd. Suite C-220 Austin, TX, 78759 DEVELOPERS MANUAL Philip SUPER HAPPY FUN FUN INC. 11044 Research Blvd. Suite C-220 Austin, TX, 78759 Table of Contents Quick Start Guide... 3 First Time Setup for Development... 4 Getting Started in Unity...

More information

Manual Android Virtual Device Failed To Load Error

Manual Android Virtual Device Failed To Load Error Manual Android Virtual Device Failed To Load Error When I click on the Windows tab and then select Android Virtual Device Manager, I get the error "Android Virtual Device failed to load". I have attached

More information

Qualcomm Snapdragon Profiler

Qualcomm Snapdragon Profiler Qualcomm Technologies, Inc. Qualcomm Snapdragon Profiler User Guide September 21, 2018 Qualcomm Snapdragon is a product of Qualcomm Technologies, Inc. Other Qualcomm products referenced herein are products

More information

XenMobile Logs Collection Guide

XenMobile Logs Collection Guide XenMobile Logs Collection Guide 1 Contents Summary... 3 Background... 3 How to Collect Logs from Server Components... 4 Support Bundle Contents... 4 Configurations in App Controller to collect logs via

More information

Android Validating Xml Against Schema Java Example

Android Validating Xml Against Schema Java Example Android Validating Xml Against Schema Java Example I am working with XML and JAXB as I am unmarshalling and marshalling the XML into Java objects and vice versa. Now I am trying to validate our XML against.

More information

Homework 9: Stock Search Android App with Facebook Post A Mobile Phone Exercise

Homework 9: Stock Search Android App with Facebook Post A Mobile Phone Exercise Homework 9: Stock Search Android App with Facebook Post A Mobile Phone Exercise 1. Objectives Ø Become familiar with Android Studio, Android App development and Facebook SDK for Android. Ø Build a good-looking

More information

Hello World. Lesson 1. Create your first Android. Android Developer Fundamentals. Android Developer Fundamentals

Hello World. Lesson 1. Create your first Android. Android Developer Fundamentals. Android Developer Fundamentals Hello World Lesson 1 1 1.1 Create Your First Android App 2 Contents Android Studio Creating "Hello World" app in Android Studio Basic app development workflow with Android Studio Running apps on virtual

More information

SEEDAndroid User Manual

SEEDAndroid User Manual SEEDAndroid User Manual Copyright 2016 Wenliang Du, Syracuse University. All rights reserved. ATTENTION: Before using the Android VM, please at least read Section 3.1 about how to release the mouse pointer.

More information

ATC Android Application Development

ATC Android Application Development ATC Android Application Development 1. Android Framework and Android Studio b. Android Platform Architecture i. Linux Kernel ii. Hardware Abstraction Layer(HAL) iii. Android runtime iv. Native C/C++ Libraries

More information

ELET4133: Embedded Systems. Topic 3 Eclipse Tour & Building a First App

ELET4133: Embedded Systems. Topic 3 Eclipse Tour & Building a First App ELET4133: Embedded Systems Topic 3 Eclipse Tour & Building a First App Agenda In this class we will look at the Eclipse IDE We will examine it s various parts when working on an application We will load

More information

Android App Development

Android App Development Android App Development Outline Introduction Android Fundamentals Android Studio Tutorials Introduction What is Android? A software platform and operating system for mobile devices Based on the Linux kernel

More information

Android. Lesson 1. Introduction. Android Developer Fundamentals. Android Developer Fundamentals. to Android 1

Android. Lesson 1. Introduction. Android Developer Fundamentals. Android Developer Fundamentals. to Android 1 Android Lesson 1 1 1 1.0 to Android 2 Contents Android is an ecosystem Android platform architecture Android Versions Challenges of Android app development App fundamentals 3 Android Ecosystem 4 What is

More information

IJRDTM Kailash ISBN No Vol.17 Issue

IJRDTM Kailash ISBN No Vol.17 Issue ABSTRACT ANDROID OPERATING SYSTEM : A CASE STUDY by Pankaj Research Associate, GGSIP University Android is a software stack for mobile devices that includes an operating system, middleware and key applications.

More information

ITG Software Engineering

ITG Software Engineering Android Security Course ID: Page 1 Last Updated 12/15/2014 Android Security ITG Software Engineering Course Overview: This 5 day course covers the Android architecture, the stack, and primary building

More information

Introduction To Android

Introduction To Android Introduction To Android Mobile Technologies Symbian OS ios BlackBerry OS Windows Android Introduction to Android Android is an operating system for mobile devices such as smart phones and tablet computers.

More information

Introduction to Android

Introduction to Android Introduction to Android Ambient intelligence Teodoro Montanaro Politecnico di Torino, 2016/2017 Disclaimer This is only a fast introduction: It is not complete (only scrapes the surface) Only superficial

More information

Chapter 2: Operating-System Structures

Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System Calls System Programs Operating System

More information

X1 Augmented Reality SmartGlasses Developer Guide

X1 Augmented Reality SmartGlasses Developer Guide X1 Smart Glasses Spec Sheet Ruggedized Military Technology for the Commercial World X1 Augmented Reality SmartGlasses Developer Guide Index 1. ThirdEye X1 Product and Software Overview 1.1 Android Platform

More information

Android App Development

Android App Development Android App Development Course Contents: Android app development Course Benefit: You will learn how to Use Advance Features of Android with LIVE PROJECTS Original Fees: 15000 per student. Corporate Discount

More information

App Development for Android. Prabhaker Matet

App Development for Android. Prabhaker Matet App Development for Android Prabhaker Matet Development Tools (Android) Java Java is the same. But, not all libs are included. Unused: Swing, AWT, SWT, lcdui Android Studio (includes Intellij IDEA) Android

More information

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edition

Chapter 2: Operating-System Structures. Operating System Concepts 9 th Edition Chapter 2: Operating-System Structures Silberschatz, Galvin and Gagne 2013 Chapter 2: Operating-System Structures Operating System Services User Operating System Interface System Calls Types of System

More information

ECOM 5341 Mobile Computing(Android) Eng.Ruba A. Salamah

ECOM 5341 Mobile Computing(Android) Eng.Ruba A. Salamah ECOM 5341 Mobile Computing(Android) 1 Eng.Ruba A. Salamah Lecture # 2 Android Tools Objectives Understand Android Tools Setup Android Development Environment Create HelloWorld Application Understand HelloWorld

More information

CHAPTER 2: SYSTEM STRUCTURES. By I-Chen Lin Textbook: Operating System Concepts 9th Ed.

CHAPTER 2: SYSTEM STRUCTURES. By I-Chen Lin Textbook: Operating System Concepts 9th Ed. CHAPTER 2: SYSTEM STRUCTURES By I-Chen Lin Textbook: Operating System Concepts 9th Ed. Chapter 2: System Structures Operating System Services User Operating System Interface System Calls Types of System

More information

Chapter 2 Setting Up for Development

Chapter 2 Setting Up for Development Introduction to Android Application Development, Android Essentials, Fifth Edition Chapter 2 Setting Up for Development Chapter 2 Overview Learn how to set up our Android development environment Look at

More information

Android App Development. Muhammad Sharjeel COMSATS Institute of Information Technology, Lahore

Android App Development. Muhammad Sharjeel COMSATS Institute of Information Technology, Lahore Android App Development Muhammad Sharjeel COMSATS Institute of Information Technology, Lahore Mobile devices (e.g., smartphone, tablet PCs, etc.) are increasingly becoming an essential part of human life

More information

Mobile hacking. Marit Iren Rognli Tokle

Mobile hacking. Marit Iren Rognli Tokle Mobile hacking Marit Iren Rognli Tokle 14.11.2018 «Hacker boss Marit» Software Engineer at Sopra Steria Leading TG:Hack, Norways largest hacking competition Leading UiO-CTF with Laszlo Shared 1st place

More information

12.1 Introduction OpenCV4Android SDK Getting the SDK

12.1 Introduction OpenCV4Android SDK Getting the SDK Chapter 12 OpenCV For Android 12.1 Introduction OpenCV (Open Source Computer Vision Library) is a popular open source software library designed for computer vision application and machine learning. Its

More information

Android Online Training

Android Online Training Android Online Training IQ training facility offers Android Online Training. Our Android trainers come with vast work experience and teaching skills. Our Android training online is regarded as the one

More information

Appendix A GLOSSARY. SYS-ED/ Computer Education Techniques, Inc.

Appendix A GLOSSARY. SYS-ED/ Computer Education Techniques, Inc. Appendix A GLOSSARY SYS-ED/ Computer Education Techniques, Inc. $# Number of arguments passed to a script. $@ Holds the arguments; unlike $* it has the capability for separating the arguments. $* Holds

More information

Understand applications and their components. activity service broadcast receiver content provider intent AndroidManifest.xml

Understand applications and their components. activity service broadcast receiver content provider intent AndroidManifest.xml Understand applications and their components activity service broadcast receiver content provider intent AndroidManifest.xml Android Application Written in Java (it s possible to write native code) Good

More information

CS378 -Mobile Computing. Anatomy of and Android App and the App Lifecycle

CS378 -Mobile Computing. Anatomy of and Android App and the App Lifecycle CS378 -Mobile Computing Anatomy of and Android App and the App Lifecycle Hello Android Tutorial http://developer.android.com/resources/tutorials/hello-world.html Important Files src/helloandroid.java Activity

More information

BCA 6. Question Bank

BCA 6. Question Bank BCA 6 030010601 : Introduction to Mobile Application Development Question Bank Unit 1: Introduction to Android and Development tools Short questions 1. What kind of tool is used to simulate Android application?

More information

GUJARAT TECHNOLOGICAL UNIVERSITY

GUJARAT TECHNOLOGICAL UNIVERSITY 1. Learning Objectives: To be able to understand the process of developing software for the mobile To be able to create mobile applications on the Android Platform To be able to create mobile applications

More information

CONCEPTES AVANÇATS DE SISTEMES OPERATIUS

CONCEPTES AVANÇATS DE SISTEMES OPERATIUS CONCEPTES AVANÇATS DE SISTEMES OPERATIUS Facultat d'informàtica de Barcelona, Dept. d'arquitectura de Computadors, curs 2016/2017 2Q Pràctiques de laboratori Android and Linux Objectives In this laboratory

More information

12 Publishing Android Applications

12 Publishing Android Applications 12 Publishing Android Applications WHAT YOU WILL LEARN IN THIS CHAPTER How to prepare your application for deployment Exporting your application as an APK fi le and signing it with a new certificate How

More information

Assignment 1: Port & Starboard

Assignment 1: Port & Starboard Assignment 1: Port & Starboard Revisions: Jan 7: Added note on how to clean project for submission. Submit a ZIP file of all the deliverables to the CourSys: https://courses.cs.sfu.ca/ All submissions

More information

Using Hive for Data Warehousing

Using Hive for Data Warehousing An IBM Proof of Technology Using Hive for Data Warehousing Unit 1: Exploring Hive An IBM Proof of Technology Catalog Number Copyright IBM Corporation, 2013 US Government Users Restricted Rights - Use,

More information

Lab 1: Getting Started With Android Programming

Lab 1: Getting Started With Android Programming Islamic University of Gaza Faculty of Engineering Computer Engineering Dept. Eng. Jehad Aldahdooh Mobile Computing Android Lab Lab 1: Getting Started With Android Programming To create a new Android Project

More information

Copyright

Copyright 1 Overview: Mobile APPS Categories Types Distribution/Installation/Logs Mobile Test Industry Standards Remote Device Access (RDA) Emulators Simulators Troubleshooting Guide App Risk Analysis 2 Mobile APPS:

More information

Android AOSP Overview. Karthik Dantu and Steve Ko

Android AOSP Overview. Karthik Dantu and Steve Ko Android AOSP Overview Karthik Dantu and Steve Ko Administrivia Any issues in building? Android Build System & Source Tree Today s goal Getting to know the build system Navigating the source tree Resources

More information

Lab 3-2: Exploring the Heap

Lab 3-2: Exploring the Heap Lab 3-2: Exploring the Heap Objectives Become familiar with the Windows Embedded CE 6.0 heap Prerequisites Completed Lab 2-1 Estimated time to complete this lab: 30 minutes Lab Setup To complete this lab,

More information

Android Programming (5 Days)

Android Programming (5 Days) www.peaklearningllc.com Android Programming (5 Days) Course Description Android is an open source platform for mobile computing. Applications are developed using familiar Java and Eclipse tools. This Android

More information

Android System Development Training 4-day session

Android System Development Training 4-day session Android System Development Training 4-day session Title Android System Development Training Overview Understanding the Android Internals Understanding the Android Build System Customizing Android for a

More information

Cisco Remote Expert Manager Agent s Workstation Setup Guide

Cisco Remote Expert Manager Agent s Workstation Setup Guide Cisco Remote Expert Manager Agent s Workstation Setup Guide Release 1.9.5 July 7, 2015 Note All advertising materials mentioning features or use of this software must display the following acknowledgement:

More information

Lab 3: Using Worklight Server and Environment Optimization Lab Exercise

Lab 3: Using Worklight Server and Environment Optimization Lab Exercise Lab 3: Using Worklight Server and Environment Optimization Lab Exercise Table of Contents Lab 3 Using the Worklight Server and Environment Optimizations... 3-4 3.1 Building and Testing on the Android Platform...3-4

More information

Diploma in Android Programming (DAP)

Diploma in Android Programming (DAP) Diploma in Android Programming (DAP) Duration: 01 Year Total credit: 32 1 st Semester (DAP) Theory Course Course Title (T-L-P) Credit Code CSP-80 Operating Systems T 04 CSP-45 Programing in JAVA T 04 CSP-46

More information

Mobile Automation Testing

Mobile Automation Testing Mobile Automation Testing with Appium & Oxygen Software Release Process Today 1 3 Manual Testing is a Nightmare Test Engineer Selenium & Appium Selenium Advantages Cross Platform Native Testing Flexible

More information

Enterprise Architect. User Guide Series. Profiling

Enterprise Architect. User Guide Series. Profiling Enterprise Architect User Guide Series Profiling Investigating application performance? The Sparx Systems Enterprise Architect Profiler finds the actions and their functions that are consuming the application,

More information

Enterprise Architect. User Guide Series. Profiling. Author: Sparx Systems. Date: 10/05/2018. Version: 1.0 CREATED WITH

Enterprise Architect. User Guide Series. Profiling. Author: Sparx Systems. Date: 10/05/2018. Version: 1.0 CREATED WITH Enterprise Architect User Guide Series Profiling Author: Sparx Systems Date: 10/05/2018 Version: 1.0 CREATED WITH Table of Contents Profiling 3 System Requirements 8 Getting Started 9 Call Graph 11 Stack

More information

Mobile Programming Lecture 4. Debugging

Mobile Programming Lecture 4. Debugging Mobile Programming Lecture 4 Debugging Lecture 2 Review How do you make the android:inputtype attribute of an EditText both textcapwords and textmultiline? Why should you use a @string resource for TextViews

More information

Quick KVM 1.1. User s Guide. ClearCube Technology, Inc.

Quick KVM 1.1. User s Guide. ClearCube Technology, Inc. Quick KVM 1.1 User s Guide ClearCube Technology, Inc. Copyright 2005, ClearCube Technology, Inc. All rights reserved. Under copyright laws, this publication may not be reproduced or transmitted in any

More information

Data storage and exchange in Android

Data storage and exchange in Android Mobile App Development 1 Overview 2 3 SQLite Overview Implementation 4 Overview Methods to implement URI like SQL 5 Internal storage External storage Overview 1 Overview 2 3 SQLite Overview Implementation

More information

Choose OS and click on it

Choose OS and click on it 1. Installation: 1.1. Install Node.js. Cordova runs on the Node.js platform, which needs to be installed as the first step. Download installer from: https://nodejs.org/en/download/ 1.1.1. Choose LTS version,

More information

Android Eclipse You May Want To Manually Restart Adb From The Devices View

Android Eclipse You May Want To Manually Restart Adb From The Devices View Android Eclipse You May Want To Manually Restart Adb From The Devices View Adb is not connected while running Android Application in eclipse. Getting something like this You may want to manually restart

More information

Introduction to Android

Introduction to Android Introduction to Android http://myphonedeals.co.uk/blog/33-the-smartphone-os-complete-comparison-chart www.techradar.com/news/phone-and-communications/mobile-phones/ios7-vs-android-jelly-bean-vs-windows-phone-8-vs-bb10-1159893

More information

Configuring the Android Manifest File

Configuring the Android Manifest File Configuring the Android Manifest File Author : userone What You ll Learn in This Hour:. Exploring the Android manifest file. Configuring basic application settings. Defining activities. Managing application

More information

ANDROID SYLLABUS. Advanced Android

ANDROID SYLLABUS. Advanced Android Advanced Android 1) Introduction To Mobile Apps I. Why we Need Mobile Apps II. Different Kinds of Mobile Apps III. Briefly about Android 2) Introduction Android I. History Behind Android Development II.

More information

MarkLogic Server. Information Studio Developer s Guide. MarkLogic 8 February, Copyright 2015 MarkLogic Corporation. All rights reserved.

MarkLogic Server. Information Studio Developer s Guide. MarkLogic 8 February, Copyright 2015 MarkLogic Corporation. All rights reserved. Information Studio Developer s Guide 1 MarkLogic 8 February, 2015 Last Revised: 8.0-1, February, 2015 Copyright 2015 MarkLogic Corporation. All rights reserved. Table of Contents Table of Contents Information

More information

IBM Maximo Anywhere Version 7 Release 6. Planning, installation, and deployment IBM

IBM Maximo Anywhere Version 7 Release 6. Planning, installation, and deployment IBM IBM Maximo Anywhere Version 7 Release 6 Planning, installation, and deployment IBM Note Before using this information and the product it supports, read the information in Notices on page 65. This edition

More information

AT&T Entertainment Experience Suite Video Optimizer 1.2

AT&T Entertainment Experience Suite Video Optimizer 1.2 AT&T Entertainment Experience Suite Video Optimizer 1.2 Publication Date: September 2017 Legal Disclaimer This document and the information contained herein (collectively, the "Information") is provided

More information

Laboratory Assignment #4 Debugging in Eclipse CDT 1

Laboratory Assignment #4 Debugging in Eclipse CDT 1 Lab 4 (10 points) November 20, 2013 CS-2301, System Programming for Non-majors, B-term 2013 Objective Laboratory Assignment #4 Debugging in Eclipse CDT 1 Due: at 11:59 pm on the day of your lab session

More information

Section 2: Developer tools and you. Alex Mariakakis (staff-wide)

Section 2: Developer tools and you. Alex Mariakakis (staff-wide) Section 2: Developer tools and you Alex Mariakakis cse331-staff@cs.washington.edu (staff-wide) What is an SSH client? Uses the secure shell protocol (SSH) to connect to a remote computer o Enables you

More information

Presentation Outline 10/16/2016

Presentation Outline 10/16/2016 CPET 491 (Phase II) Fall Semester-2012 Adam O Haver Project Advisor/Instructor: Professor Paul Lin CEIT Department 1 Presentation Outline Executive Summary Introduction Solution Development Software Analysis

More information

Lecture 1 Introduction to Android. App Development for Mobile Devices. App Development for Mobile Devices. Announcement.

Lecture 1 Introduction to Android. App Development for Mobile Devices. App Development for Mobile Devices. Announcement. CSCE 315: Android Lectures (1/2) Dr. Jaerock Kwon App Development for Mobile Devices Jaerock Kwon, Ph.D. Assistant Professor in Computer Engineering App Development for Mobile Devices Jaerock Kwon, Ph.D.

More information

Computer Science E-76 Building Mobile Applications

Computer Science E-76 Building Mobile Applications Computer Science E-76 Building Mobile Applications Lecture 3: [Android] The SDK, Activities, and Views February 13, 2012 Dan Armendariz danallan@mit.edu 1 http://developer.android.com Android SDK and NDK

More information

Getting Started with Android Development Zebra Android Link-OS SDK Android Studio

Getting Started with Android Development Zebra Android Link-OS SDK Android Studio Getting Started with Android Development Zebra Android Link-OS SDK Android Studio Overview This Application Note describes the end-to-end process of designing, packaging, deploying and running an Android

More information

CS378 - Mobile Computing. Anatomy of an Android App and the App Lifecycle

CS378 - Mobile Computing. Anatomy of an Android App and the App Lifecycle CS378 - Mobile Computing Anatomy of an Android App and the App Lifecycle Application Components five primary components different purposes and different lifecycles Activity single screen with a user interface,

More information

Silk Test Testing Mobile Applications

Silk Test Testing Mobile Applications Silk Test 17.5 Testing Mobile Applications Micro Focus The Lawn 22-30 Old Bath Road Newbury, Berkshire RG14 1QN UK http://www.microfocus.com Copyright Micro Focus 1992-2016. All rights reserved. MICRO

More information

SAS Viya 3.4 Administration: Logging

SAS Viya 3.4 Administration: Logging SAS Viya 3.4 Administration: Logging Logging: Overview............................................................................. 1 Logging: How To...............................................................................

More information

User Guide. Android x86 Modified System. Sponsor: Huan Ren. Compiled by: Zachary Bair, Taronish Daruwalla, Joshua Duong, and Anthony Nguyen

User Guide. Android x86 Modified System. Sponsor: Huan Ren. Compiled by: Zachary Bair, Taronish Daruwalla, Joshua Duong, and Anthony Nguyen User Guide Android x86 Modified System Sponsor: Huan Ren Compiled by: Zachary Bair, Taronish Daruwalla, Joshua Duong, and Anthony Nguyen Table of Contents 1. What is Android x86? 2. How to get Android

More information

CSCI 201 Lab 1 Environment Setup

CSCI 201 Lab 1 Environment Setup CSCI 201 Lab 1 Environment Setup "The journey of a thousand miles begins with one step." - Lao Tzu Introduction This lab document will go over the steps to install and set up Eclipse, which is a Java integrated

More information

Protection! User Guide. A d m i n i s t r a t o r G u i d e. v L i c e n s i n g S e r v e r. Protect your investments with Protection!

Protection! User Guide. A d m i n i s t r a t o r G u i d e. v L i c e n s i n g S e r v e r. Protect your investments with Protection! jproductivity LLC Protect your investments with Protection! User Guide Protection! L i c e n s i n g S e r v e r v 4. 9 A d m i n i s t r a t o r G u i d e tm http://www.jproductivity.com Notice of Copyright

More information

Training Management System

Training Management System Bibash Shah Training Management System Android Application for Training Management Helsinki Metropolia University of Applied Sciences Bachelor of Engineering Information Technology Bachelor s Thesis 29

More information

USB TO SERIAL CONVERTER

USB TO SERIAL CONVERTER USB TO SERIAL CONVERTER Quick Installation Guide Windows 7/8/8.1 DA-70158 Step 1: Step 2: Insert CD Driver of this product to the CD-ROM Connect the device to a spare USB port on your PC. If there is an

More information