Android app development course

Size: px
Start display at page:

Download "Android app development course"

Transcription

1 Android app development course Unit 6- + Location Based Services. Geo-positioning. Google Maps API, Geocoding 1

2 Location Based Services LBS is a concept that encompasses different technologies which offer a service based on the device's location. They usually use one or a combination of the following smartphone's capabilities: GPS Wifi Radio triangulation Problem! The emulator doesn't support natively LBS services DDMS 2

3 Location Based Services Android framework location API (not recommended) We need a handle to a LocationManager object through getsystemservice(context.location_service) Then we can do three things: Query a LocationProvider to get the last know user location Register/unregister for periodic updates of user location Define proximity alerts by specifying a radius (in meters) of a given lat/long. 3

4 Location Based Services Google Location Services API (recommended) First step: setup Google Play Services SDK Download and configure the SDK using the SDK Manager Extras > Google Play services Import the following library project into your project <android-sdk>/extras/google/google_play_services/ libproject/google-play-services_lib/ Reference the library project in your Android project Properties > Android > Library window > Add Can only be tested on an AVD running the Google APIs platform based on Android ! 4

5 Google Location Services API Retrieve current location the Location Services API automatically maintains the user's current location. request location permissions android.permission.access_coarse_location android.permission.access_fine_location query the current location through com.google.android.gms.location.locationclient 5

6 Google Location Services API Retrieve current location Create a LocationClient object mlocationclient = new LocationClient(this, this, this); Connect it to the Location Services mlocationclient.connect(); Get the current location Location mcurrlocation = mlocationclient.getlastlocation(); Implement the Location Services interfaces GooglePlayServicesClient.ConnectionCallbaks GooglePlayServicesClient.OnConnectionFailedListener 6

7 Google Location Services API Implementing Location Services interfaces public class MyActivity extends FragmentActivity implements GooglePlayServicesClient.ConnectionCallbacks, GooglePlayServicesClient.OnConnectionFailedListener public void onconnected(bundle databundle) { // Called when the request to connect the client finishes successfully // We can request the current location or start periodic updates public void ondisconnected() { // Called if the connection to the client drops because an error } public void onconnectionfailed(connectionresult connectionresult) { // Called if the attempt to connect the client fails } 7

8 Google Location Services API We must always check that the Google Play services are installed and ready to use! int resultcode = GooglePlayServicesUtil.isGooglePlayServicesAvailable(this); if (ConnectionResult.SUCCESS == resultcode) { // Google Play services is available and ready to use } else { } // Get the error dialog from Google Play services Dialog errordialog = GooglePlayServicesUtil.getErrorDialog( errorcode, this, MY_REQUEST_CODE); // Display the dialog in a DialogFragment 8

9 Google Location Services API Sometimes we are interested in navigation or tracking, so we need to get the user's location at regular intervals. we can set up location updates specifying the interval between updates and the accuracy required requestlocationupdates(locationrequest, listener) removeupdates(listener) Location updates will be received through a LocationListener interface in its public void onlocationchanged(location location) { } 9

10 Google Location Services API Specifying request parameters // Create a LocationRequest object LocationRequest mlocationrequest = LocationRequest.create(); // Use high accuracy for location updates mlocationrequest.setpriority(locationrequest.priority_high_accuracy); // Set the update interval to 5 seconds mlocationrequest.setinterval(5 * 1000); // Set the fastest update interval to 1 second mlocationrequest.setfastestinterval(1 * 1000); You should also: request updates in the onconnected() method of the ConnectionCallbacks interface remove updates in the Activity's onstop() method 10

11 Google Location Services API Geofencing Detecting the user entering/living a given area of interest We should define Latitude, longitude and radius Expiration time An Intent (PendingIntent) for geofence transitions Geofences must be stored (locally or in remote locations), but Location Services require an instance of Geofence, which we can create through Geofence.Builder Geofence monitor request (through LocationClient) addgeofences(geofenceslist, pendingintent, this) 11

12 Google Location Services API Activity recognition (not Android Activity!) Trying to detect the user's current physical activity, such as walking, driving, etc. Very similar to requesting periodic location updates New permission com.google.android.gms.permission.activity_recognition Request a connection to Location Services through ActivityRecognitionClient Request activity recognition updates using a detection interval and a PendingIntent requestactivityupdates(interval, pendingintent) 12

13 Google Maps API Google offers a specific set of services to a finite set of supported devices, and the installed apps can use or consume them. The most common and used service is without doubt Google Maps, over which we can add markers based on a latitude and a longitude. We must target devices having the Google Android APIs installed or AVDs supporting them (Google API Android

14 Google Maps API Google Maps Android API v1 Deprecated! Google Maps Android API v2 14

15 Google Maps API Google reinvented its Maps service and completely deprecated the previous API version! In order to use the new API we need to: Configure the Google Play Services project library Obtain a key or API key through the Google APIs Console Configure our AndroidManifest Add a map to our Activity using a MapFragment 15

16 Google Maps API Setup Google Play Services SDK we have already seen how to do it as part of the Google Location Services API! (Slide #4) 16

17 Google Maps API Google Maps API Key The maps have to be accessed through the Google Maps servers We need a key (API Key) to access the content We can obtain it through the Google API Console We must add the obtained the API Key in the Manifest file as a child of <application> <meta-data android:name="com.google.android.maps.v2.api_key" android:value="your_api_key"/> 17

18 Google Maps API In order to get a key for the maps service We need a hash or fingerprint of the certificate we use to sign our application for the Play Store Eclipse automatically manages a Debug certificate for testing purposes, and which we can typically find at ~/.android/debug.keystore (Linux/Mac) Important! This development certificate is host-specific two different computers have different debug certificates, and therefore require two different API keys! 18

19 Google Maps API (cont) To obtain the Debug certificate's fingerprint we can use the following command-line tool keytool -list -v \ -keystore ~/.android/debug.keystore \ -alias androiddebugkey \ -storepass android \ -keypass android We must add the obtained hash jointly with the app's package name at Google APIs Console > API Access > Create New Android Key... button 19

20 Google Maps API AndroidManifest We must add some permissions to use the Google Maps API in our Manifest file <uses-permission android:name="android.permission.internet" /> <uses-permission android:name="android.permission.access_network_state" /> <uses-permission android:name="android.permission.write_external_storage" /> <uses-permission android:name="com.google.android.providers.gsf.permission.read_gservices" /> <uses-permission android:name="android.permission.access_coarse_location" /> <uses-permission android:name="android.permission.access_fine_location" />...and a special permission <permission android:name="<package_name>.permission.maps_receive" android:protectionlevel="signature" /> <uses-permission android:name="<package_name>.permission.maps_receive"/> 20

21 Google Maps API (cont) We also need to add an <uses-feature> element to signal that Google Maps API requires OpenGL ES version 2 <uses-feature android:glesversion="0x " android:required="true" /> That means that Google Play Store will hide our app to those devices not supporting OpenGL ES version 2! 21

22 Google Maps API And finally, we must add a map to our Activity's layout! XML <fragment android:id="@+id/map" android:layout_width="match_parent" android:layout_height="match_parent" class="com.google.android.gms.maps.supportmapfragment"/> Java public class SimpleMapActivity extends FragmentActivity { protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.activity_simple_map); } 22

23 Activity Create a FragmentActivity which includes a map in its layout Use SupportMapFragment! 23

24 Google Maps API GoogleMap Main class to handle map interaction Allows us to customize the map's behavior through different interfaces that respond to different kinds of interaction (touch, pan, zoom, etc.) Handles markers (with an icon) placed on the map We can obtain an instance through the getmap() function private GoogleMap mmap; //... mmap = ((SupportMapFragment) getsupportfragmentmanager(). findfragmentbyid(r.id.map)).getmap(); 24

25 Google Maps API Configure the map's initial state The Google Maps API provides specific XML attributes to configure a map maptype: type of the map (road, satellite, hybrid) cameratargetlat, cameratargetlng, camerazoom, camerabearing, cameratilt: camera controls uizoomcontrols, uicompass: if we want the zoom and compass controls to be visible uizoomgestures, uiscrollgestures, uirotategestures, uitiltgestures: possible interactions with the map We must add the following namespace xmlns:map=" 25

26 Google Maps API (cont) <fragment xmlns:android=" xmlns:map=" android:layout_width="match_parent" android:layout_height="match_parent" class="com.google.android.gms.maps.supportmapfragment" map:camerabearing="112.5" map:cameratargetlat=" " map:cameratargetlng=" " map:cameratilt="30" map:camerazoom="13" map:maptype="terrain" map:uicompass="false" map:uirotategestures="true" map:uiscrollgestures="false" map:uitiltgestures="true" map:uizoomcontrols="false" map:uizoomgestures="true" /> 26

27 Google Maps API CameraPosition or how to change our view of the map Our view of the map is modeled through a look-down camera view model The camera's position is computed base on the following properties: target (lat/long), zoom, bearing and tilt 27

28 Google Maps API To change the part of the world that is visible through the map, use the following methods movecamera( CameraUpdate ) animatecamera( CameraUpdate ) To obtain a CameraUpdate object we should use the methods in CameraUpdateFactory newlatlng(latlng) newlatlngzoom(latlng, float) newcameraposition(cameraposition) 28

29 Google Maps API Animate the camera to show the city of Sydney static final CameraPosition SYDNEY = new CameraPosition.Builder().target(new LatLng( , )).zoom(15.5f).bearing(300).tilt(45).build(); mgmap.animatecamera(cameraupdatefactory.newcameraposition(sydney)); 29

30 Google Maps API We can identify specific positions on the map through different Markers GoogleMap.addMarker(markerOptions)...which we can customize mmap.addmarker(new MarkerOptions().position(new LatLng(0, 0)).title( Hello! ).snippet( I'm a Marker! ).icon(bitmapdescriptorfactory. fromresource(r.drawable.arrow))) 30

31 Google Maps API The Markers we add on the map Can have a detailed view pop-up window which appears when the user clicks the marker Implemented through InfoWindowAdapter And called by GoogleMap.setInfoWindowAdapter() Can handle different events OnMarkerClickListener OnMarkerDragListener OnInfoWindowClickListener 31

32 Activity Modify the map in the previous activity Center the map at. latitude = longitude = Add a new marker at this point using whatever information you may find suitable 32

33 Geocoding Geocoding is the process through which we can map addresses to latitude/longitude coordinates and viceversa. Forward geocoding: given an address, find its latitude and longitude coordinates Reverse geocoding: obtain possible addresses matching a given coordinate pair Geocoding is an external service, so we must set the android.permission.internet accordingly. 33

34 Geocoding The Geocoder class Handles the address translation process Uses a Locale or the application's context to perform the translation new Geocoder(context, locale) The address translation process is synchronous, so we might consider performing it in a separate thread. 34

35 Geocoding Forward Geocoding Obtains a list of addresses, containing the latitude and longitude coordinates, from the address's physical description List<Address> getfromlocationname(string, int) The second parameter bound the maximum number of addresses to be returned Returns null if no address matches the description We can limit the search to a bounding box (specified using lat/long coordinates) 35

36 Geocoding Reverse Geocoding The input represents a coordinate pair (latitude, longitude) The output is a list of relevant locations (with their physical description) found at those coordinates List<Address> getfromlocation(double, double, int) The last parameter bounds the number of addresses to be returned Return null if there is no address to be found at the specified GPS coordinates 36

37 If you want to know more... Professional Android Application Development. Chapter 8 Pro Android. Chapter 17 Android Developers: Location and Maps Android Developers: Making Your App Location Aware Google Play Services Google Maps Android API v2 37

Programming with Android: Geolocalization. Dipartimento di Scienze dell Informazione Università di Bologna

Programming with Android: Geolocalization. Dipartimento di Scienze dell Informazione Università di Bologna Programming with Android: Geolocalization and Google Map Services Luca Bedogni Marco Di Felice Dipartimento di Scienze dell Informazione Università di Bologna Outline Geo-localization techniques Location

More information

Programming with Android: Localization and Google Map Services. Dipartimento di Scienze dell Informazione Università di Bologna

Programming with Android: Localization and Google Map Services. Dipartimento di Scienze dell Informazione Università di Bologna Programming with Android: Localization and Google Map Services Luca Bedogni Marco Di Felice Dipartimento di Scienze dell Informazione Università di Bologna Outline Geo-localization techniques Location

More information

Mobile applications can benefit from being location-aware This mean to allow application to determine and manipulate location For example:

Mobile applications can benefit from being location-aware This mean to allow application to determine and manipulate location For example: SENSORS Location service Mobile applications can benefit from being location-aware This mean to allow application to determine and manipulate location For example: find stores nead my current location

More information

CS 696 Mobile Phone Application Development Fall Semester, 2009 Doc 9 Location & Maps Sept 29, 2009

CS 696 Mobile Phone Application Development Fall Semester, 2009 Doc 9 Location & Maps Sept 29, 2009 CS 696 Mobile Phone Application Development Fall Semester, 2009 Doc 9 Location & Maps Sept 29, 2009 Copyright, All rights reserved. 2009 SDSU & Roger Whitney, 5500 Campanile Drive, San Diego, CA 92182-7700

More information

( Modified from Original Source at http://www.devx.com/wireless/article/39239 )

( Modified from Original Source at http://www.devx.com/wireless/article/39239 ) Accessing GPS information on your Android Phone ( Modified from Original Source at http://www.devx.com/wireless/article/39239 ) Using Eclipse, create a new Android project and name it GPS.java. To use

More information

Hello World. by Elliot Khazon

Hello World. by Elliot Khazon Hello World by Elliot Khazon Prerequisites JAVA SDK 1.5 or 1.6 Windows XP (32-bit) or Vista (32- or 64-bit) 1 + more Gig of memory 1.7 Ghz+ CPU Tools Eclipse IDE 3.4 or 3.5 SDK starter package Installation

More information

Android Tutorial. Larry Walters OOSE Fall 2011

Android Tutorial. Larry Walters OOSE Fall 2011 Android Tutorial Larry Walters OOSE Fall 2011 References This tutorial is a brief overview of some major concepts Android is much richer and more complex Developer s Guide http://developer.android.com/guide/index.html

More information

Programming Mobile Applications with Android

Programming Mobile Applications with Android Programming Mobile Applications 22-26 September, Albacete, Spain Jesus Martínez-Gómez Introduction to advanced android capabilities Maps and locations.- How to use them and limitations. Sensors.- Using

More information

Login with Amazon Getting Started Guide for Android. Version 2.0

Login with Amazon Getting Started Guide for Android. Version 2.0 Getting Started Guide for Android Version 2.0 Login with Amazon: Getting Started Guide for Android Copyright 2016 Amazon.com, Inc., or its affiliates. All rights reserved. Amazon and the Amazon logo are

More information

AdFalcon Android SDK 2.1.4 Developer's Guide. AdFalcon Mobile Ad Network Product of Noqoush Mobile Media Group

AdFalcon Android SDK 2.1.4 Developer's Guide. AdFalcon Mobile Ad Network Product of Noqoush Mobile Media Group AdFalcon Android SDK 214 Developer's Guide AdFalcon Mobile Ad Network Product of Noqoush Mobile Media Group Table of Contents 1 Introduction 3 Supported Android version 3 2 Project Configurations 4 Step

More information

Mobile Application Development Google Maps Android API v2

Mobile Application Development Google Maps Android API v2 Mobile Application Development Google Maps Android API v2 Waterford Institute of Technology November 5, 2014 John Fitzgerald Waterford Institute of Technology, Mobile Application Development Google Maps

More information

Android Development Tutorial. Nikhil Yadav CSE40816/60816 - Pervasive Health Fall 2011

Android Development Tutorial. Nikhil Yadav CSE40816/60816 - Pervasive Health Fall 2011 Android Development Tutorial Nikhil Yadav CSE40816/60816 - Pervasive Health Fall 2011 Database connections Local SQLite and remote access Outline Setting up the Android Development Environment (Windows)

More information

ECWM511 MOBILE APPLICATION DEVELOPMENT Lecture 1: Introduction to Android

ECWM511 MOBILE APPLICATION DEVELOPMENT Lecture 1: Introduction to Android Why Android? ECWM511 MOBILE APPLICATION DEVELOPMENT Lecture 1: Introduction to Android Dr Dimitris C. Dracopoulos A truly open, free development platform based on Linux and open source A component-based

More information

Android Application Development: Hands- On. Dr. Jogesh K. Muppala muppala@cse.ust.hk

Android Application Development: Hands- On. Dr. Jogesh K. Muppala muppala@cse.ust.hk Android Application Development: Hands- On Dr. Jogesh K. Muppala muppala@cse.ust.hk Wi-Fi Access Wi-Fi Access Account Name: aadc201312 2 The Android Wave! 3 Hello, Android! Configure the Android SDK SDK

More information

Android Maps Tutorial

Android Maps Tutorial Android Maps Tutorial Introduction: Using Google Maps API In this project, we are going to create a project that will show a user inputted address on a Google map. The main Activity will contain an area

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) Who am I? Lo Chi Wing, Peter Lecture 1: Introduction to Android Development Email: Peter@Peter-Lo.com Facebook: http://www.facebook.com/peterlo111

More information

Android Environment SDK

Android Environment SDK Part 2-a Android Environment SDK Victor Matos Cleveland State University Notes are based on: Android Developers http://developer.android.com/index.html 1 Android Environment: Eclipse & ADT The Android

More information

Developer's Cookbook. Building Applications with. The Android. the Android SDK. A Addison-Wesley. James Steele Nelson To

Developer's Cookbook. Building Applications with. The Android. the Android SDK. A Addison-Wesley. James Steele Nelson To The Android Developer's Cookbook Building Applications with the Android SDK James Steele Nelson To A Addison-Wesley Upper Saddle River, NJ Boston «Indianapolis San Francisco New York Toronto Montreal London

More information

Advertiser Campaign SDK Your How-to Guide

Advertiser Campaign SDK Your How-to Guide Advertiser Campaign SDK Your How-to Guide Using Leadbolt Advertiser Campaign SDK with Android Apps Version: Adv2.03 Copyright 2012 Leadbolt All rights reserved Disclaimer This document is provided as-is.

More information

TomTom PRO 82xx PRO.connect developer guide

TomTom PRO 82xx PRO.connect developer guide TomTom PRO 82xx PRO.connect developer guide Contents Introduction 3 Preconditions 4 Establishing a connection 5 Preparations on Windows... 5 Preparations on Linux... 5 Connecting your TomTom PRO 82xx device

More information

Android Environment SDK

Android Environment SDK Part 2-a Android Environment SDK Victor Matos Cleveland State University Notes are based on: Android Developers http://developer.android.com/index.html 1 2A. Android Environment: Eclipse & ADT The Android

More information

An Introduction to Android Application Development. Serdar Akın, Haluk Tüfekçi

An Introduction to Android Application Development. Serdar Akın, Haluk Tüfekçi An Introduction to Android Application Serdar Akın, Haluk Tüfekçi ARDIC ARGE http://www.ardictech.com April 2011 Environment Programming Languages Java (Officially supported) C (Android NDK Needed) C++

More information

TUTORIAL. BUILDING A SIMPLE MAPPING APPLICATION

TUTORIAL. BUILDING A SIMPLE MAPPING APPLICATION Cleveland State University CIS493. Mobile Application Development Using Android TUTORIAL. BUILDING A SIMPLE MAPPING APPLICATION The goal of this tutorial is to create a simple mapping application that

More information

Android Development. http://developer.android.com/develop/ 吳 俊 興 國 立 高 雄 大 學 資 訊 工 程 學 系

Android Development. http://developer.android.com/develop/ 吳 俊 興 國 立 高 雄 大 學 資 訊 工 程 學 系 Android Development http://developer.android.com/develop/ 吳 俊 興 國 立 高 雄 大 學 資 訊 工 程 學 系 Android 3D 1. Design 2. Develop Training API Guides Reference 3. Distribute 2 Development Training Get Started Building

More information

An Android-based Instant Message Application

An Android-based Instant Message Application An Android-based Instant Message Application Qi Lai, Mao Zheng and Tom Gendreau Department of Computer Science University of Wisconsin - La Crosse La Crosse, WI 54601 mzheng@uwlax.edu Abstract One of the

More information

Advantages. manage port forwarding, set breakpoints, and view thread and process information directly

Advantages. manage port forwarding, set breakpoints, and view thread and process information directly Part 2 a Android Environment SDK Victor Matos Cleveland State University Notes are based on: Android Developers http://developer.android.com/index.html 1 Android Environment: Eclipse & ADT The Android

More information

Introduction to Android Programming. Khuong Vu, Graduate student Computer Science department

Introduction to Android Programming. Khuong Vu, Graduate student Computer Science department Introduction to Android Programming Khuong Vu, Graduate student Computer Science department 1 Content Get started Set up environment Running app on simulator GUI Layouts Event handling Life cycle Networking

More information

ITG Software Engineering

ITG Software Engineering Basic Android Development Course ID: Page 1 Last Updated 12/15/2014 Basic Android Development ITG Software Engineering Course Overview: This 5 day course gives students the fundamental basics of Android

More information

1. Introduction to Android

1. Introduction to Android 1. Introduction to Android Brief history of Android What is Android? Why is Android important? What benefits does Android have? What is OHA? Why to choose Android? Software architecture of Android Advantages

More information

INTERMEDIATE ANDROID DEVELOPMENT Course Syllabus

INTERMEDIATE ANDROID DEVELOPMENT Course Syllabus 6111 E. Skelly Drive P. O. Box 477200 Tulsa, OK 74147-7200 INTERMEDIATE ANDROID DEVELOPMENT Course Syllabus Course Number: APD-0248 OHLAP Credit: No OCAS Code: None Course Length: 120 Hours Career Cluster:

More information

Android in Action. Second Edition. Revised Edition of Unlocking Android MANNING. (74 w. long.) W. FRANK ABLESON CHRIS KING ROBI SEN.

Android in Action. Second Edition. Revised Edition of Unlocking Android MANNING. (74 w. long.) W. FRANK ABLESON CHRIS KING ROBI SEN. Android in Action Second Edition W. FRANK ABLESON ROBI SEN CHRIS KING Revised Edition of Unlocking Android II MANNING Greenwich (74 w. long.) contents preface xvii preface to the first edition xix acknowledgments

More information

ANDROID ALERT APP (SHOP SALE)

ANDROID ALERT APP (SHOP SALE) Bachelor's thesis (TUAS) Degree Programme in Information Technology Specialization: Android App Development 2014 Raj kumar Singh ANDROID ALERT APP (SHOP SALE) BACHELOR S THESIS ABSTRACT TURKU UNIVERSITY

More information

directory to "d:\myproject\android". Hereafter, I shall denote the android installed directory as

directory to d:\myproject\android. Hereafter, I shall denote the android installed directory as 1 of 6 2011-03-01 12:16 AM yet another insignificant programming notes... HOME Android SDK 2.2 How to Install and Get Started Introduction Android is a mobile operating system developed by Google, which

More information

COURSE CONTENT. GETTING STARTED Select Android Version Create RUN Configuration Create Your First Android Activity List of basic sample programs

COURSE CONTENT. GETTING STARTED Select Android Version Create RUN Configuration Create Your First Android Activity List of basic sample programs COURSE CONTENT Introduction Brief history of Android Why Android? What benefits does Android have? What is OHA & PHA Why to choose Android? Software architecture of Android Advantages, features and market

More information

ADITION Android Ad SDK Integration Guide for App Developers

ADITION Android Ad SDK Integration Guide for App Developers Documentation Version 0.5 ADITION Android Ad SDK Integration Guide for App Developers SDK Version 1 as of 2013 01 04 Copyright 2012 ADITION technologies AG. All rights reserved. 1/7 Table of Contents 1.

More information

Mobile Application Development

Mobile Application Development Mobile Application Development (Android & ios) Tutorial Emirates Skills 2015 3/26/2015 1 What is Android? An open source Linux-based operating system intended for mobile computing platforms Includes a

More information

Specialized Android APP Development Program with Java (SAADPJ) Duration 2 months

Specialized Android APP Development Program with Java (SAADPJ) Duration 2 months Specialized Android APP Development Program with Java (SAADPJ) Duration 2 months Our program is a practical knowledge oriented program aimed at making innovative and attractive applications for mobile

More information

Introduction to Android Development. Daniel Rodrigues, Buuna 2014

Introduction to Android Development. Daniel Rodrigues, Buuna 2014 Introduction to Android Development Daniel Rodrigues, Buuna 2014 Contents 1. Android OS 2. Development Tools 3. Development Overview 4. A Simple Activity with Layout 5. Some Pitfalls to Avoid 6. Useful

More information

Introduction to Android Android Architecture Software Development Purpose of the project Location Based Service (LBS) Android. Location class Google

Introduction to Android Android Architecture Software Development Purpose of the project Location Based Service (LBS) Android. Location class Google By: Mikias M. Seid Introduction to Android Android Architecture Software Development Purpose of the project Location Based Service (LBS) Android. Location class Google API and Map View Demo Future of the

More information

CSE476 Mobile Application Development. Yard. Doç. Dr. Tacha Serif tserif@cse.yeditepe.edu.tr. Department of Computer Engineering Yeditepe University

CSE476 Mobile Application Development. Yard. Doç. Dr. Tacha Serif tserif@cse.yeditepe.edu.tr. Department of Computer Engineering Yeditepe University CSE476 Mobile Application Development Yard. Doç. Dr. Tacha Serif tserif@cse.yeditepe.edu.tr Department of Computer Engineering Yeditepe University Fall 2015 Yeditepe University 2015 Outline Bluetooth Connectivity

More information

Android Basics. Xin Yang 2016-05-06

Android Basics. Xin Yang 2016-05-06 Android Basics Xin Yang 2016-05-06 1 Outline of Lectures Lecture 1 (45mins) Android Basics Programming environment Components of an Android app Activity, lifecycle, intent Android anatomy Lecture 2 (45mins)

More information

WEARIT DEVELOPER DOCUMENTATION 0.2 preliminary release July 20 th, 2013

WEARIT DEVELOPER DOCUMENTATION 0.2 preliminary release July 20 th, 2013 WEARIT DEVELOPER DOCUMENTATION 0.2 preliminary release July 20 th, 2013 The informations contained in this document are subject to change without notice and should not be construed as a commitment by Si14

More information

Introduction to Android

Introduction to Android Introduction to Android Poll How many have an Android phone? How many have downloaded & installed the Android SDK? How many have developed an Android application? How many have deployed an Android application

More information

How to develop your own app

How to develop your own app How to develop your own app It s important that everything on the hardware side and also on the software side of our Android-to-serial converter should be as simple as possible. We have the advantage that

More information

Application Development

Application Development BEGINNING Android Application Development Wei-Meng Lee WILEY Wiley Publishing, Inc. INTRODUCTION xv CHAPTER 1: GETTING STARTED WITH ANDROID PROGRAMMING 1 What Is Android? 2 Android Versions 2 Features

More information

HERE SDK for Android. Developer's Guide. Online Version 2.1

HERE SDK for Android. Developer's Guide. Online Version 2.1 HERE SDK for Android Developer's Guide Online Version 2.1 Contents 2 Contents Legal Notices.4 Document Information 5 Service Support. 6 Chapter1:Overview 7 What is the HERE SDK for Android?..8 Feature

More information

Android and Cloud Computing

Android and Cloud Computing Android and Cloud Computing 1 Schedule Reminders on Android and Cloud GCM presentation GCM notions Build a GCM project Write a GCM client (receiver) Write a GCM server (transmitter) 2 Android : reminders?

More information

Developing Android Apps: Part 1

Developing Android Apps: Part 1 : Part 1 d.schmidt@vanderbilt.edu www.dre.vanderbilt.edu/~schmidt Institute for Software Integrated Systems Vanderbilt University Nashville, Tennessee, USA CS 282 Principles of Operating Systems II Systems

More information

Now that we have the Android SDK, Eclipse and Phones all ready to go we can jump into actual Android development.

Now that we have the Android SDK, Eclipse and Phones all ready to go we can jump into actual Android development. Android Development 101 Now that we have the Android SDK, Eclipse and Phones all ready to go we can jump into actual Android development. Activity In Android, each application (and perhaps each screen

More information

ANDROID INTRODUCTION TO ANDROID

ANDROID INTRODUCTION TO ANDROID ANDROID JAVA FUNDAMENTALS FOR ANDROID Introduction History Java Virtual Machine(JVM) JDK(Java Development Kit) JRE(Java Runtime Environment) Classes & Packages Java Basics Data Types Variables, Keywords,

More information

Developing an Android App. CSC207 Fall 2014

Developing an Android App. CSC207 Fall 2014 Developing an Android App CSC207 Fall 2014 Overview Android is a mobile operating system first released in 2008. Currently developed by Google and the Open Handset Alliance. The OHA is a consortium of

More information

Mocean Android SDK Developer Guide

Mocean Android SDK Developer Guide Mocean Android SDK Developer Guide For Android SDK Version 3.2 136 Baxter St, New York, NY 10013 Page 1 Table of Contents Table of Contents... 2 Overview... 3 Section 1 Setup... 3 What changed in 3.2:...

More information

By sending messages into a queue, we can time these messages to exit the cue and call specific functions.

By sending messages into a queue, we can time these messages to exit the cue and call specific functions. Mobile App Tutorial Deploying a Handler and Runnable for Timed Events Creating a Counter Description: Given that Android Java is event driven, any action or function call within an Activity Class must

More information

Android Setup Phase 2

Android Setup Phase 2 Android Setup Phase 2 Instructor: Trish Cornez CS260 Fall 2012 Phase 2: Install the Android Components In this phase you will add the Android components to the existing Java setup. This phase must be completed

More information

Mobile Application Frameworks and Services

Mobile Application Frameworks and Services Mobile Application Frameworks and Services Lecture: Programming Basics Dr. Panayiotis Alefragis Professor of Applications Masters Science Program: Technologies and Infrastructures for Broadband Applications

More information

CHAPTER 1: INTRODUCTION TO ANDROID, MOBILE DEVICES, AND THE MARKETPLACE

CHAPTER 1: INTRODUCTION TO ANDROID, MOBILE DEVICES, AND THE MARKETPLACE FOREWORD INTRODUCTION xxiii xxv CHAPTER 1: INTRODUCTION TO ANDROID, MOBILE DEVICES, AND THE MARKETPLACE 1 Product Comparison 2 The.NET Framework 2 Mono 3 Mono for Android 4 Mono for Android Components

More information

Using Sensors on the Android Platform. Andreas Terzis Android N00b

Using Sensors on the Android Platform. Andreas Terzis Android N00b Using Sensors on the Android Platform Andreas Terzis Android N00b Hardware-oriented Features Feature Camera Sensor SensorManager SensorEventListener SensorEvent GeoMagneticField Description A class that

More information

Introduction to NaviGenie SDK Client API for Android

Introduction to NaviGenie SDK Client API for Android Introduction to NaviGenie SDK Client API for Android Overview 3 Data access solutions. 3 Use your own data in a highly optimized form 3 Hardware acceleration support.. 3 Package contents.. 4 Libraries.

More information

IOIO for Android Beginners Guide Introduction

IOIO for Android Beginners Guide Introduction IOIO for Android Beginners Guide Introduction This is the beginners guide for the IOIO for Android board and is intended for users that have never written an Android app. The goal of this tutorial is to

More information

Des Moines Area Community College

Des Moines Area Community College Des Moines Area Community College Course Information EFFECTIVE FL 2012-01 Acronym/Number MDT 210 Historical Ref Title Android App Development II Credit breakout 3 3 0 0 0 (credit lecture lab practicum

More information

Developing Android Apps for BlackBerry 10. JAM 354 Matthew Whiteman - Product Manager February 6, 2013

Developing Android Apps for BlackBerry 10. JAM 354 Matthew Whiteman - Product Manager February 6, 2013 Developing Android Apps for BlackBerry 10 JAM 354 Matthew Whiteman - Product Manager February 6, 2013 Overview What is the BlackBerry Runtime for Android Apps? BlackBerry 10 Features New Features Demo

More information

Presenting Android Development in the CS Curriculum

Presenting Android Development in the CS Curriculum Presenting Android Development in the CS Curriculum Mao Zheng Hao Fan Department of Computer Science International School of Software University of Wisconsin-La Crosse Wuhan University La Crosse WI, 54601

More information

Thesis Paper. Real Time Traffic Monitoring System Using Crowd Sourced GPS Data by MD. Al Amin MD. Rofi Uddin. Supervised by Mrs.

Thesis Paper. Real Time Traffic Monitoring System Using Crowd Sourced GPS Data by MD. Al Amin MD. Rofi Uddin. Supervised by Mrs. Thesis Paper Real Time Traffic Monitoring System Using Crowd Sourced GPS Data by MD. Al Amin MD. Rofi Uddin Supervised by Mrs. Sadia Hamid Kazi Abstract There has always been the necessity of accurate

More information

2. Click the download button for your operating system (Windows, Mac, or Linux).

2. Click the download button for your operating system (Windows, Mac, or Linux). Table of Contents: Using Android Studio 1 Installing Android Studio 1 Installing IntelliJ IDEA Community Edition 3 Downloading My Book's Examples 4 Launching Android Studio and Importing an Android Project

More information

Android For Java Developers. Marko Gargenta Marakana

Android For Java Developers. Marko Gargenta Marakana Android For Java Developers Marko Gargenta Marakana Agenda Android History Android and Java Android SDK Hello World! Main Building Blocks Debugging Summary History 2005 Google buys Android, Inc. Work on

More information

Mobile Application GPS-Based

Mobile Application GPS-Based 3 Mobile Application GPS-Based Berta Buttarazzi University of Tor Vergata, Rome, Italy 1. Introduction Most of navigators for mobile devices have a big failure; they do not notify the user of road condition

More information

Getting Started: Creating a Simple App

Getting Started: Creating a Simple App Getting Started: Creating a Simple App What You will Learn: Setting up your development environment Creating a simple app Personalizing your app Running your app on an emulator The goal of this hour is

More information

Android Developer Fundamental 1

Android Developer Fundamental 1 Android Developer Fundamental 1 I. Why Learn Android? Technology for life. Deep interaction with our daily life. Mobile, Simple & Practical. Biggest user base (see statistics) Open Source, Control & Flexibility

More information

Module Title: Software Development A: Mobile Application Development

Module Title: Software Development A: Mobile Application Development Module Title: Software Development A: Mobile Application Development Module Code: SDA SDA prerequisites: CT1, HS1, MS001, CA Award of BSc. In Information Technology The Bachelor of Science in Information

More information

TaleBlazer Documentation

TaleBlazer Documentation TaleBlazer Documentation HOW TO READ THIS DOCUMENTATION TaleBlazer specific terminology is denoted with italics. Example game functionality which is not intrinsic to the TaleBlazer software is denoted

More information

Android Programming Basics

Android Programming Basics 2012 Marty Hall Android Programming Basics Originals of Slides and Source Code for Examples: http://www.coreservlets.com/android-tutorial/ Customized Java EE Training: http://courses.coreservlets.com/

More information

4. The Android System

4. The Android System 4. The Android System 4. The Android System System-on-Chip Emulator Overview of the Android System Stack Anatomy of an Android Application 73 / 303 4. The Android System Help Yourself Android Java Development

More information

Android Application Development

Android Application Development Android Application Development Self Study Self Study Guide Content: Course Prerequisite Course Content Android SDK Lab Installation Guide Start Training Be Certified Exam sample Course Prerequisite The

More information

Running a Program on an AVD

Running a Program on an AVD Running a Program on an AVD Now that you have a project that builds an application, and an AVD with a system image compatible with the application s build target and API level requirements, you can run

More information

INTRODUCTION TO ANDROID CSCI 4448/5448: OBJECT-ORIENTED ANALYSIS & DESIGN LECTURE 11 02/15/2011

INTRODUCTION TO ANDROID CSCI 4448/5448: OBJECT-ORIENTED ANALYSIS & DESIGN LECTURE 11 02/15/2011 INTRODUCTION TO ANDROID CSCI 4448/5448: OBJECT-ORIENTED ANALYSIS & DESIGN LECTURE 11 02/15/2011 1 Goals of the Lecture Present an introduction to the Android Framework Coverage of the framework will be

More information

Chapter 2 Getting Started

Chapter 2 Getting Started Welcome to Android Chapter 2 Getting Started Android SDK contains: API Libraries Developer Tools Documentation Sample Code Best development environment is Eclipse with the Android Developer Tool (ADT)

More information

Google Android Syllabus

Google Android Syllabus Google Android Syllabus Introducing the Android Computing Platform A New Platform for a New Personal Computer Early History of Android Delving Into the Dalvik VM Understanding the Android Software Stack

More information

How to build your first Android Application in Windows

How to build your first Android Application in Windows APPLICATION NOTE How to build your first Android Application in Windows 3/30/2012 Created by: Micah Zastrow Abstract This application note is designed to teach the reader how to setup the Android Development

More information

«compl*tc IDIOT'S GUIDE. Android App. Development. by Christopher Froehlich ALPHA. A member of Penguin Group (USA) Inc.

«compl*tc IDIOT'S GUIDE. Android App. Development. by Christopher Froehlich ALPHA. A member of Penguin Group (USA) Inc. «compl*tc IDIOT'S GUIDE Android App Development by Christopher Froehlich A ALPHA A member of Penguin Group (USA) Inc. Contents Part 1: Getting Started 1 1 An Open Invitation 3 Starting from Scratch 3 Software

More information

Introduction to Android Development

Introduction to Android Development 2013 Introduction to Android Development Keshav Bahadoor An basic guide to setting up and building native Android applications Science Technology Workshop & Exposition University of Nigeria, Nsukka Keshav

More information

Hello World! Some code

Hello World! Some code Embedded Systems Programming Hello World! Lecture 10 Verónica Gaspes www2.hh.se/staff/vero What could an Android hello world application be like? Center for Research on Embedded Systems School of Information

More information

CS378 -Mobile Computing. Android Overview and Android Development Environment

CS378 -Mobile Computing. Android Overview and Android Development Environment CS378 -Mobile Computing Android Overview and Android Development Environment What is Android? A software stack for mobile devices that includes An operating system Middleware Key Applications Uses Linux

More information

Android Development. Marc Mc Loughlin

Android Development. Marc Mc Loughlin Android Development Marc Mc Loughlin Android Development Android Developer Website:h:p://developer.android.com/ Dev Guide Reference Resources Video / Blog SeCng up the SDK h:p://developer.android.com/sdk/

More information

Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013

Mobility Introduction Android. Duration 16 Working days Start Date 1 st Oct 2013 Mobility Introduction Android Duration 16 Working days Start Date 1 st Oct 2013 Day 1 1. Introduction to Mobility 1.1. Mobility Paradigm 1.2. Desktop to Mobile 1.3. Evolution of the Mobile 1.4. Smart phone

More information

Practical Android Projects Lucas Jordan Pieter Greyling

Practical Android Projects Lucas Jordan Pieter Greyling Practical Android Projects Lucas Jordan Pieter Greyling Apress s w«^* ; i - -i.. ; Contents at a Glance Contents --v About the Authors x About the Technical Reviewer xi PAcknowiedgments xii Preface xiii

More information

Lecture 1 Introduction to Android

Lecture 1 Introduction to Android These slides are by Dr. Jaerock Kwon at. The original URL is http://kettering.jrkwon.com/sites/default/files/2011-2/ce-491/lecture/alecture-01.pdf so please use that instead of pointing to this local copy

More information

MMI 2: Mobile Human- Computer Interaction Android

MMI 2: Mobile Human- Computer Interaction Android MMI 2: Mobile Human- Computer Interaction Android Prof. Dr. michael.rohs@ifi.lmu.de Mobile Interaction Lab, LMU München Android Software Stack Applications Java SDK Activities Views Resources Animation

More information

Develop a Hello World project in Android Studio Capture, process, store, and display an image. Other sensors on Android phones

Develop a Hello World project in Android Studio Capture, process, store, and display an image. Other sensors on Android phones Kuo-Chin Lien Develop a Hello World project in Android Studio Capture, process, store, and display an image on Android phones Other sensors on Android phones If you have been using Eclipse with ADT, be

More information

Tutorial on Basic Android Setup

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

More information

Developing Android Applications: Case Study of Course Design

Developing Android Applications: Case Study of Course Design Accepted and presented at the: The 10th International Conference on Education and Information Systems, Technologies and Applications: EISTA 2012 July 17-20, 2012 Orlando, Florida, USA Developing Android

More information

Android Mobile App Building Tutorial

Android Mobile App Building Tutorial Android Mobile App Building Tutorial Seidenberg-CSIS, Pace University This mobile app building tutorial is for high school and college students to participate in Mobile App Development Contest Workshop.

More information

GadgetTrak Mobile Security Android & BlackBerry Installation & Operation Manual

GadgetTrak Mobile Security Android & BlackBerry Installation & Operation Manual GadgetTrak Mobile Security Android & BlackBerry Installation & Operation Manual Overview GadgetTrak Mobile Security is an advanced software application designed to assist in the recovery of your mobile

More information

Measuring The End-to-End Value Of Your App. Neil Rhodes: Tech Lead, Mobile Analytics Nick Mihailovski: Developer Programs Engineer

Measuring The End-to-End Value Of Your App. Neil Rhodes: Tech Lead, Mobile Analytics Nick Mihailovski: Developer Programs Engineer Developers Measuring The End-to-End Value Of Your App Neil Rhodes: Tech Lead, Mobile Analytics Nick Mihailovski: Developer Programs Engineer What you re measuring Web site Mobile app Announcing: Google

More information

Android Application Development - Exam Sample

Android Application Development - Exam Sample Android Application Development - Exam Sample 1 Which of these is not recommended in the Android Developer's Guide as a method of creating an individual View? a Create by extending the android.view.view

More information

Developing In Eclipse, with ADT

Developing In Eclipse, with ADT Developing In Eclipse, with ADT Android Developers file://v:\android-sdk-windows\docs\guide\developing\eclipse-adt.html Page 1 of 12 Developing In Eclipse, with ADT The Android Development Tools (ADT)

More information

SDK Quick Start Guide

SDK Quick Start Guide SDK Quick Start Guide Table of Contents Requirements...3 Project Setup...3 Using the Low Level API...9 SCCoreFacade...9 SCEventListenerFacade...10 Examples...10 Call functionality...10 Messaging functionality...10

More information

Getting Started with Android Programming (5 days) with Android 4.3 Jelly Bean

Getting Started with Android Programming (5 days) with Android 4.3 Jelly Bean Getting Started with Android Programming (5 days) with Android 4.3 Jelly Bean Course Description Getting Started with Android Programming is designed to give students a strong foundation to develop apps

More information

Android Application Repackaging

Android Application Repackaging ISA 564, Laboratory 4 Android Exploitation Software Requirements: 1. Android Studio http://developer.android.com/sdk/index.html 2. Java JDK http://www.oracle.com/technetwork/java/javase/downloads/index.html

More information

Boardies IT Solutions info@boardiesitsolutions.com Tel: 01273 252487

Boardies IT Solutions info@boardiesitsolutions.com Tel: 01273 252487 Navigation Drawer Manager Library H ow to implement Navigation Drawer Manager Library into your A ndroid Applications Boardies IT Solutions info@boardiesitsolutions.com Tel: 01273 252487 Contents Version

More information