PROGRAMMING IN ANDROID. IOANNIS (JOHN) PAPAVASILEIOU OCTOBER
|
|
- Virginia Cummings
- 8 years ago
- Views:
Transcription
1 PROGRAMMING IN ANDROID IOANNIS (JOHN) PAPAVASILEIOU OCTOBER
2 WHAT IS IT Software platform Operating system Key apps Developers: Google Open Handset Alliance Open Source ( droid.com/)
3 SOFTWARE STACK DESIGN Android Linux!!! The kernel is based on Linux kernel version 3.x (source Wikipedia) Written in C/C++ Apps written in Java Use of Dalvik VM Runs.dex files (dalvic executables)
4 API CAPABILITIES Rich UI components Threads and Background processing Full network stack (Http, JSON) Database and file system access Access to hardware (Camera, Phone, GPS, sensors..)
5 Many of the APIs provided map 1:1 to the underlying HAL LOW LEVEL ARCHITECTURE crossing of process boundaries & call of system services code Includes window and notification managers Media services for playing and Interface that allows recording media the Android system Kernel, to call device includes drivers device drivers and memory management Source: ages/system-architecture.png
6 APP FUNDAMENTALS Every app lives in its own security sandbox: Based on a multi-user linux system every app is a different user Every app has a userid and files related to each ID are not visible to others Apps with same ID can share files and processes User has to grand permision to apps in order to access device data (ext. storage, camera, contacts, etc.) Every app runs its own Linux process Each process has it s own Java VM
7 APPLICATION COMPONENTS Every app may have: Activities A single screen with a UI. E.g. compose, read, list s Services Run in the background to perform long-running operations. E.g. play music, fetch data over the network Content Providers Manage a shared set of app data. Other apps can query or modify the data. E.g. contacts Broadcast Receivers Respond to a system-wide broadcast announcement. E.g. screen turned off, low-battery. May initiate services or notifications
8 ACTIVITIES The basis of android applications A single Activity defines a single viewable screen the actions, not the layout Can have multiple per application Each is a separate entity They have a structured life cycle Different events in their life happen either via the user touching buttons or programmatically
9 ACTIVITY LIFECYCLE The system can drop the activity from memory by just killing the process It might not reach this point!
10 ACTIVITY RESTART When there is a configuration change the app will be restarted by the system Screen orientation keyboard availability Language Etc. To save the state of the Activity the developer has to use the onsaveinstancestate() method. oncreate() or onrestoreinstancestate() will give you access to the restored state We can prevent the restart of the activity by handling the configuration change manually Android will save text that exists in text fields onpause() is guaranteed to be called in any case
11 SERVICES Run in the background Can continue even if Activity that started it dies Should be used if something needs to be done while the user is not interacting with application Otherwise, a thread is probably more applicable Should create a new thread in the service to do work in, since the service runs in the main thread Can be bound to an application In which case will terminate when all applications bound to it unbind Allows multiple applications to communicate with it via a common interface Needs to be declared in manifest file Like Activities, has a structured life cycle
12 SERVICES LIFECYCLE One component calls startservice() One component calls bindservice(), It can communicate with the Ibinder interface One component calls stopservice() or service calls stopself() To it calls unbindservice(), Multiple clients can bind to the same service
13 PROJECT COMPONENTS src your source code gen auto-generated code (usually just R.java) Included libraries Resources Drawables (like.png images) Layouts (define the UI) Values (like strings) Manifest file
14 R CLASS Auto-generated: you shouldn t edit it Contains IDs of the project resources Enforces good software engineering Use findviewbyid and Resources object to get access to the resources Ex. Button buttoninfo = (Button)findViewById(R.id.buttonInfo); buttoninfo.setonclicklistener(buttoninfoclicklistener); Ex. hellostr = getresources().getstring(r.string.hello));
15 STRINGS Nice way to localize apps: res/values/strings.xml res/values-en/strings.xml res/values-fr/strings.xml res/values-ja/strings.xml Application wide available strings Promotes good software engineering UI components made in the UI editor should have text defined in strings.xml Strings are just one kind of Value there are many others
16 AndroidManifest.Xml Central configuration file for your application Permissions required from the app: E.g. access contacts, internet, vibration, camera, phone history, DB access Contains characteristics about your application Activities Services Content providers Broadcast receivers Defines external libraries, like Google Maps API
17 MANIFEST FILE EXAMPLE <?xml version="1.0" encoding="utf-8"?> <manifest xmlns:android= package="com.abimed.ecg android:versioncode="5 android:versionname="1.2.2"> <uses-sdk android:minsdkversion="8"/> <uses-permission android:name="android.permission.internet"/> <uses-permission android:name="android.permission.read_contacts"/> <uses-permission android:name="android.permission.write_contacts"/> <uses-permission android:name="android.permission.write_external_storage"/> <uses-permission android:name="android.permission.access_fine_location"/> <uses-permission android:name="android.permission.access_coarse_location"/> <uses-permission android:name="android.permission.access_network_state"/> <uses-permission android:name="android.permission.change_wifi_state"/> <uses-permission android:name="android.permission.access_wifi_state"/> <application android:debuggable="false"> <uses-library android:name="com.google.android.maps"/> <activity android:name="com.abimed.ecg.ecgactivity <intent-filter> <action android:name="android.intent.action.main"/> <category android:name="android.intent.category.launcher"/> </intent-filter> </activity> <activity android:name="com.abimed.ecg.preferences" <activity android:name="com.abimed.ecg.about" <activity android:name="com.abimed.ecg.report" <activity android:name="com.abimed.ecg.graphinfo" <activity android:name=".patients.patients" <activity android:name=".patients.viewpatient" <activity android:name=".patients.patientinfo" <activity android:name=".patients.patientedit" </application> </manifest>
18 TOOLS TO DEVELOP Phone Eclipse ( ) Android Plugin (ADT) Android SDK ( ) Install everything except Additional SDK Platforms, unless you want to Through the SDK Manager we can create Android Virtual Devices
19 HELLO WORLD
20 LAYOUTS Declare UI elements in XML Separates presentation from actual code Declare multiple layouts depending on: Orientation Screen size, etc. Visualize easy to debug Eclipse has nice Drag n Drop editor Instantiate layout elements at runtime Fast and easy when the layout is simple: Has a few View elements Has only a surface vew like GLSurfaceView
21 HELLO WORLD LAYOUT <!-- mainlayout.xml - -> <?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android=" xmlns:tools=" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="horizontal"> <EditText android:id="@+id/edit_message" android:layout_weight="1" android:layout_width="0dp" android:layout_height="wrap_content" android:hint= Enter a message" /> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text= Send android:onclick="sendmessage" /> </LinearLayout> Only one root element Additional elements as children
22 MAIN ACTIVITY public class MainActivity extends Activity { public final static String EXTRA_MESSAGE = protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.mainlayout); // Make sure we're running on Honeycomb or higher to use ActionBar APIs if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { // Show the Up button in the action bar. getactionbar().setdisplayhomeasupenabled(true); /** Called when the user clicks the Send button */ public void sendmessage(view view) { Intent intent = new Intent(this, DisplayMessageActivity.class); EditText edittext = (EditText) findviewbyid(r.id.edit_message); String message = edittext.gettext().tostring(); intent.putextra(extra_message, message); startactivity(intent);
23 DISPLAY MESSAGE ACTIVITY public class DisplayMessageActivity extends protected void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); // Get the message from the intent Intent intent = getintent(); String message = intent.getstringextra(mainactivity.extra_message); // Create the text view TextView textview = new TextView(this); textview.settextsize(40); textview.settext(message); // Set the text view as the activity layout setcontentview(textview);
24 INTENTS Send user to another App: Implicit intent: Uri number = Uri.parse("tel: "); Intent callintent = new Intent(Intent.ACTION_DIAL, number); Uri location = Uri.parse("geo:0,0?q=1600+Amphitheatre+Parkway,+Mountai n+view,+california"); callintent = new Intent(Intent.ACTION_VIEW, location); startactivity(callintent); When multiple apps can handle the intent
25 APP CHOOSER Intent intent = new Intent(Intent.ACTION_SEND);... // Always use string resources for UI text. // This says something like "Share this photo with" String title = getresources().getstring(r.string.chooser_title); // Create and start the chooser Intent chooser = Intent.createChooser(intent, title); startactivity(chooser);
26 STORAGE OPTIONS..
27 SHARED PREFERENCES Store key-value sets Good for small sets public class Calc extends Activity { public static final String PREFS_NAME = protected void oncreate(bundle state){ super.oncreate(state);... // Restore preferences SharedPreferences settings = getsharedpreferences(prefs_name, 0); boolean silent = settings.getboolean("silentmode", false); protected void onstop(){ super.onstop(); // We need an Editor object to make preference changes. // All objects are from android.context.context SharedPreferences settings = getsharedpreferences(prefs_name, 0); SharedPreferences.Editor editor = settings.edit(); editor.putboolean("silentmode", msilentmode); // Commit the edits! editor.commit();
28 FILE STORAGE Internal Always available Files accesible only by the app When the app is uninstalled, files are deleted External Not always available World-readable When app is uninstalled, files will be deleted if the directory is gotten from getexternalfilesdir()
29 INTERNAL STORAGE String FILENAME = myfile.txt"; String string = "hello world!"; FileOutputStream fos = openfileoutput(filename, Context.MODE_PRIVATE); fos.write(string.getbytes()); fos.close(); When there is a need to cache some files use method: File createtempfile (String prefix, String suffix)
30 EXTERNAL STORAGE <manifest... > <uses-permission android:name="android.permission.write_external_storage"/> <uses-permission android:name="android.permission.read_external_storage"/>... </manifest> /* Checks if external storage is available for read and write */ public boolean isexternalstoragewritable() { String state = Environment.getExternalStorageState(); if (Environment.MEDIA_MOUNTED.equals(state)) { return true; return false; /* Checks if external storage is available to at least read */ public boolean isexternalstoragereadable() { String state = Environment.getExternalStorageState(); if (Environment.MEDIA_MOUNTED.equals(state) Environment.MEDIA_MOUNTED_READ_ONLY.equals(state)) { return true; return false; public File getalbumstoragedir(context context, String albumname) { // Get the directory for the app's private pictures directory. File file = new File(context.getExternalFilesDir( Environment.DIRECTORY_PICTURES), albumname); if (!file.mkdirs()) { Log.e(LOG_TAG, "Directory not created"); return file;
31 CREATE DATABASE public class DictionaryOpenHelper extends SQLiteOpenHelper { private static final int DATABASE_VERSION = 2; private static final String DICTIONARY_TABLE_NAME = "dictionary"; private static final String DICTIONARY_TABLE_CREATE = "CREATE TABLE " + DICTIONARY_TABLE_NAME + " (" + KEY_WORD + " TEXT, " + KEY_DEFINITION + " TEXT);"; DictionaryOpenHelper(Context context) { super(context, DATABASE_NAME, null, public void oncreate(sqlitedatabase db) { db.execsql(dictionary_table_create);
32 PUT INFO INTO THE DATABASE / Gets the data repository in write mode SQLiteDatabase db = mdbhelper.getwritabledatabase(); // Create a new map of values, where column names are the keys ContentValues values = new ContentValues(); values.put(feedentry.column_name_entry_id, id); values.put(feedentry.column_name_title, title); values.put(feedentry.column_name_content, content); // Insert the new row, returning the primary key value of the new row long newrowid; newrowid = db.insert( FeedEntry.TABLE_NAME, FeedEntry.COLUMN_NAME_NULLABLE, values);
33 SENSORS Types: Motion sensors Environmental sensors Position sensors Sensor Framework: Get available sensors Get sensor capabilities Acquire raw data for a given minimum rate Register for sensor event listeners
34 MAGNETOMETER AVAILABILITY CHECK private SensorManager msensormanager;... msensormanager = (SensorManager) getsystemservice(context.sensor_service); if (msensormanager.getdefaultsensor(sensor.type_magnetic_field)!= null){ // Success! There's a magnetometer. else { // Failure! No magnetometer.
35 GET DATA EVENTS FROM THE LIGHT SENSOR public class SensorActivity extends Activity implements SensorEventListener { private SensorManager msensormanager; private Sensor public final void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); msensormanager = (SensorManager) getsystemservice(context.sensor_service); mlight = public final void onaccuracychanged(sensor sensor, int accuracy) { // Do something here if sensor accuracy public final void onsensorchanged(sensorevent event) { // The light sensor returns a single value. // Many sensors return 3 values, one for each axis. float lux = event.values[0]; // Do something with this sensor protected void onresume() { super.onresume(); msensormanager.registerlistener(this, mlight, protected void onpause() { super.onpause(); msensormanager.unregisterlistener(this);
36 CONNECTIVITY Several APIs to let the app connect and interact with other devices: Bluetooth NFC Wi-Fi P2P USB SIP
37 USER LOCATION <manifest... > <uses-permission android:name="android.permission.access_fine_location" />... </manifest> // Acquire a reference to the system Location Manager LocationManager locationmanager = (LocationManager) this.getsystemservice(context.location_service); // Define a listener that responds to location updates LocationListener locationlistener = new LocationListener() { public void onlocationchanged(location location) { // Called when a new location is found by the network location provider. makeuseofnewlocation(location); public void onstatuschanged(string provider, int status, Bundle extras) { public void onproviderenabled(string provider) { public void onproviderdisabled(string provider) { ; // Register the listener with the Location Manager to receive location updates locationmanager.requestlocationupdates(locationmanager.network_provider, 0, 0, locationlistener);
38 TOAST Context context = getapplicationcontext(); CharSequence text = "Hello toast!"; int duration = Toast.LENGTH_SHORT; Toast toast = Toast.makeText(context, text, duration); toast.show();
39 SEND SMS <manifest... > <uses-permission android:name="android.permission.send_sms"/>... </manifest> /** Called when the activity is first created. public void oncreate(bundle savedinstancestate){ super.oncreate(savedinstancestate); setcontentview(r.layout.main); btnsendsms = (Button) findviewbyid(r.id.btnsendsms); txtphoneno = (EditText) findviewbyid(r.id.txtphoneno); txtmessage = (EditText) findviewbyid(r.id.txtmessage); btnsendsms.setonclicklistener(new View.OnClickListener() { public void Onclick(View v) { String phoneno = txtphoneno.gettext().tostring(); String message = txtmessage.gettext().tostring(); if (phoneno.length()>0 && message.length()>0) sendsms(phoneno, message); else Toast.makeText(getBaseContext(), "Please enter both phone number and message.",toast.length_short).show(); );
40 SEND SMS private void sendsms(string phonenumber, String message) { SmsManager sms = SmsManager.getDefault(); sms.sendtextmessage(phonenumber, null, message, null, null);
41 GOOGLE LOCATION SERVICES Fused location provider: Gives the bests location according to the needs high accuracy, low power, etc. Geofencing APIs: App will receive notifications when the user enters specific geographic boundaries Activity recognition: In a vehicle On a bicycle On foot Still Tilting Unknown
42 MY APP
43 THANKS!
Android. Learning Android Marko Gargenta. Tuesday, March 11, 14
Android Learning Android Marko Gargenta Materials Sams Teach Yourself Android Application Development in 24 Hours (Amazon) Android Apps for Absolute Beginners (Amazon) Android Development Tutorial (http://
More information06 Team Project: Android Development Crash Course; Project Introduction
M. Kranz, P. Lindemann, A. Riener 340.301 UE Principles of Interaction, 2014S 06 Team Project: Android Development Crash Course; Project Introduction April 11, 2014 Priv.-Doz. Dipl.-Ing. Dr. Andreas Riener
More informationAndroid Framework. How to use and extend it
Android Framework How to use and extend it Lectures 9/10 Android Security Security threats Security gates Android Security model Bound Services Complex interactions with Services Alberto Panizzo 2 Lecture
More informationProgramming 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 informationgetsharedpreferences() - Use this if you need multiple preferences files identified by name, which you specify with the first parameter.
Android Storage Stolen from: developer.android.com data-storage.html i Data Storage Options a) Shared Preferences b) Internal Storage c) External Storage d) SQLite Database e) Network Connection ii Shared
More informationSensors & Motion Sensors in Android platform. Minh H Dang CS286 Spring 2013
Sensors & Motion Sensors in Android platform Minh H Dang CS286 Spring 2013 Sensors The Android platform supports three categories of sensors: Motion sensors: measure acceleration forces and rotational
More informationAndroid Sensors. CPRE 388 Fall 2015 Iowa State University
Android Sensors CPRE 388 Fall 2015 Iowa State University What are sensors? Sense and measure physical and ambient conditions of the device and/or environment Measure motion, touch pressure, orientation,
More informationPresenting 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 informationMMI 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 informationUsing Extensions or Cordova Plugins in your RhoMobile Application Darryn Campbell @darryncampbell
Using Extensions or Cordova Plugins in your RhoMobile Application Darryn Campbell @darryncampbell Application Architect Agenda Creating a Rho Native Extension on Android Converting a Cordova Plugin to
More informationUsing 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 informationAndroid. Lecture 1. Learning Android Marko Gargenta. Friday, March 22, 13
Android Lecture 1 Learning Android Marko Gargenta Final Project Jan/Feb: ARM March: Android Apr: Final project Complexity Sense the world Analysis Service delivery Hands-on A fun project built-up through
More informationELET4133: 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 informationMobile 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 informationGraduate presentation for CSCI 5448. By Janakiram Vantipalli ( Janakiram.vantipalli@colorado.edu )
Graduate presentation for CSCI 5448 By Janakiram Vantipalli ( Janakiram.vantipalli@colorado.edu ) Content What is Android?? Versions and statistics Android Architecture Application Components Inter Application
More information( 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 informationAndroid 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 informationAndroid Development Introduction CS314
Android Development Introduction CS314 Getting Started Download and Install Android Studio: http://developer.android.com/tools/studio/index. html This is the basic Android IDE and supports most things
More informationHow 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 informationAndroid Sensors. XI Jornadas SLCENT de Actualización Informática y Electrónica
Android Sensors XI Jornadas SLCENT de Actualización Informática y Electrónica About me José Juan Sánchez Hernández Android Developer (In my spare time :) Member and collaborator of: - Android Almería Developer
More informationAndroid 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 informationBuilding Your First App
uilding Your First App Android Developers http://developer.android.com/training/basics/firstapp/inde... Building Your First App Welcome to Android application development! This class teaches you how to
More informationAndroid 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 informationIntroduction to Android: Hello, Android! 26 Mar 2010 CMPT166 Dr. Sean Ho Trinity Western University
Introduction to Android: Hello, Android! 26 Mar 2010 CMPT166 Dr. Sean Ho Trinity Western University Android OS Open-source mobile OS (mostly Apache licence) Developed by Google + Open Handset Alliance
More informationAndroid Fundamentals 1
Android Fundamentals 1 What is Android? Android is a lightweight OS aimed at mobile devices. It is essentially a software stack built on top of the Linux kernel. Libraries have been provided to make tasks
More informationAndroid Sensor Programming. Weihong Yu
Android Sensor Programming Weihong Yu Sensors Overview The Android platform is ideal for creating innovative applications through the use of sensors. These built-in sensors measure motion, orientation,
More informationIntroduction to Android
Introduction to Android Android Smartphone Programming Matthias Keil Institute for Computer Science Faculty of Engineering October 19, 2015 Outline 1 What is Android? 2 Development on Android 3 Applications:
More informationSoftware Environments of Smartphone Applications
Software Environments of Smartphone Applications Exercise/Practice Professur Schaltkreisund Systementwurf www.tu-chemnitz.de 1 Introduction The course Software Environments of Smartphone Applications (SESA)
More informationECWM511 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 informationAndroid app development course
Android app development course Unit 7- + Beyond Android Activities. SMS. Audio, video, camera. Sensors 1 SMS We can send an SMS through Android's native client (using an implicit Intent) Intent smsintent
More informationAndroid 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 informationIntroduction to Android SDK Jordi Linares
Introduction to Android SDK Introduction to Android SDK http://www.android.com Introduction to Android SDK Google -> OHA (Open Handset Alliance) The first truly open and comprehensive platform for mobile
More informationGetting started with Android and App Engine
Getting started with Android and App Engine About us Tim Roes Software Developer (Mobile/Web Solutions) at inovex GmbH www.timroes.de www.timroes.de/+ About us Daniel Bälz Student/Android Developer at
More informationAndroid Concepts and Programming TUTORIAL 1
Android Concepts and Programming TUTORIAL 1 Kartik Sankaran kar.kbc@gmail.com CS4222 Wireless and Sensor Networks [2 nd Semester 2013-14] 20 th January 2014 Agenda PART 1: Introduction to Android - Simple
More informationSpecialized 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 informationHello 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 informationTutorial #1. Android Application Development Advanced Hello World App
Tutorial #1 Android Application Development Advanced Hello World App 1. Create a new Android Project 1. Open Eclipse 2. Click the menu File -> New -> Other. 3. Expand the Android folder and select Android
More informationAdmin. Mobile Software Development Framework: Android Activity, View/ViewGroup, External Resources. Recap: TinyOS. Recap: J2ME Framework
Admin. Mobile Software Development Framework: Android Activity, View/ViewGroup, External Resources Homework 2 questions 10/9/2012 Y. Richard Yang 1 2 Recap: TinyOS Hardware components motivated design
More informationIntroduction to Android Programming (CS5248 Fall 2015)
Introduction to Android Programming (CS5248 Fall 2015) Aditya Kulkarni (email.aditya.kulkarni@gmail.com) August 26, 2015 *Based on slides from Paresh Mayami (Google Inc.) Contents Introduction Android
More informationFrameworks & Android. Programmeertechnieken, Tim Cocx
Frameworks & Android Programmeertechnieken, Tim Cocx Discover thediscover world atthe Leiden world University at Leiden University Software maken is hergebruiken The majority of programming activities
More informationAndroid 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 informationANDROID 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 informationMobile Applications Grzegorz Budzyń Lecture. 2: Android Applications
Mobile Applications Grzegorz Budzyń Lecture 2: Android Applications Plan History and background Application Fundamentals Application Components Activities Services Content Providers Broadcast Receivers
More informationArduino & Android. A How to on interfacing these two devices. Bryant Tram
Arduino & Android A How to on interfacing these two devices Bryant Tram Contents 1 Overview... 2 2 Other Readings... 2 1. Android Debug Bridge -... 2 2. MicroBridge... 2 3. YouTube tutorial video series
More informationAn Introduction to Android
An Introduction to Android Michalis Katsarakis M.Sc. Student katsarakis@csd.uoc.gr Tutorial: hy439 & hy539 16 October 2012 http://www.csd.uoc.gr/~hy439/ Outline Background What is Android Android as a
More informationApp Development for Smart Devices. Lec #4: Files, Saving State, and Preferences
App Development for Smart Devices CS 495/595 - Fall 2011 Lec #4: Files, Saving State, and Preferences Tamer Nadeem Dept. of Computer Science Some slides adapted from Stephen Intille Objective Data Storage
More informationMobile Security - Tutorial 1. Beginning Advanced Android Development Brian Ricks Fall 2014
Mobile Security - Tutorial 1 Beginning Advanced Android Development Brian Ricks Fall 2014 Before we begin... I took your Wireless Network Security course in Spring... are you gonna have memes in this?
More informationAndroid Services. Android. Victor Matos
Lesson 22 Android Victor Matos Cleveland State University Notes are based on: Android Developers http://developer.android.com/index.html Portions of this page are reproduced from work created and shared
More informationApp Development for Smart Devices. Lec #2: Android Tools, Building Applications, and Activities
App Development for Smart Devices CS 495/595 - Fall 2011 Lec #2: Android Tools, Building Applications, and Activities Tamer Nadeem Dept. of Computer Science Objective Understand Android Tools Setup Android
More informationMobile 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 informationAndroid Java Live and In Action
Android Java Live and In Action Norman McEntire Founder, Servin Corp UCSD Extension Instructor norman.mcentire@servin.com Copyright (c) 2013 Servin Corp 1 Opening Remarks Welcome! Thank you! My promise
More informationCSE476 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 Dalvik Debug
More informationUsing the Android Sensor API
Using the Android Sensor API Juan José Marrón Department of Computer Science & Engineering jmarronm@mail.usf.edu # Outline Sensors description: - Motion Sensors - Environmental Sensors - Positioning Sensors
More informationINTRODUCTION 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 informationAndroid 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 informationdirectory 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 informationObjective. Android Sensors. Sensor Manager Sensor Types Examples. Page 2
Android Sensors Objective Android Sensors Sensor Manager Sensor Types Examples Page 2 Android.hardware Support for Hardware classes with some interfaces Camera: used to set image capture settings, start/stop
More informationIntroduction 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 informationProgramming with Android: System Architecture. Dipartimento di Scienze dell Informazione Università di Bologna
Programming with Android: System Architecture Luca Bedogni Marco Di Felice Dipartimento di Scienze dell Informazione Università di Bologna Outline Android Architecture: An Overview Android Dalvik Java
More informationNow 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@ME (About) Marcelo Cyreno. Skype: marcelocyreno Linkedin: marcelocyreno Mail: marcelocyreno@gmail.com
Introduction @ME (About) Marcelo Cyreno Skype: marcelocyreno Linkedin: marcelocyreno Mail: marcelocyreno@gmail.com Android - Highlights Open Source Linux Based Developed by Google / Open Handset Alliance
More informationAndroid Programming. Android App. Høgskolen i Telemark Telemark University College. Cuong Nguyen, 2013.06.19
Høgskolen i Telemark Telemark University College Department of Electrical Engineering, Information Technology and Cybernetics Android Programming Cuong Nguyen, 2013.06.19 Android App Faculty of Technology,
More informationAn 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 informationAndroid 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 informationGetting 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 informationDeveloping NFC Applications on the Android Platform. The Definitive Resource
Developing NFC Applications on the Android Platform The Definitive Resource Part 1 By Kyle Lampert Introduction This guide will use examples from Mac OS X, but the steps are easily adaptable for modern
More informationUniversità Degli Studi di Parma. Distributed Systems Group. Android Development. Lecture 2 Android Platform. Marco Picone - 2012
Android Development Lecture 2 Android Platform Università Degli Studi di Parma Lecture Summary 2 The Android Platform Dalvik Virtual Machine Application Sandbox Security and Permissions Traditional Programming
More informationMAP524/DPS924 MOBILE APP DEVELOPMENT (ANDROID) MIDTERM TEST OCTOBER 2013 STUDENT NAME STUDENT NUMBER
MAP524/DPS924 MOBILE APP DEVELOPMENT (ANDROID) MIDTERM TEST OCTOBER 2013 STUDENT NAME STUDENT NUMBER Please answer all questions on the question sheet This is an open book/notes test. You are allowed to
More informationDeveloping 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 informationDeveloping Sensor Applications on Intel Atom Processor-Based Android* Phones and Tablets
Developing Sensor Applications on Intel Atom Processor-Based Android* Phones and Tablets This guide provides application developers with an introduction to the Android Sensor framework and discusses how
More informationLecture 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 informationAn 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 informationGetting 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 informationAndroid Application Development. Daniel Switkin Senior Software Engineer, Google Inc.
Android Application Development Daniel Switkin Senior Software Engineer, Google Inc. Goal Get you an idea of how to start developing Android applications Introduce major Android application concepts Walk
More informationAndroid 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 informationA Short Introduction to Android
A Short Introduction to Android Notes taken from Google s Android SDK and Google s Android Application Fundamentals 1 Plan For Today Lecture on Core Android Three U-Tube Videos: - Architecture Overview
More informationInternal Services. CSE 5236: Mobile Application Development Instructor: Adam C. Champion Course Coordinator: Dr. Rajiv Ramnath
Internal Services CSE 5236: Mobile Application Development Instructor: Adam C. Champion Course Coordinator: Dr. Rajiv Ramnath 1 Internal Services Communication: Email, SMS and telephony Audio and video:
More informationJordan Jozwiak November 13, 2011
Jordan Jozwiak November 13, 2011 Agenda Why Android? Application framework Getting started UI and widgets Application distribution External libraries Demo Why Android? Why Android? Open source That means
More informationWireless Systems Lab. First Lesson. Wireless Systems Lab - 2014
Wireless Systems Lab First Lesson About this course Internet of Things Android and sensors Mobile sensing Indoor localization Activity recognition others.. Exercises Projects :) Internet of Things Well-known
More informationAndroid 多 核 心 嵌 入 式 多 媒 體 系 統 設 計 與 實 作
Android 多 核 心 嵌 入 式 多 媒 體 系 統 設 計 與 實 作 Android Application Development 賴 槿 峰 (Chin-Feng Lai) Assistant Professor, institute of CSIE, National Ilan University Nov. 10 th 2011 2011 MMN Lab. All Rights Reserved
More informationDeveloper'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 informationAndroid 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 informationAndroid Geek Night. Application framework
Android Geek Night Application framework Agenda 1. Presentation 1. Trifork 2. JAOO 2010 2. Google Android headlines 3. Introduction to an Android application 4. New project using ADT 5. Main building blocks
More informationIntroduction 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 information060010702 Mobile Application Development 2014
Que 1: Short question answer. Unit 1: Introduction to Android and Development tools 1. What kind of tool is used to simulate Android application? 2. Can we use C++ language for Android application development?
More informationECWM511 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 informationIntroduction 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 informationPersistent Data Storage. Akhilesh Tyagi
Persistent Data Storage Akhilesh Tyagi Need to Save/Restore When an Activity is destroyed its state needs to be saved (due to orientation change) You may have personal persistent data. (key, value) pair
More informationHere to take you beyond Mobile Application development using Android Course details
Here to take you beyond Mobile Application development using Android Course details Mobile Application Development using Android Objectives: To get you started with writing mobile application using Android
More informationIntroduction to Android. CSG250 Wireless Networks Fall, 2008
Introduction to Android CSG250 Wireless Networks Fall, 2008 Outline Overview of Android Programming basics Tools & Tricks An example Q&A Android Overview Advanced operating system Complete software stack
More informationQ1. What method you should override to use Android menu system?
AND-401 Exam Sample: Q1. What method you should override to use Android menu system? a. oncreateoptionsmenu() b. oncreatemenu() c. onmenucreated() d. oncreatecontextmenu() Answer: A Q2. What Activity method
More informationChapter 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 informationECE 455/555 Embedded System Design. Android Programming. Wei Gao. Fall 2015 1
ECE 455/555 Embedded System Design Android Programming Wei Gao Fall 2015 1 Fundamentals of Android Application Java programming language Code along with any required data and resource files are compiled
More informationLab 1 (Reading Sensors & The Android API) Week 3
ECE155: Engineering Design with Embedded Systems Winter 2013 Lab 1 (Reading Sensors & The Android API) Week 3 Prepared by Kirill Morozov version 1.1 Deadline: You must submit the lab to the SVN repository
More informationAndroid Persistency: Files
15 Android Persistency: Files Notes are based on: The Busy Coder's Guide to Android Development by Mark L. Murphy Copyright 2008-2009 CommonsWare, LLC. ISBN: 978-0-9816780-0-9 & Android Developers http://developer.android.com/index.html
More informationAndroid 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 informationAndroid Application Model
Android Application Model Content - Activities - Intent - Tasks / Applications - Lifecycle - Processes and Thread - Services - Content Provider Dominik Gruntz IMVS dominik.gruntz@fhnw.ch 1 Android Software
More informationTUTORIAL. 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 informationAndroid (2009.12.30) Frank Ducrest
Android (2009.12.30) Frank Ducrest Android 2 Android mobile operating system based on a monolithic Linux kernel (all OS operations take place in the kernel space) suited to Java apps by design (Dalvik
More information