Managing Android Fragmentation. Carter Jernigan two forty four a.m. LLC

Size: px
Start display at page:

Download "Managing Android Fragmentation. Carter Jernigan two forty four a.m. LLC"

Transcription

1 Managing Android Fragmentation Carter Jernigan two forty four a.m. LLC

2 #1 Android 2.1+ only

3 Only 1.6% of all Android users are running pre 2.0 versions of Android. Not only is the Android 1.0 market small, but all the growth is under Android 2.3 or later. So why divert significant development effort to support less than 2% of your user base?

4 public class AndroidTestActivity extends Activity /** Called when the activity is first created. public void oncreate(final Bundle savedinstancestate) super.oncreate(savedinstancestate); setcontentview(r.layout.main); // Only for Gingerbread or later if (Integer.parseInt(android.os.Build.VERSION.SDK) > 9) try final Class<?> strictmodeclass = Class.forName("android.os.StrictMode"); //$NON-NLS-1$ final Method enabledefaultsmethod = strictmodeclass.getmethod("enabledefaults"); //$NON-NLS-1$ enabledefaultsmethod.invoke(strictmodeclass); catch (final ClassNotFoundException e) throw new RuntimeException(e); catch (final SecurityException e) throw new RuntimeException(e); catch (final NoSuchMethodException e) throw new RuntimeException(e); catch (final IllegalArgumentException e) throw new RuntimeException(e); catch (final IllegalAccessException e) throw new RuntimeException(e); catch (final InvocationTargetException e) throw new RuntimeException(e); The Dalvik virtual machine changed significantly between Android 1.6 and Android 2.0 with respect to backwards compatibility. Let s look at a code example. SDK 9 (Android 2.3/Gingerbread) introduced Strict Mode which prints warnings when apps do things they shouldn t do. Strict Mode requires apps opt-in, but the method to opt-in is only available on SDK 9 or later. This example is compatible with Android 1.5 and later. It checks the SDK level and then uses reflection to enable Strict Mode for supported versions of Android. This is ugly, complicated, and doesn t give the developer compile time checks.

5 public class AndroidTestActivity extends Activity /** Called when the activity is first created. public void oncreate(final Bundle savedinstancestate) super.oncreate(savedinstancestate); setcontentview(r.layout.main); // Only for Gingerbread or later if (android.os.build.version.sdk_int > 9) StrictMode.enableDefaults(); Android 2.0 s virtual machine is much more lax about handling classes that it doesn t recognize. When this is run on API 5 through 8, Dalvik will print out a warning to logcat but otherwise this runs fine and is much simpler.

6 #2 Single app store Only distribute your app through a single app store: Android Market. The first problem is administrative: Every time you update your app you have to upload it to multiple app stores. That s a lot of additional overhead, especially considering that many app stores have different requirements. In addition, multiple app stores provide a poor user experience. If users buy your app from a carrier-specific app store, what happens when they switch carriers? What happens if they move to another country? Here s what happens: they lose access to their apps and then they you for support and demand that you transfer their apps to the Android Market, which isn t possible.

7 #3 Be explicit

8 <supports-screens android:anydensity="true" android:largescreens="true" android:normalscreens="true" android:smallscreens="true" android:xlargescreens="true"/> The Android documentation currently states that for apps that target SDK level 4 or greater, the support-screens entry defaults to true for all entries. In reality, this behavior is undefined. To ensure your app is visible to all users, explicitly set supports-screens Android Manifest entry.

9 android:hardwareaccelerated="false" Honeycomb introduced hardware acceleration as an option feature and ICS turns this on by default. What isn t well documented is the fact that hardware acceleration can significantly increase the memory usage of your application. As a foreground app, this probably doesn t matter. But if your application has a background component you should seriously consider what happens.

10 <activity android:name=".ui.editactivity" android:exported="true" android:uioptions="splitactionbarwhennarrow" > <intent-filter> <action android:name="com.twofortyfouram.locale.intent.action.edit_setting" /> </intent-filter> </activity> <receiver android:name=".receiver.firereceiver" android:exported="true" android:process=":background" > <intent-filter> <action android:name="com.twofortyfouram.locale.intent.action.fire_setting" /> </intent-filter> </receiver> Locale s plug-in examples run background processing in a different process that never touches the UI, to ensure the background process never has the hardware acceleration memory overhead.

11 #4 Scale up and down Different devices have different characteristics, so your Android app should be able to scale up and down based on what features are available.

12

13

14 context.getpackagemanager().hassystemfeature(packagemanager.feature_sensor_accelerometer)) android.hardware.sensor.accelerometer

15

16 <uses-library android:name="com.google.android.maps" android:required="false" />

17 try Class.forName("com.google.android.maps.MapActivity"); //$NON-NLS-1$ startactivity(new Intent(getIntent()).setClass(getApplicationContext(), LocationConditionActivityGoogleMaps.class)); catch (final Exception e) /* * A ClassNotFound exception is usually what occurs, but other strange exceptions have also been observed */ startactivity(new Intent(getIntent()).setClass(getApplicationContext(), LocationConditionActivityNoMaps.class));

18 #5 Configuration control

19 #6 Unit tests

20 #7 Buy, beg, and borrow It is important to test as many devices as possible. Buy some devices, then beg friends, family, and other developers to borrow devices. Some manufacturers, like Sony Ericsson, have a device loaner program.

21 #8 Phased rollout Use Android Market s multi-apk feature to roll out a new version of an app to a smaller subset of users initially.

22 For example, Android 4.0+ is only 1% of the user base and would be a great place to start a phased rollout of an app update.

23 Android Lint, Findbugs, etc. #9 Tools

24

25 #10 Bugs to watch out for

26 Samsung Ringtone Picker Crash final Intent pickerintent = new Intent(RingtoneManager.ACTION_RINGTONE_PICKER); pickerintent.putextra(ringtonemanager.extra_ringtone_show_default, false); pickerintent.putextra(ringtonemanager.extra_ringtone_type, RingtoneManager.TYPE_RINGTONE); pickerintent.putextra(ringtonemanager.extra_ringtone_show_silent, false); startactivity(pickerintent); Setting RingtoneManager.EXTRA_RINGTONE_SHOW_SILENT causes a crash on Samsung Galaxy S/Galaxy S II devices.

27 Intent security public class AndroidTestActivity extends Activity /** Called when the activity is first created. public void oncreate(bundle savedinstancestate) super.oncreate(savedinstancestate); startactivity(new Intent(Settings.ACTION_WIFI_SETTINGS).putExtra("serializable", new CustomSerializable())); private static final class CustomSerializable implements Serializable private static final long serialversionuid = 1L;

28 Sensor Accuracy Certain devices like the Kyocera Echo and the Motorola Xoom always report that the accelerometer is inaccurate but that isn t true.

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

06 Team Project: Android Development Crash Course; Project Introduction

06 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 information

Frameworks & Android. Programmeertechnieken, Tim Cocx

Frameworks & 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 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

Developing Android Apps for BlackBerry 10. JAM854 Mike Zhou- Developer Evangelist, APAC Nov 30, 2012

Developing Android Apps for BlackBerry 10. JAM854 Mike Zhou- Developer Evangelist, APAC Nov 30, 2012 Developing Android Apps for BlackBerry 10 JAM854 Mike Zhou- Developer Evangelist, APAC Nov 30, 2012 Overview What is the BlackBerry Runtime for Android Apps? Releases and Features New Features Demo Development

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

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

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

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

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

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

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

Mobile Application Development Android

Mobile Application Development Android Mobile Application Development Android MTAT.03.262 Satish Srirama satish.srirama@ut.ee Goal Give you an idea of how to start developing Android applications Introduce major Android application concepts

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

Admin. 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. 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 information

Introduction to Android SDK Jordi Linares

Introduction 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 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

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

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

Introduction to Android. Sean Sullivan October 27, 2008

Introduction to Android. Sean Sullivan October 27, 2008 Introduction to Android Sean Sullivan October 27, 2008 What is Android? Android is a software stack for mobile devices that includes an operating system, middleware and key applications source: Google

More information

Memory Management for Android Apps Patrick Dubroy (dubroy.com @dubroy) May 11, 2011

Memory Management for Android Apps Patrick Dubroy (dubroy.com @dubroy) May 11, 2011 Memory Management for Android Apps Patrick Dubroy (dubroy.com @dubroy) May 11, 2011 3 192MB RAM 4 1GB RAM Xoom 1280x800 G1 320x480 5 6 Software Work expands to fill the time available. memory 7 Overview

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 Sensors. CPRE 388 Fall 2015 Iowa State University

Android 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 information

Android Programming and Security

Android Programming and Security Android Programming and Security Dependable and Secure Systems Andrea Saracino andrea.saracino@iet.unipi.it Outlook (1) The Android Open Source Project Philosophy Players Outlook (2) Part I: Android System

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

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 Dalvik Debug

More information

Using Extensions or Cordova Plugins in your RhoMobile Application Darryn Campbell @darryncampbell

Using 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 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

Introduction to Android Development. Jeff Avery CS349, Mar 2013

Introduction to Android Development. Jeff Avery CS349, Mar 2013 Introduction to Android Development Jeff Avery CS349, Mar 2013 Overview What is Android? Android Architecture Overview Application Components Activity Lifecycle Android Developer Tools Installing Android

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

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

Eclipse Exam Scripting

Eclipse Exam Scripting Static Analysis For Improved Application Performance And Quality Eric Cloninger (ericc@motorola.com) Product Line Manager, Development Tools Motorola Mobility Housekeeping bit.ly bundle for all content

More information

5 reasons to choose Streamezzo SDK over Android SDK Page 2

5 reasons to choose Streamezzo SDK over Android SDK Page 2 The purpose of this document is to give an overview of issues frequently encountered by developers when deploying an application on multiple Android phones and how these issues can be solved by Streamezzo

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

ANDROID APPLICATION FOR FILE STORAGE AND RETRIEVAL OVER SECURED AND DISTRIBUTED FILE SERVERS SOWMYA KUKKADAPU B.E., OSMANIA UNIVERSITY, 2010 A REPORT

ANDROID APPLICATION FOR FILE STORAGE AND RETRIEVAL OVER SECURED AND DISTRIBUTED FILE SERVERS SOWMYA KUKKADAPU B.E., OSMANIA UNIVERSITY, 2010 A REPORT ANDROID APPLICATION FOR FILE STORAGE AND RETRIEVAL OVER SECURED AND DISTRIBUTED FILE SERVERS by SOWMYA KUKKADAPU B.E., OSMANIA UNIVERSITY, 2010 A REPORT submitted in partial fulfillment of the requirements

More information

Android WebKit Development: A cautionary tale. Joe Bowser Nitobi E-Mail: joe.bowser@nitobi.com

Android WebKit Development: A cautionary tale. Joe Bowser Nitobi E-Mail: joe.bowser@nitobi.com Android WebKit Development: A cautionary tale Joe Bowser Nitobi E-Mail: joe.bowser@nitobi.com About this talk This talk is not explicitly about PhoneGap This is a technical talk - It is expected that you

More information

MobileConnect. Getting Started Guide

MobileConnect. Getting Started Guide MobileConnect Getting Started Guide 1 Table of Contents Compatible Device List! 3 Operating Systems, Applications, & Personal Computer Devices:! 3 Mobile Devices & Mobile Operating Systems:! 3 Setting

More information

Android-based Java Programming for Mobile Phone LED Control

Android-based Java Programming for Mobile Phone LED Control www.ijcsi.org 217 Android-based Java Programming for Mobile Phone LED Control Yi-Jen Mon Department of Computer Science and Information Engineering, Taoyuan Innovation Institute of Technology Chung-Li,

More information

Graduate presentation for CSCI 5448. By Janakiram Vantipalli ( Janakiram.vantipalli@colorado.edu )

Graduate 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

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

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

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

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

@ME (About) Marcelo Cyreno. Skype: marcelocyreno Linkedin: marcelocyreno Mail: marcelocyreno@gmail.com

@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 information

ECE 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 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 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

Praktikum Entwicklung Mediensysteme (für Master)

Praktikum Entwicklung Mediensysteme (für Master) Praktikum Entwicklung Mediensysteme (für Master) An Introduction to Android An Introduction to Android What is Android? Installation Getting Started Anatomy of an Android Application Life Cycle of an Android

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

VMobile Talk User Guide

VMobile Talk User Guide VMobile Talk User Guide Table of Contents 1. Description 3 2. Supported Devices 3 3. Installation and Usage 3 3.1 Download 3 3.2. Installation 4 3.3. SIP Account Settings 5 3.4. Wi-Fi Connection 6 3.5.

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

Publishing to TIZEN Using the Automated Conversion/Repackaging of Existing Android Apps. Hyeokgon Ryu, Infraware Technology, Ltd.

Publishing to TIZEN Using the Automated Conversion/Repackaging of Existing Android Apps. Hyeokgon Ryu, Infraware Technology, Ltd. Publishing to TIZEN Using the Automated Conversion/Repackaging of Existing Android Apps Hyeokgon Ryu, Infraware Technology, Ltd. Talking about Needs of Automated Converting from Android To Tizen Introduce

More information

Issues of Hybrid Mobile Application Development with PhoneGap: a Case Study of Insurance Mobile Application

Issues of Hybrid Mobile Application Development with PhoneGap: a Case Study of Insurance Mobile Application DATABASES AND INFORMATION SYSTEMS H.-M. Haav, A. Kalja and T. Robal (Eds.) Proc. of the 11th International Baltic Conference, Baltic DB&IS 2014 TUT Press, 2014 215 Issues of Hybrid Mobile Application Development

More information

Mobile App Sensor Documentation (English Version)

Mobile App Sensor Documentation (English Version) Mobile App Sensor Documentation (English Version) Mobile App Sensor Documentation (English Version) Version: 1.2.1 Date: 2015-03-25 Author: email: Kantar Media spring support@spring.de Content Mobile App

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

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

Arduino & Android. A How to on interfacing these two devices. Bryant Tram

Arduino & 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 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

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

Creating a List UI with Android. Michele Schimd - 2013

Creating a List UI with Android. Michele Schimd - 2013 Creating a List UI with Android Michele Schimd - 2013 ListActivity Direct subclass of Activity By default a ListView instance is already created and rendered as the layout of the activity mylistactivit.getlistview();

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

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

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

Programming 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 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

ELDERLY SUPPORT - ANDROID APPLICATION FOR FALL DETECTION AND TRACKING TEJITHA RUDRARAJU. B.E, Anna University, India, 2011 A REPORT

ELDERLY SUPPORT - ANDROID APPLICATION FOR FALL DETECTION AND TRACKING TEJITHA RUDRARAJU. B.E, Anna University, India, 2011 A REPORT ELDERLY SUPPORT - ANDROID APPLICATION FOR FALL DETECTION AND TRACKING By TEJITHA RUDRARAJU B.E, Anna University, India, 2011 A REPORT Submitted in partial fulfillment of the requirements for the degree

More information

Android (2009.12.30) Frank Ducrest

Android (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

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

Sensors & Motion Sensors in Android platform. Minh H Dang CS286 Spring 2013

Sensors & 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 information

Android Geek Night. Application framework

Android 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 information

l What is Android? l Getting Started l The Emulator l Hello World l ADB l Text to Speech l Other APIs (camera, bitmap, etc)

l What is Android? l Getting Started l The Emulator l Hello World l ADB l Text to Speech l Other APIs (camera, bitmap, etc) today l What is Android? l Getting Started l The Emulator l Hello World l ADB l Text to Speech l Other APIs (camera, bitmap, etc) l Other: Signing Apps, SVN l Discussion and Questions introduction to android

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

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

Trepn plug-in for Eclipse FAQ

Trepn plug-in for Eclipse FAQ Trepn plug-in for Eclipse FAQ Introduction and Technical Problem Q: What is Trepn plug-in for Eclipse? A: The Trepn plug-in for Eclipse is a power profiling tool created by Qualcomm Technologies Inc. for

More information

Mobile application testing is a process by which application software developed for hand held mobile devices is tested for its functionality,

Mobile application testing is a process by which application software developed for hand held mobile devices is tested for its functionality, Mobile Testing Mobile application testing is a process by which application software developed for hand held mobile devices is tested for its functionality, usability and consistency. A mobile application

More information

Android Framework. How to use and extend it

Android 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 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

Computer Graphics on Mobile Devices VL SS2010 3.0 ECTS

Computer Graphics on Mobile Devices VL SS2010 3.0 ECTS Computer Graphics on Mobile Devices VL SS2010 3.0 ECTS Peter Rautek Rückblick Motivation Vorbesprechung Spiel VL Framework Ablauf Android Basics Android Specifics Activity, Layouts, Service, Intent, Permission,

More information

the future of mobile web by startech.ro

the future of mobile web by startech.ro the future of mobile web by startech.ro year of the mobile web 2007 2008 2009 2010 2011 2 year of the mobile web 2007 2008 2009 2010 2011 3 year of the mobile web 2007 2008 2009 2010 2011 4 the device

More information

Android 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 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 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

01. Introduction of Android

01. Introduction of Android 01. Introduction of Android Goal Understand the concepts and features of the Android Install the complete Android development environment Find out the one-click install Android development environment

More information

ELET4133: Embedded Systems. Topic 15 Sensors

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

More information

Security Issues in Android Custom ROMs

Security Issues in Android Custom ROMs Security Issues in Android Custom ROMs HTML Version Anant Shrivastava http://anantshri.info Contents Abstract... 3 Introduction to Android... 3 What is Android ROM... 3 Types of ROM... 4 Advantages of

More information

Obsoleted chapter from The Busy Coder's Guide to Advanced Android Development

Obsoleted chapter from The Busy Coder's Guide to Advanced Android Development CHAPTER 13 "" is Android's overall term for ways that Android can detect elements of the physical world around it, from magnetic flux to the movement of the device. Not all devices will have all possible

More information

Islamic University of Gaza. Faculty of Engineering. Computer Engineering Department. Mobile Computing ECOM 5341. Eng. Wafaa Audah.

Islamic University of Gaza. Faculty of Engineering. Computer Engineering Department. Mobile Computing ECOM 5341. Eng. Wafaa Audah. Islamic University of Gaza Faculty of Engineering Computer Engineering Department Mobile Computing ECOM 5341 By Eng. Wafaa Audah June 2013 1 Setting Up the Development Environment and Emulator Part 1:

More information

Android: Setup Hello, World: Android Edition. due by noon ET on Wed 2/22. Ingredients.

Android: Setup Hello, World: Android Edition. due by noon ET on Wed 2/22. Ingredients. Android: Setup Hello, World: Android Edition due by noon ET on Wed 2/22 Ingredients. Android Development Tools Plugin for Eclipse Android Software Development Kit Eclipse Java Help. Help is available throughout

More information

Android Concepts and Programming TUTORIAL 1

Android 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 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

App Development for Smart Devices. Lec #4: Files, Saving State, and Preferences

App 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 information

HybriDroid: Analysis Framework for Android Hybrid Applications

HybriDroid: Analysis Framework for Android Hybrid Applications HybriDroid: Analysis Framework for Android Hybrid Applications Sungho Lee, Julian Dolby, Sukyoung Ryu Programming Language Research Group KAIST June 13, 2015 Sungho Lee, Julian Dolby, Sukyoung Ryu HybriDroid:

More information

Example Connection between USB Host and Android

Example Connection between USB Host and Android Example connection between USB Host and Android Example Connection between USB Host and Android This example illustrates the connection between Board ETMEGA2560-ADK and Android through Port USB Host. In

More information

Table of Contents. Adding Build Targets to the SDK 8 The Android Developer Tools (ADT) Plug-in for Eclipse 9

Table of Contents. Adding Build Targets to the SDK 8 The Android Developer Tools (ADT) Plug-in for Eclipse 9 SECOND EDITION Programming Android kjj *J} Zigurd Mednieks, Laird Dornin, G. Blake Meike, and Masumi Nakamura O'REILLY Beijing Cambridge Farnham Koln Sebastopol Tokyo Table of Contents Preface xiii Parti.

More information

Sensors CS 4720 Web & Mobile Systems

Sensors CS 4720 Web & Mobile Systems Sensors Web & Mobile Systems Sensor Categories Android sensors as separated into one of three broad categories: Motion sensors measure force and rotation Environmental sensors measure parameters such as

More information

e ag u g an L g ter lvin v E ram Neal G g ro va P Ja

e ag u g an L g ter lvin v E ram Neal G g ro va P Ja Evolving the Java Programming Language Neal Gafter Overview The Challenge of Evolving a Language Design Principles Design Goals JDK7 and JDK8 Challenge: Evolving a Language What is it like trying to extend

More information

HP AppPulse Mobile. Adding HP AppPulse Mobile to Your Android App

HP AppPulse Mobile. Adding HP AppPulse Mobile to Your Android App HP AppPulse Mobile Adding HP AppPulse Mobile to Your Android App Document Release Date: April 2015 How to Add HP AppPulse Mobile to Your Android App How to Add HP AppPulse Mobile to Your Android App For

More information

Android. Learning Android Marko Gargenta. Tuesday, March 11, 14

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 information

SCCM Plug-in User Guide. Version 3.41

SCCM Plug-in User Guide. Version 3.41 SCCM Plug-in User Guide Version 3.41 JAMF Software, LLC 2015 JAMF Software, LLC. All rights reserved. JAMF Software has made all efforts to ensure that this guide is accurate. JAMF Software 301 4th Ave

More information

"It's a Phone First! How to Test Your Five-star Mobile Apps"

It's a Phone First! How to Test Your Five-star Mobile Apps BW4 Concurrent Session 11/7/2012 10:15 AM "It's a Phone First! How to Test Your Five-star Mobile Apps" Presented by: Will Hurley Quality and Security Services Brought to you by: 340 Corporate Way, Suite

More information

App Development for Smart Devices. Lec #4: Services and Broadcast Receivers Try It Out

App Development for Smart Devices. Lec #4: Services and Broadcast Receivers Try It Out App Development for Smart Devices CS 495/595 - Fall 2013 Lec #4: Services and Broadcast Receivers Try It Out Tamer Nadeem Dept. of Computer Science Try It Out Example 1 (in this slides) Example 2 (in this

More information

Objective. Android Sensors. Sensor Manager Sensor Types Examples. Page 2

Objective. 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 information