Exercise 1: First Android App

Size: px
Start display at page:

Download "Exercise 1: First Android App"

Transcription

1 Exercise 1: First Android App Start a New Android Studio App Open Android Studio. Click on Start a new Android Studio project. For Application name enter First App. Keep other fields as default and click Next. On the next screen, click on the Phone and Tablet drop down menu, and select API 23: Android 6.0 (Marshmallow). Click Next. Keep the default Empty Activity and click Next. Keep the defaults and click Next. 1

2 Real Devices Quick Start If you have an Android smartphone, you can quickly test this blank sample app on your phone as long as it is a version higher than 6.0. You can check your Android version in Settings About Phone or Settings System About Phone (if Android 8.0 or higher). If you have Android 6.0 or higher, you can enable apps to run on your real device by going to Settings About Phone or Settings System About Phone (if Android 8.0 or higher) and tapping Build number 7 times. This will enable the Developer options menu. Now that you have activated the Developer options menu, go to Settings Developer options or Settings System Developer options (if Android 8.0 or higher), and find USB debugging. Enable USB debugging, and you should be able to run apps on your real device. 2

3 Connect your Android smartphone to your laptop through your USB cable. Now run your app. You should see a choice between running the app on your real device, or running it on the virtual device you created. Choose your real device. If your get the option for Instant Run, choose Proceed without Instant Run. 3

4 Since this keeps popping up whenever you want to run an app, you can disable this in Android Studio Preferences. Under Build, Execution, Deployment, Select Instant Run, uncheck Enable Instant Run, and click OK. You should see the Hello World! on your smartphone. It is preferable to keep running your apps on the smartphone vs. on virtual devices. 4

5 Changing the Android App Appearance The appearance of the Android App can be manipulated in the app/res/layout/activity main.xml file. Open this file (double click) to see a similar screen as below. Select a Button in the Common view box. Hold the button and drag it into the window as shown. 5

6 During our exercises, when adding a new View, while highlighted, we should click on the Infer Constraints so that the views are positioned on the screen as intended. Without the Infer Constraints, all views added will appear on the upper left corner. You can add different kinds of widgets in this manner. Drag a switch to the window. While highlighted, click on the Infer Constraints. If done correctly you will see arrows positioning the views as indicated by the green circles. 6

7 Click the run app button, and select your device to run. You should see that the application was updated with your changes to the appearance. Click the button and switch on the screen to see the animations. 7

8 Back in Android Studio, view the main activity.xml as text. You can see the appearance visually or in text by clicking Design or Text. While viewing main activity.xml as text, find the property of the Textview that displays Hello World!, and change it so that it says EGG 101. Run the app after to confirm the change you made. 8

9 Back in Android Studio, view the main activity.xml as Design. You can manipulate some views with user interface. For example, highlight the TextView and change the textsize. Other settings, such as the textcolor can also be changed. Run the app again to see that the size of the TextView was changed. 9

10 Small Summary: Appearance of a window is in an XML file in app/res/layout/ (main activity.xml in our example) Can be viewed in Design or Text Easily drag and drop common views (e.g. button, textview) Use Infer Constraints to line up views in window Can be manipulated in Text (code) or in Design (user interface) 10

11 Adding Some Logic Now we will add some logic, so that button presses will do something. Logic is added in the app/java/- com.example.{{your username.first app/mainactivity.java file. You can have a reference of the code we will add by clicking on First add some lines of code to Android Studio. The following lines will give us a Button, TextView, and boolean variables that we can manipulate. public class MainActivity extends AppCompatActivity { // ////////////// Copy t h i s Button my button ; // v a r i a b l e f o r a button TextView my textview ; // v a r i a b l e f o r a t e x t view boolean o n o r o f f = f a l s e ; // ////////////// Copy t h i protected void oncreate ( Bundle s a v e d I n s t a n c e S t a t e ) { super. oncreate ( s a v e d I n s t a n c e S t a t e ) ; setcontentview (R. layout. a c t i v i t y m a i n ) ; When you copy and paste code, you may see some words in red. To fix that, if you click on the word, you may see the prompt like below. Hit the alt and return key at the same time to get rid of the error. You can also just highlight and retype the word in red to get rid of the error. 11

12 Go to your main activity.xml file. Highlight the button, and for the ID attribute in the upper right, put button if it is not already there. Highlight the text view, and put textview in the ID attribute if it is not already there. 12

13 Now, we will connect our variables to the views in the main activity.xml file. Add the following lines inside the oncreate function (in protected void oncreate ( Bundle s a v e d I n s t a n c e S t a t e ) { super. oncreate ( s a v e d I n s t a n c e S t a t e ) ; setcontentview (R. l a y o u t. a c t i v i t y m a i n ) ; // ////////////// Copy t h i s my button = ( Button ) findviewbyid (R. id. button ) ; // g e t i d from appearance my textview = ( TextView ) findviewbyid (R. id. textview ) ; // g e t i d from appearance // ////////////// Copy t h i s When the button is clicked, we will add some logic so that if the variable on or off is on, the text color will turn to white, and background color will turn to black. When on or off is off the text color will turn to black, and background color will turn to protected void oncreate ( Bundle s a v e d I n s t a n c e S t a t e ) { super. oncreate ( s a v e d I n s t a n c e S t a t e ) ; setcontentview (R. l a y o u t. a c t i v i t y m a i n ) ; my button = ( Button ) findviewbyid (R. id. button ) ; // g e t i d from appearance my textview = ( TextView ) findviewbyid (R. id. textview ) ; // g e t i d from appearance // ////////////// Copy t h i s my button. s e t O n C l i c k L i s t e n e r (new View. O n C l i c k L i s t e n e r ( ) public void o n C l i c k ( View view ) { //when t h e button i s c l i c k e d i f ( o n o r o f f ){ // i f on my textview. settextcolor ( Color.WHITE) ; // s e t t e x t color to white my textview. setbackgroundcolor ( Color.BLACK) ; // s e t background color to b l a c k o n o r o f f=f a l s e ; //now o f f e l s e { // i f o f f my textview. s e t T e x t C o l o r ( Color.BLACK) ; // s e t t e x t c o l o r to b l a c k my textview. setbackgroundcolor ( Color.WHITE) ; // s e t background color to white o n o r o f f=true ; //now on ) ; // ////////////// Copy t h i s The complete app should look similar as below. You can copy and paste (except the first line. The first line is different for everyone s computer) the example from exercise1_button.txt. 13

14 Run the app. You should see that by clicking the button, you can change the colors of the text view. 14

15 Small Summary: Code, where the action happens, is in the MainActivity.java file. You connect variables in code to views from the main activity.xml file (appearance). All kinds of logic can be implemented in code. Apps process some inputs (like touching the screen), make decisions (based on your code), actuate outputs (change the color of the textview). 15

16 Using Some Sensors Android phones have many sensors that can be tapped into and used in apps. We will add a textview, take readings from an Android smartphone s ambient light sensor, and display the readings on the new textview. 1. Open the main activity.xml file 2. Delete your Switch if you still have it. 3. Drag and drop a new TextView into the window, and click Infer Constraints 4. In the ID attribute, put light textview, and increase the text size. To use the Android OS sensors, we will use the SensorManager, Sensor, SensorEvent, and SensorEventListener. We will access the sensor framework by using the SensorManager, and get the specific ambient light sensor with Sensor. We will make our Main Activity react to when there are new readings from the ambient light sensor by making it a SensorEventListener. Finally, when new readings come, we will obtain the data from SensorEvent and display it on the textview we added. Your MainActivity should look like below. You can copy and paste (except the first line. The first line is different for everyone s computer) the example from exercise1_sensor.txt. 16

17 import android. app. S e r v i c e ; import android. g r a p h i c s. Color ; import android. hardware. Sensor ; import android. hardware. SensorEvent ; import android. hardware. S e n s o r E v e n t L i s t e n e r ; import android. hardware. SensorManager ; import android. support. v7. app. AppCompatActivity ; import android. os. Bundle ; import android. view. View ; import android. widget. Button ; import android. widget. TextView ; public c l a s s MainActivity extends AppCompatActivity implements S e n s o r E v e n t L i s t e n e r { Button my button ; // v a r i a b l e f o r a button TextView my textview ; // v a r i a b l e f o r a t e x t view boolean o n o r o f f = f a l s e ; // ////////////// New TextView l i g h t t e x t V i e w ; //new t e x t v i e w f o r d i s p l a y i n g sensor data SensorManager my Sensor Manager ; // f o r accessing Android sensors Sensor my Sensor ; // f o r s p e c i f i c sensor chosen // ////////////// protected void oncreate ( Bundle s a v e d I n s t a n c e S t a t e ) { super. oncreate ( s a v e d I n s t a n c e S t a t e ) ; setcontentview (R. l a y o u t. a c t i v i t y m a i n ) ; my button = ( Button ) findviewbyid (R. id. button ) ; // g e t i d from appearance my textview = ( TextView ) findviewbyid (R. id. textview ) ; // g e t i d from appearance // ////////////// New l i g h t t e x t V i e w = ( TextView ) findviewbyid (R. i d. l i g h t t e x t V i e w ) ; // g e t i d from appearance my Sensor Manager = ( SensorManager ) getsystemservice ( S e r v i c e. SENSOR SERVICE ) ; // connect with Android OS sensor manager my Sensor = my Sensor Manager. g e t D e f a u l t S e n s o r ( Sensor. TYPE LIGHT ) ; // s e l e c t l i g h t sensor // ////////////// New my button. s e t O n C l i c k L i s t e n e r (new View. O n C l i c k L i s t e n e r ( ) public void o n C l i c k ( View view ) { //when t h e button i s c l i c k e d i f ( o n o r o f f ){ // i f on my textview. settextcolor ( Color.WHITE) ; // s e t t e x t color to white my textview. setbackgroundcolor ( Color.BLACK) ; // s e t background color to b l a c k o n o r o f f=f a l s e ; //now o f f e l s e { // i f o f f my textview. s e t T e x t C o l o r ( Color.BLACK) ; // s e t t e x t c o l o r to b l a c k my textview. setbackgroundcolor ( Color.WHITE) ; // s e t background color to white o n o r o f f=true ; //now on ) ; // ////////////// protected void onpause ( ) { super. onpause ( ) ; my Sensor Manager. u n r e g i s t e r L i s t e n e r ( t h i s ) protected void onresume ( ) { super. onresume ( ) ; my Sensor Manager. r e g i s t e r L i s t e n e r ( this, my Sensor, SensorManager.SENSOR DELAY NORMAL) public void onsensorchanged ( SensorEvent event ) { i f ( event. s e n s o r. gettype ( ) == Sensor. TYPE LIGHT){ l i g h t t e x t V i e w. s e ttext ( Value : + event. v a l u e s [ 0 ] ) ; // s e t t h e t e x t view to v a l u e t h a t came from 17

18 public void onaccuracychanged ( Sensor s e n s o r, int a c c u racy ) { // ////////////// New Run your app. It should display the light intensity reading on the new text view. If you have a physical device, change the ambient light your phone senses by moving your hand closer to the top of your screen where the sensor is. If you have a virtual device, you can go to..., Virtual Sensors, Additional Sensors, and slide the light intensity bar to imitate the change in light intensity. 18

19 It is very easy to change the type of sensor that is being read. For example, a proximity sensor is used to detect when a person is holding their phone to their ear. Change the line where Sensor is chosen from TYPE LIGHT to TYPE PROXIMITY. Also replace the inside of the onsensor Changed method with the following: You can copy and paste (except the first line. The first line is different for everyone s computer) this example from faculty.unlv.edu//egg101/exercise1_proximity.txt. i f ( event. s e n s o r. gettype ( ) == Sensor.TYPE PROXIMITY){ i f ( event. v a l u e s [0]==0){ l i g h t t e x t V i e w. s e ttext ( Nearby : Yes ) ; e l s e { l i g h t t e x t V i e w. s e ttext ( Nearby : No ) ; Run your app. It should display Yes or No depending on if an object is nearby. If you have a physical device, move your hand closer to the top of your screen where the sensor is to see the changes. If you have a virtual device, you can go to..., Virtual Sensors, Additional Sensors, and slide the proximity bar to 0 to imitate an object close by. 19

20 Small Summary: Smartphone sensors can be easily used and read in Android OS. There are many type of sensors that can be used (we used the ambient light sensor, and proximity sensor). Our activity listens to changes in the sensor readings and acts when new data is available. In our app, we simply display the new value of the reading. 20

Lab 3. Accessing GSM Functions on an Android Smartphone

Lab 3. Accessing GSM Functions on an Android Smartphone Lab 3 Accessing GSM Functions on an Android Smartphone 1 Lab Overview 1.1 Goals The objective of this practical exercise is to create an application for a smartphone with the Android mobile operating system,

More information

University of Stirling Computing Science Telecommunications Systems and Services CSCU9YH: Android Practical 1 Hello World

University of Stirling Computing Science Telecommunications Systems and Services CSCU9YH: Android Practical 1 Hello World University of Stirling Computing Science Telecommunications Systems and Services CSCU9YH: Android Practical 1 Hello World Before you do anything read all of the following red paragraph! For this lab you

More information

Mobile App Design Project Doodle App. Description:

Mobile App Design Project Doodle App. Description: Mobile App Design Project Doodle App Description: This App takes user touch input and allows the user to draw colored lines on the screen with touch gestures. There will be a menu to allow the user to

More information

Create new Android project in Android Studio Add Button and TextView to layout Learn how to use buttons to call methods. Modify strings.

Create new Android project in Android Studio Add Button and TextView to layout Learn how to use buttons to call methods. Modify strings. Hello World Lab Objectives: Create new Android project in Android Studio Add Button and TextView to layout Learn how to use buttons to call methods. Modify strings.xml What to Turn in: The lab evaluation

More information

Step 1 Turn on the device and log in with the password, PIN, or other passcode, if necessary.

Step 1 Turn on the device and log in with the password, PIN, or other passcode, if necessary. Working with Android Introduction In this lab, you will place apps and widgets on the home screen and move them between different home screens. You will also create folders to which apps will be added

More information

CS 528 Mobile and Ubiquitous Computing Lecture 3b: Android Activity Lifecycle and Intents Emmanuel Agu

CS 528 Mobile and Ubiquitous Computing Lecture 3b: Android Activity Lifecycle and Intents Emmanuel Agu CS 528 Mobile and Ubiquitous Computing Lecture 3b: Android Activity Lifecycle and Intents Emmanuel Agu Android Activity LifeCycle Starting Activities Android applications don't start with a call to main(string[])

More information

ELET4133: Embedded Systems. Topic 15 Sensors

ELET4133: Embedded Systems. Topic 15 Sensors ELET4133: Embedded Systems Topic 15 Sensors Agenda What is a sensor? Different types of sensors Detecting sensors Example application of the accelerometer 2 What is a sensor? Piece of hardware that collects

More information

Xin Pan. CSCI Fall

Xin Pan. CSCI Fall Xin Pan CSCI5448 2011 Fall Outline Introduction of Android System Four primary application components AndroidManifest.xml Introduction of Android Sensor Framework Package Interface Classes Examples of

More information

CPET 565 Mobile Computing Systems CPET/ITC 499 Mobile Computing. Lab & Demo 2 (1 &2 of 3) Hello-Goodbye App Tutorial

CPET 565 Mobile Computing Systems CPET/ITC 499 Mobile Computing. Lab & Demo 2 (1 &2 of 3) Hello-Goodbye App Tutorial CPET 565 Mobile Computing Systems CPET/ITC 499 Mobile Computing Reference Lab & Demo 2 (1 &2 of 3) Tutorial Android Programming Concepts, by Trish Cornez and Richard Cornez, pubslihed by Jones & Barlett

More information

Introduction To JAVA Programming Language

Introduction To JAVA Programming Language Introduction To JAVA Programming Language JAVA is a programming language which is used in Android App Development. It is class based and object oriented programming whose syntax is influenced by C++. The

More information

ES E 3 3 L a L b 5 Android development

ES E 3 3 L a L b 5 Android development ES3 Lab 5 Android development This Lab Create a simple Android interface Use XML interface layouts Access the filesystem Play media files Info about Android development can be found at http://developer.android.com/index.html

More information

CS 4518 Mobile and Ubiquitous Computing Lecture 4: Data-Driven Views, Android Components & Android Activity Lifecycle Emmanuel Agu

CS 4518 Mobile and Ubiquitous Computing Lecture 4: Data-Driven Views, Android Components & Android Activity Lifecycle Emmanuel Agu CS 4518 Mobile and Ubiquitous Computing Lecture 4: Data-Driven Views, Android Components & Android Activity Lifecycle Emmanuel Agu Announcements Group formation: Projects 2, 3 and final project will be

More information

Android Studio is google's official IDE(Integrated Development Environment) for Android Developers.

Android Studio is google's official IDE(Integrated Development Environment) for Android Developers. Android Studio - Hello World Objectives: In this tutorial you will learn how to create your first mobile app using Android Studio. At the end of this session you will be able to: Create Android Project.

More information

Mobile Programming Lecture 1. Getting Started

Mobile Programming Lecture 1. Getting Started Mobile Programming Lecture 1 Getting Started Today's Agenda About the Android Studio IDE Hello, World! Project Android Project Structure Introduction to Activities, Layouts, and Widgets Editing Files in

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

Android User Interface Android Smartphone Programming. Outline University of Freiburg

Android User Interface Android Smartphone Programming. Outline University of Freiburg Android Smartphone Programming Matthias Keil Institute for Computer Science Faculty of Engineering 20. Oktober 2014 Outline 1 2 Multi-Language Support 3 Summary Matthias Keil 20. Oktober 2014 2 / 19 From

More information

Android Tutorial: Part 3

Android Tutorial: Part 3 Android Tutorial: Part 3 Adding Client TCP/IP software to the Rapid Prototype GUI Project 5.2 1 Step 1: Copying the TCP/IP Client Source Code Quit Android Studio Copy the entire Android Studio project

More information

SQLite. 5COSC005W MOBILE APPLICATION DEVELOPMENT Lecture 6: Working with Databases. What is a Database Server. Advantages of SQLite

SQLite. 5COSC005W MOBILE APPLICATION DEVELOPMENT Lecture 6: Working with Databases. What is a Database Server. Advantages of SQLite SQLite 5COSC005W MOBILE APPLICATION DEVELOPMENT Lecture 6: Working with Databases Dr Dimitris C. Dracopoulos SQLite is a tiny yet powerful database engine. Besides Android, it can be found in: Apple iphone

More information

(Refer Slide Time: 1:12)

(Refer Slide Time: 1:12) Mobile Computing Professor Pushpendra Singh Indraprastha Institute of Information Technology Delhi Lecture 06 Android Studio Setup Hello, today s lecture is your first lecture to watch android development.

More information

Android User Interface

Android User Interface Android Smartphone Programming Matthias Keil Institute for Computer Science Faculty of Engineering 20. Oktober 2014 Outline 1 Android User Interface 2 Multi-Language Support 3 Summary Matthias Keil Android

More information

Android Development Crash Course

Android Development Crash Course Android Development Crash Course Campus Sundsvall, 2015 Stefan Forsström Department of Information and Communication Systems Mid Sweden University, Sundsvall, Sweden OVERVIEW The Android Platform Start

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

CS 4518 Mobile and Ubiquitous Computing Lecture 5: Rotating Device, Saving Data, Intents and Fragments Emmanuel Agu

CS 4518 Mobile and Ubiquitous Computing Lecture 5: Rotating Device, Saving Data, Intents and Fragments Emmanuel Agu CS 4518 Mobile and Ubiquitous Computing Lecture 5: Rotating Device, Saving Data, Intents and Fragments Emmanuel Agu Administrivia Moved back deadlines for projects 2, 3 and final project See updated schedule

More information

CS 370 Android Basics D R. M I C H A E L J. R E A L E F A L L

CS 370 Android Basics D R. M I C H A E L J. R E A L E F A L L CS 370 Android Basics D R. M I C H A E L J. R E A L E F A L L 2 0 1 5 Activity Basics Manifest File AndroidManifest.xml Central configuration of Android application Defines: Name of application Icon for

More information

INTRODUCTION TO ANDROID

INTRODUCTION TO ANDROID INTRODUCTION TO ANDROID 1 Niv Voskoboynik Ben-Gurion University Electrical and Computer Engineering Advanced computer lab 2015 2 Contents Introduction Prior learning Download and install Thread Android

More information

ORACLE UNIVERSITY AUTHORISED EDUCATION PARTNER (WDP)

ORACLE UNIVERSITY AUTHORISED EDUCATION PARTNER (WDP) Android Syllabus Pre-requisite: C, C++, Java Programming SQL & PL SQL Chapter 1: Introduction to Android Introduction to android operating system History of android operating system Features of Android

More information

Lab - Working with ios

Lab - Working with ios Lab - Working with ios Introduction In this lab, you will place apps on the home screen and move them between different home screens. You will also create folders. Finally, you will install on the ios

More information

CS 528 Mobile and Ubiquitous Computing Lecture 4a: Fragments, Camera Emmanuel Agu

CS 528 Mobile and Ubiquitous Computing Lecture 4a: Fragments, Camera Emmanuel Agu CS 528 Mobile and Ubiquitous Computing Lecture 4a: Fragments, Camera Emmanuel Agu Fragments Recall: Fragments Sub-components of an Activity (screen) An activity can contain multiple fragments, organized

More information

CS 528 Mobile and Ubiquitous Computing Lecture 3: Android UI, WebView, Android Activity Lifecycle Emmanuel Agu

CS 528 Mobile and Ubiquitous Computing Lecture 3: Android UI, WebView, Android Activity Lifecycle Emmanuel Agu CS 528 Mobile and Ubiquitous Computing Lecture 3: Android UI, WebView, Android Activity Lifecycle Emmanuel Agu Android UI Design Example GeoQuiz App Reference: Android Nerd Ranch, pgs 1 30 App presents

More information

Lifecycle Callbacks and Intents

Lifecycle Callbacks and Intents SE 435: Development in the Android Environment Recitations 2 3 Semester 1 5779 4 Dec - 11 Dec 2018 Lifecycle Callbacks and Intents In this recitation we ll prepare a mockup tool which demonstrates the

More information

Lab 1 - Setting up the User s Profile UI

Lab 1 - Setting up the User s Profile UI Lab 1 - Setting up the User s Profile UI Getting started This is the first in a series of labs that allow you to develop the MyRuns App. The goal of the app is to capture and display (using maps) walks

More information

API Guide for Gesture Recognition Engine. Version 2.0

API Guide for Gesture Recognition Engine. Version 2.0 API Guide for Gesture Recognition Engine Version 2.0 Table of Contents Gesture Recognition API... 3 API URI... 3 Communication Protocol... 3 Getting Started... 4 Protobuf... 4 WebSocket Library... 4 Project

More information

CS 4330/5390: Mobile Application Development Exam 1

CS 4330/5390: Mobile Application Development Exam 1 1 Spring 2017 (Thursday, March 9) Name: CS 4330/5390: Mobile Application Development Exam 1 This test has 8 questions and pages numbered 1 through 7. Reminders This test is closed-notes and closed-book.

More information

Topics Related. SensorManager & Sensor SensorEvent & SensorEventListener Filtering Sensor Values Example applications

Topics Related. SensorManager & Sensor SensorEvent & SensorEventListener Filtering Sensor Values Example applications Sensors Lecture 23 Context-aware System a system is context-aware if it uses context to provide relevant information and/or services to the user, where relevancy depends on the user s task. adapt operations

More information

CPET 565 Mobile Computing Systems CPET/ITC 499 Mobile Computing. Lab & Demo 2 (Part 1-2) Hello-Goodbye App Tutorial

CPET 565 Mobile Computing Systems CPET/ITC 499 Mobile Computing. Lab & Demo 2 (Part 1-2) Hello-Goodbye App Tutorial CPET 565 Mobile Computing Systems CPET/ITC 499 Mobile Computing Reference Lab & Demo 2 (Part 1-2) Tutorial Android Programming Concepts, by Trish Cornez and Richard Cornez, pubslihed by Jones & Barlett

More information

CS 528 Mobile and Ubiquitous Computing Lecture 1b: Introduction to Android. Emmanuel Agu

CS 528 Mobile and Ubiquitous Computing Lecture 1b: Introduction to Android. Emmanuel Agu CS 528 Mobile and Ubiquitous Computing Lecture 1b: Introduction to Android Emmanuel Agu What is Android? Android is world s leading mobile operating system Open source (https://source.android.com/setup/)

More information

Lab - Working with Android

Lab - Working with Android Introduction In this lab, you will place apps and widgets on the home screen and move them between different screens. You will also create folders. Finally, you will install and uninstall apps from the

More information

Android development. Outline. Android Studio. Setting up Android Studio. 1. Set up Android Studio. Tiberiu Vilcu. 2.

Android development. Outline. Android Studio. Setting up Android Studio. 1. Set up Android Studio. Tiberiu Vilcu. 2. Outline 1. Set up Android Studio Android development Tiberiu Vilcu Prepared for EECS 411 Sugih Jamin 15 September 2017 2. Create sample app 3. Add UI to see how the design interface works 4. Add some code

More information

CS 4518 Mobile and Ubiquitous Computing Lecture 2: Introduction to Android. Emmanuel Agu

CS 4518 Mobile and Ubiquitous Computing Lecture 2: Introduction to Android. Emmanuel Agu CS 4518 Mobile and Ubiquitous Computing Lecture 2: Introduction to Android Emmanuel Agu What is Android? Android is world s leading mobile operating system Open source Google: Owns Android, maintains it,

More information

Android Programming Lecture 2 9/7/2011

Android Programming Lecture 2 9/7/2011 Android Programming Lecture 2 9/7/2011 Creating a first app 1. Create a new Android project (a collection of source code and resources for the app) from the Eclipse file menu 2. Choose a project name (can

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

ABOUT THE KEYBOARD KEYBOARD K480 TOP

ABOUT THE KEYBOARD KEYBOARD K480 TOP ABOUT THE KEYBOARD You aren t limited to a single device, so why should your keyboard be? A new standard for wireless convenience and versatility, the Logitech Bluetooth Multi-Device Keyboard K480 connects

More information

ARTISTRY SKIN ANALYZER. How to Export/Import Data from ASA 1.0 to ASA 2.0

ARTISTRY SKIN ANALYZER. How to Export/Import Data from ASA 1.0 to ASA 2.0 2018 ARTISTRY SKIN ANALYZER How to Export/Import Data from ASA 1.0 to ASA 2.0 ios Version STEP 1 Before you start with the data export/import, please make sure the following items are available, and you

More information

States of Activities. Active Pause Stop Inactive

States of Activities. Active Pause Stop Inactive noname Conceptual Parts States of Activities Active Pause Stop Inactive Active state The state that the activity is on the most foreground and having a focus. This is in Active state. Active state The

More information

Our First Android Application

Our First Android Application Mobile Application Development Lecture 04 Imran Ihsan Our First Android Application Even though the HelloWorld program is trivial in introduces a wealth of new ideas the framework, activities, manifest,

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

You've got an amazing new keyboard. Now learn how to get more out of it!

You've got an amazing new keyboard. Now learn how to get more out of it! You've got an amazing new keyboard. Now learn how to get more out of it! WHAT DO YOU WANT TO DO? ABOUT THE KEYBOARD FIRST-TIME SETUP ADD MORE DEVICES SELECT DEVICES SWAPPING DEVICES MULTIPLE KEY LAYOUTS

More information

Tutorial on Basic Android Setup

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

More information

Android App Development. Mr. Michaud ICE Programs Georgia Institute of Technology

Android App Development. Mr. Michaud ICE Programs Georgia Institute of Technology Android App Development Mr. Michaud ICE Programs Georgia Institute of Technology Android Operating System Created by Android, Inc. Bought by Google in 2005. First Android Device released in 2008 Based

More information

Agenda. Overview of Xamarin and Xamarin.Android Xamarin.Android fundamentals Creating a detail screen

Agenda. Overview of Xamarin and Xamarin.Android Xamarin.Android fundamentals Creating a detail screen Gill Cleeren Agenda Overview of Xamarin and Xamarin.Android Xamarin.Android fundamentals Creating a detail screen Lists and navigation Navigating from master to detail Optimizing the application Preparing

More information

Mobile Computing Practice # 2c Android Applications - Interface

Mobile Computing Practice # 2c Android Applications - Interface Mobile Computing Practice # 2c Android Applications - Interface One more step in the restaurants application. 1. Design an alternative layout for showing up in landscape mode. Our current layout is not

More information

You can also search online templates which can be picked based on background themes or based on content needs. Page eleven will explain more.

You can also search online templates which can be picked based on background themes or based on content needs. Page eleven will explain more. Microsoft PowerPoint 2016 Part 1: The Basics Opening PowerPoint Double click on the PowerPoint icon on the desktop. When you first open PowerPoint you will see a list of new presentation themes. You can

More information

Mobile User Interfaces

Mobile User Interfaces Mobile User Interfaces CS 2046 Mobile Application Development Fall 2010 Announcements Next class = Lab session: Upson B7 Office Hours (starting 10/25): Me: MW 1:15-2:15 PM, Upson 360 Jae (TA): F 11:00

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

Center for Faculty Development and Support Creating Powerful and Accessible Presentation

Center for Faculty Development and Support Creating Powerful and Accessible Presentation Creating Powerful and Accessible Presentation PowerPoint 2007 Windows Tutorial Contents Create a New Document... 3 Navigate in the Normal View (default view)... 3 Input and Manipulate Text in a Slide...

More information

Screen Slides. The Android Studio wizard adds a TextView to the fragment1.xml layout file and the necessary code to Fragment1.java.

Screen Slides. The Android Studio wizard adds a TextView to the fragment1.xml layout file and the necessary code to Fragment1.java. Screen Slides References https://developer.android.com/training/animation/screen-slide.html https://developer.android.com/guide/components/fragments.html Overview A fragment can be defined by a class and

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

Assignment 1. Start: 28 September 2015 End: 9 October Task Points Total 10

Assignment 1. Start: 28 September 2015 End: 9 October Task Points Total 10 Assignment 1 Start: 28 September 2015 End: 9 October 2015 Objectives The goal of this assignment is to familiarize yourself with the Android development process, to think about user interface design, and

More information

API Guide for Gesture Recognition Engine. Version 1.1

API Guide for Gesture Recognition Engine. Version 1.1 API Guide for Gesture Recognition Engine Version 1.1 Table of Contents Table of Contents... 2 Gesture Recognition API... 3 API URI... 3 Communication Protocol... 3 Getting Started... 4 Protobuf... 4 WebSocket

More information

Creating mobile applications in Android Studio. Creating mobile applications in Android Studio

Creating mobile applications in Android Studio. Creating mobile applications in Android Studio Creating mobile applications in Android Studio 1 Creating mobile applications 1. Getting started... 3 2. TextView Component... 6 Clicker app...6 3. Resourses folder... 9 Roll Dices App...9 4. EditText

More information

Minds-on: Android. Session 2

Minds-on: Android. Session 2 Minds-on: Android Session 2 Paulo Baltarejo Sousa Instituto Superior de Engenharia do Porto 2016 Outline Activities UI Events Intents Practice Assignment 1 / 33 2 / 33 Activities Activity An activity provides

More information

Bouncing and Actor Class Directions Part 2: Drawing Graphics, Adding Touch Event Data, and Adding Accelerometer

Bouncing and Actor Class Directions Part 2: Drawing Graphics, Adding Touch Event Data, and Adding Accelerometer Bouncing and Actor Class Directions Part 2: Drawing Graphics, Adding Touch Event Data, and Adding Accelerometer Description: Now that we have an App base where we can create Actors that move, bounce, and

More information

ListView Containers. Resources. Creating a ListView

ListView Containers. Resources. Creating a ListView ListView Containers Resources https://developer.android.com/guide/topics/ui/layout/listview.html https://developer.android.com/reference/android/widget/listview.html Creating a ListView A ListView is a

More information

CMSC436: Fall 2013 Week 3 Lab

CMSC436: Fall 2013 Week 3 Lab CMSC436: Fall 2013 Week 3 Lab Objectives: Familiarize yourself with the Activity class, the Activity lifecycle, and the Android reconfiguration process. Create and monitor a simple application to observe

More information

Table of Contents. 2 Know your device. 6 Health management. 7 Connections. 10 Customize. 11 Home screen. 13 Apps. 15 Calls.

Table of Contents. 2 Know your device. 6 Health management. 7 Connections. 10 Customize. 11 Home screen. 13 Apps. 15 Calls. Quick Start Guide Table of Contents 2 Know your device 6 Health management 7 Connections 10 Customize 11 Home screen 13 Apps 15 Calls 16 Notifications Know your device Front view Press and hold the Power/Home

More information

Prezi Creating a Prezi

Prezi Creating a Prezi Prezi Creating a Prezi Log in to your account and click on the New Prezi button. Enter a title and (optional) description, and then click on the Create New Prezi button. Selecting a Template Select a template.

More information

Accessibility Options for Visual Impairment. Date: November 2017

Accessibility Options for Visual Impairment. Date: November 2017 Title: Partner: Accessibility Options for Visual Impairment Age UK Date: November 2017 Intellectual Output: IO3 (and IO4) CONTENTS Chapter 1 Making Text Larger...2 1.1 PC Windows 7, Windows 8 and Windows

More information

Orientation & Localization

Orientation & Localization Orientation & Localization Overview Lecture: Open Up Your My Pet App Handling Rotations Serializable Landscape Layouts Localization Alert Dialogs 1 Handling Rotations When the device is rotated, the device

More information

Remote Access VPN Setup

Remote Access VPN Setup Remote Access VPN Setup MWI Animal Health provides remote access to the MWI network using a VPN (virtual private network). Use the information on this site to setup and connect to the MWI VPN. Before You

More information

How to get ebooks on to your Kindle

How to get ebooks on to your Kindle How to get ebooks on to your Kindle *These instructions assume that you have already registered your Kindle and have set up an Amazon account. * If you are using the Kindle Fire you can do this directly

More information

CS260 Intro to Java & Android 09.AndroidAdvUI (Part I)

CS260 Intro to Java & Android 09.AndroidAdvUI (Part I) CS260 Intro to Java & Android 09.AndroidAdvUI (Part I) Winter 2015 Winter 2015 CS260 - Intro to Java & Android 1 Creating TicTacToe for Android We are going to begin to use everything we ve learned thus

More information

Produced by. Mobile Application Development. David Drohan Department of Computing & Mathematics Waterford Institute of Technology

Produced by. Mobile Application Development. David Drohan Department of Computing & Mathematics Waterford Institute of Technology Mobile Application Development Produced by David Drohan (ddrohan@wit.ie) Department of Computing & Mathematics Waterford Institute of Technology http://www.wit.ie User Interface Design" & Development -

More information

Android for Ubiquitous Computing Researchers. Andrew Rice University of Cambridge 17-Sep-2011

Android for Ubiquitous Computing Researchers. Andrew Rice University of Cambridge 17-Sep-2011 Android for Ubiquitous Computing Researchers Andrew Rice University of Cambridge 17-Sep-2011 Getting started Website for the tutorial: http://www.cl.cam.ac.uk/~acr31/ubicomp/ Contains links to downloads

More information

The Suggest Example layout (cont ed)

The Suggest Example layout (cont ed) Using Web Services 5COSC005W MOBILE APPLICATION DEVELOPMENT Lecture 7: Working with Web Services Android provides a full set of Java-standard networking APIs, such as the java.net package containing among

More information

Ease your business with just billing. Installation & Setup For Quick Service Restaurant

Ease your business with just billing. Installation & Setup For Quick Service Restaurant Ease your business with just billing Installation & Setup For Quick Service Restaurant Downloading the app Tap on the Download option in order to start the process of download for Just billing Download

More information

This lecture. The BrowserIntent Example (cont d)

This lecture. The BrowserIntent Example (cont d) This lecture 5COSC005W MOBILE APPLICATION DEVELOPMENT Lecture 10: Working with the Web Browser Dr Dimitris C. Dracopoulos Android provides a full-featured web browser based on the Chromium open source

More information

Cloud Robotics. Damon Kohler, Ryan Hickman (Google) Ken Conley, Brian Gerkey (Willow Garage) May 11, 2011

Cloud Robotics. Damon Kohler, Ryan Hickman (Google) Ken Conley, Brian Gerkey (Willow Garage) May 11, 2011 1 Cloud Robotics Damon Kohler, Ryan Hickman (Google) Ken Conley, Brian Gerkey (Willow Garage) May 11, 2011 2 Overview Introduction (Ryan) ROS (Ken and Brian) ROS on Android (Damon) Closing Remarks (Ryan)

More information

Quick Reference Guide to the IBS 2018 App

Quick Reference Guide to the IBS 2018 App Quick Reference Guide to the IBS 2018 App The IBS 2018 app is your guide to everything happening at the Builders Show as well as the NAHB Board Meeting. You can search education, events, meetings, speakers

More information

Fragments. Lecture 11

Fragments. Lecture 11 Fragments Lecture 11 Situational layouts Your app can use different layouts in different situations Different device type (tablet vs. phone vs. watch) Different screen size Different orientation (portrait

More information

Mobile Application Development Lab [] Simple Android Application for Native Calculator. To develop a Simple Android Application for Native Calculator.

Mobile Application Development Lab [] Simple Android Application for Native Calculator. To develop a Simple Android Application for Native Calculator. Simple Android Application for Native Calculator Aim: To develop a Simple Android Application for Native Calculator. Procedure: Creating a New project: Open Android Stdio and then click on File -> New

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

GUI Widget. Lecture6

GUI Widget. Lecture6 GUI Widget Lecture6 AnalogClock/Digital Clock Button CheckBox DatePicker EditText Gallery ImageView/Button MapView ProgressBar RadioButton Spinner TextView TimePicker WebView Android Widgets Designing

More information

MOBILOUS INC, All rights reserved

MOBILOUS INC, All rights reserved 8-step process to build an app IDEA SKETCH CONCEPTUALISE ORGANISE BUILD TEST RELEASE SUBMIT 2 I want to create a Mobile App of my company which only shows my company information and the information of

More information

Mobile Application Programing: Android. View Persistence

Mobile Application Programing: Android. View Persistence Mobile Application Programing: Android Persistence Activities Apps are composed of activities Activities are self-contained tasks made up of one screen-full of information Activities start one another

More information

Mini Mini GlobiLab Software Quick Start Guide

Mini Mini GlobiLab Software Quick Start Guide Mini Mini GlobiLab Software Quick Start Guide This Guide is intended to help you get your Mini up and running quickly. For more detailed instructions, please see the Getting to Know Your Mini document

More information

Fragments were added to the Android API in Honeycomb, API 11. The primary classes related to fragments are: android.app.fragment

Fragments were added to the Android API in Honeycomb, API 11. The primary classes related to fragments are: android.app.fragment FRAGMENTS Fragments An activity is a container for views When you have a larger screen device than a phone like a tablet it can look too simple to use phone interface here. Fragments Mini-activities, each

More information

07. Menu and Dialog Box. DKU-MUST Mobile ICT Education Center

07. Menu and Dialog Box. DKU-MUST Mobile ICT Education Center 07. Menu and Dialog Box DKU-MUST Mobile ICT Education Center Goal Learn how to create and use the Menu. Learn how to use Toast. Learn how to use the dialog box. Page 2 1. Menu Menu Overview Menu provides

More information

MVC Apps Basic Widget Lifecycle Logging Debugging Dialogs

MVC Apps Basic Widget Lifecycle Logging Debugging Dialogs Overview MVC Apps Basic Widget Lifecycle Logging Debugging Dialogs Lecture: MVC Model View Controller What is an App? Android Activity Lifecycle Android Debugging Fixing Rotations & Landscape Layouts Localization

More information

Table of Contents. 2 Know your device. 4 Device setup. 8 Customize. 10 Connections. 11 Apps. 12 Contacts. 13 Messages. 14 Camera.

Table of Contents. 2 Know your device. 4 Device setup. 8 Customize. 10 Connections. 11 Apps. 12 Contacts. 13 Messages. 14 Camera. Table of Contents 2 Know your device 4 Device setup 8 Customize 10 Connections 11 Apps 12 Contacts 13 Messages 14 Camera 15 Internet Know your device Front view Front Camera SIM Card Slot microsd Card

More information

PowerPoint Basics (Office 2000 PC Version)

PowerPoint Basics (Office 2000 PC Version) PowerPoint Basics (Office 2000 PC Version) Microsoft PowerPoint is software that allows you to create custom presentations incorporating text, color, graphics, and animation. PowerPoint (PP) is available

More information

API Guide for Gesture Recognition Engine. Version 1.3

API Guide for Gesture Recognition Engine. Version 1.3 API Guide for Gesture Recognition Engine Version 1.3 Table of Contents Table of Contents...2 Gesture Recognition API...3 API URI... 3 Communication Protocol... 3 Getting Started...4 Protobuf... 4 WebSocket

More information

ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL I)

ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL I) ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL I) Lecture 3: Android Life Cycle and Permission Entire Lifetime An activity begins its lifecycle when entering the oncreate() state If not interrupted

More information

mgwt Cross platform development with Java

mgwt Cross platform development with Java mgwt Cross platform development with Java Katharina Fahnenbruck Consultant & Trainer! www.m-gwt.com Motivation Going native Good performance Going native Good performance Device features Going native Good

More information

Activities and Fragments

Activities and Fragments Activities and Fragments 21 November 2017 Lecture 5 21 Nov 2017 SE 435: Development in the Android Environment 1 Topics for Today Activities UI Design and handlers Fragments Source: developer.android.com

More information

Distributed Systems Assignment 1

Distributed Systems Assignment 1 Distributed Systems Assignment 1 Marian.george@inf.ethz.ch Distributed Systems Assignment 1 1 The Exercise Objectives Get familiar with Android programming Emulator, debugging, deployment Learn to use

More information

04. Learn the basic widget. DKU-MUST Mobile ICT Education Center

04. Learn the basic widget. DKU-MUST Mobile ICT Education Center 04. Learn the basic widget DKU-MUST Mobile ICT Education Center Goal Understanding of the View and Inheritance of View. Learn how to use the default widget. Learn basic programming of the Android App.

More information

Introduction to User Interface Elements in Android

Introduction to User Interface Elements in Android Introduction to User Interface Elements in Android Objective: In this tutorial you will learn how to use different User Interface elements provided by Android Studio. At the end of the session you will

More information

Admin account. You can create your own fixtures in our internet pages and then configure the eblue units according to that.

Admin account. You can create your own fixtures in our internet pages and then configure the eblue units according to that. Admin account The eblue units are delivered with the standard DALI stand-alone configuration. It is possible to change the configuration and other details with Casambi admin account and Utility app. You

More information

8/30/15 MOBILE COMPUTING. CSE 40814/60814 Fall How many of you. have implemented a command-line user interface?

8/30/15 MOBILE COMPUTING. CSE 40814/60814 Fall How many of you. have implemented a command-line user interface? MOBILE COMPUTING CSE 40814/60814 Fall 2015 How many of you have implemented a command-line user interface? 1 How many of you have implemented a graphical user interface? HTML/CSS Java Swing.NET Framework

More information

Senad Basic CS 422 Project 2 Individual sketches 03/04/08

Senad Basic CS 422 Project 2 Individual sketches 03/04/08 Senad Basic CS 422 Project 2 Individual sketches 03/04/08 Default commons common for all windows Some commands are common to all of the screens and windows below. Touching any portion of a screen that

More information