Enhancing Mobile Development with Klocwork Checkers for Android

Size: px
Start display at page:

Download "Enhancing Mobile Development with Klocwork Checkers for Android"

Transcription

1 KLOCWORK WHITE PAPER OCTOBER 2013 Enhancing Mobile Development with Klocwork Checkers for Android Developers in various parts of the Android stack have unique security and error detection needs. The kernel and platform developers that use C and C++ on Linux are focused primarily on performance, stability, and security. Application developers who use Java are more interested in functionality and the user experience. While there are some overlaps in some areas, such as security, the ways in which developers achieve these results are different. Many analysis tools fail to recognize these unique challenges, leaving Android developers code vulnerable to security weaknesses and errors. Klocwork Insight analyzes how the Android code is meant to operate by building a knowledge base of every function call in the platform. This analysis provides an understanding of both the Java and C/C++ code that Android developers require. The analysis is performed on a server or the developer s desktop, and has built-in diagnostics and Android-specific checkers. Android-specific checkers Errors can be tricky to find, which is why Klocwork Insight comes with built-in Java and Androidspecific checkers, including: ANDROID.NPE Null pointer exceptions: These red herring errors are annoying, but have to be fixed or they ll bite your ankles. Fortunately, Klocwork Insight detects them right on your desktop before they infect the build. Here s an example of the more loathsome varieties of NPE trying to load a bitmap: public Bitmap loadbitmap(byte [] data) { Bitmap bmp = BitmapFactory.decodeByteArray(data, 0, data.length); // Align bitmap to 4 pixel boundary final Bitmap resized = Bitmap.createScaledBitmap(bmp, (bmp.getwidth() % 4) * 4, bmp.getheight(), true); return resized; When Klocwork Insight sees code like this, it will highlight the offending line inside your IDE, whether you are using Eclipse or IntelliJ IDEA.

2 As you no doubt are aware, the pointer from an SDK function isn t guaranteed to be valid. Most developers hate adding defensive checks, but it beats getting a call from the CTO on a Saturday afternoon because your app is crashing. To fix this sample, simply test for null as shown below: public Bitmap loadbitmap(byte [] data) { Bitmap bmp = BitmapFactory.decodeByteArray(data, 0, data.length); if (bmp == null) return null; // Align bitmap to 4 pixel boundary final Bitmap resized = Bitmap.createScaledBitmap(bmp, (bmp.getwidth() % 4) * 4, bmp.getheight(), true); return resized; ANDROID.RLK.SQLCON Resource Allocation: This is one of those snake in the grass errors that surprise many of us. The SQLite commands in the Android SDK return a live connection that continues to live after the variable that contains it goes out of scope. Multiple iterations through the same code will result in slow performance as more memory is devoted to storing idle connections. Here s an example: protected void onresume(bundle bundle) { super.onresume(); final SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabase( students.db, null, null); db.execsql( Robert ); DROP TABLE Students;-- ); Enhancing Mobile Development with Klocwork Checkers for Android Klocwork White Paper 2

3 There are two solutions to this issue. The immediate solution is to close the database connection in the same scope it is opened, as shown below. protected void onresume(bundle bundle) { super.onresume(); final SQLiteDatabase db = SQLiteDatabase.openOrCreateDatabase( students.db, null, null); db.execsql( Robert ); DROP TABLE Students;-- ); db.close(); A better practice would be to refactor the database connection to the widest scope that s needed. Opening a database connection has a considerable amount of overhead, so either keep the connection persistent or load the data you need from the database into a local collection and close it. JD.INF.AREC Recursion: Some of the Android lifecycle methods expect you to call their superclass method. If you aren t paying attention, you can create a circular reference to your own code. The compiler is perfectly happy generating code from the following snippet. protected void oncreate(bundle bundle) { oncreate(bundle); Inside the IDE, you ll get a warning that your code has a problem. The solution is to call the superclass version of oncreate() as shown below. protected void oncreate(bundle bundle) { super.oncreate(bundle); ANDROID.UF.* Invalid Resource: Android allows developers to access hardware by instantiating an object that is subclassed from the Android base class. This includes the camera as well as media playback and recording. If the object is released, explicitly or implicitly, the reference to the hardware device is no longer valid. The ANDROID.UF group of checkers detects and reports on these potential errors. Enhancing Mobile Development with Klocwork Checkers for Android Klocwork White Paper 3

4 public boolean onlongclick(view view) { MediaRecorder mrecorder = new MediaRecorder(); mrecorder.setaudiosource(mediarecorder.audiosource.mic); mrecorder.setoutputformat(mediarecorder.outputformat.three_gpp); mrecorder.setaudioencoder(mediarecorder.audioencoder.amr_nb); final File file = new File( test.raw ); if (file.exists()) else mrecorder.setoutputfile(file.getpath()); mrecorder.start(); return true; While the pointer (mrecorder) isn t null, the object it refers to is no longer valid. The developer needs to spend some time refactoring the code for a better flow, but the most immediate solution to this problem is to exit the function when the pointer is released. By the way, there is also an ANDROID.NPE error in that sample. Can you spot it? Here is a solution to the issues reported: public boolean onlongclick(view view) { MediaRecorder mrecorder = new MediaRecorder(); if (mrecorder == null) return false; mrecorder.setaudiosource(mediarecorder.audiosource.mic); mrecorder.setoutputformat(mediarecorder.outputformat.three_gpp); mrecorder.setaudioencoder(mediarecorder.audioencoder.amr_nb); final File file = new File( test.raw ); if (file.exists()) { return false; mrecorder.setoutputfile(file.getpath()); mrecorder.start(); return true; Klocwork s commitment to Android Over half of all smartphones sold today use Android, and it s a popular choice for embedded systems. The Android-specific checkers above demonstrate Klocwork s commitment to Android developers, and you can expect more from us in the months to come. Other Resources Learn more about Klocwork solutions for Android application and device development. Visit the Klocwork Developer Network to see a list of checkers for Android and examples that show you the best way to remedy security vulnerabilities, even if you ve never heard of them before. See how easily you can write secure, reliable Android code by signing up for a free trial of Klocwork Insight. Enhancing Mobile Development with Klocwork Checkers for Android Klocwork White Paper 4

5 Klocwork: Empowering developers at their desktop Unlike other source code analysis tools, Insight works in the developer s IDE of choice, identifying security weaknesses and errors so they can be fixed before being committed to the build. We don t make you wait until after a build is run to show you potential security vulnerabilities or reliability issues, we show you On-the-Fly as you are typing. You take corrective action immediately, and submit more secure, reliable code into the build process. Using information from the integration project Insight works behind the scenes collecting all the information needed to analyze your code within the context of the entire build taxonomies, security, coding standards, etc. You review the results, fixing errors and setting others to be fixed later or to be ignored, and adding comments to explain your changes. The result is secure code, fewer errors, and faster project completion. About Klocwork In the world of AppSec, developers and the firms that employ them demand tools that provide a competitive edge. Klocwork meets these demands with compelling desktop tools that enable developers to produce secure, reliable software more easily and quickly. Klocwork s unique SCA tool provides accurate, reliable analysis as developers write their code, identifying potential security vulnerabilities and reliability issues before they are submitted to the software build. Additional desktop tools simplify code review, refactoring and architectural analysis. More than 1,100 customers, including the biggest brands in the automotive, consumer electronics, gaming, medical technologies, military and aerospace, mobile device and telecom sectors rely on these tools everyday to make their software more secure and reliable. Creating applications they are proud of. Find out more at IN THE UNITED STATES: 15 New England Executive Park Burlington, MA IN CANADA: 30 Edgewater Street, Suite 114 Ottawa, ON K2L 1V8 t: f: Klocwork Inc. All rights reserved.

Effective Software Verification for Medical Devices

Effective Software Verification for Medical Devices STERLINGTECH AND KLOCWORK WHITE PAPER NOVEMBER 2009 Effective Software Verification for Medical Devices Achieving compliance and meeting productivity goals with static analysis In addition to producing

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

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

ODROID Multithreading in Android

ODROID Multithreading in Android Multithreading in Android 1 Index Android Overview Android Stack Android Development Tools Main Building Blocks(Activity Life Cycle) Threading in Android Multithreading via AsyncTask Class Multithreading

More information

A Short Introduction to Android

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

Issues in Android on Mobile Platform and Their Resolution

Issues in Android on Mobile Platform and Their Resolution Issues in Android on Mobile Platform and Their Resolution 1 Monika A. Ganpate, 2 Dipika R. Shinde 1, 2 Institute of Management and Computer Studies, Thane (West), India, University of Mumbai, India Abstract:

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

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

Threat Modeling for Secure Embedded Software

Threat Modeling for Secure Embedded Software SECURITY INNOVATION & KLOCWORK WHITE PAPER JUNE 2011 Threat Modeling for Secure Embedded Software As embedded software becomes more ubiquitous and connected powering everything from home appliances and

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

TOP 3 STRATEGIES TO REDUCE RISK IN AUTOMOTIVE/IN-VEHICLE SOFTWARE DEVELOPMENT

TOP 3 STRATEGIES TO REDUCE RISK IN AUTOMOTIVE/IN-VEHICLE SOFTWARE DEVELOPMENT TOP 3 STRATEGIES TO REDUCE RISK IN AUTOMOTIVE/IN-VEHICLE SOFTWARE DEVELOPMENT Go beyond error detection to ensure safety and security TABLE OF CONTENTS The Three Biggest Challenges...4 Ensure compliance

More information

Creating and Using Databases for Android Applications

Creating and Using Databases for Android Applications Creating and Using Databases for Android Applications Sunguk Lee * 1 Research Institute of Industrial Science and Technology Pohang, Korea sunguk@rist.re.kr *Correspondent Author: Sunguk Lee* (sunguk@rist.re.kr)

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

GETTING STARTED WITH ANDROID DEVELOPMENT FOR EMBEDDED SYSTEMS

GETTING STARTED WITH ANDROID DEVELOPMENT FOR EMBEDDED SYSTEMS Embedded Systems White Paper GETTING STARTED WITH ANDROID DEVELOPMENT FOR EMBEDDED SYSTEMS September 2009 ABSTRACT Android is an open source platform built by Google that includes an operating system,

More information

Workshop on Android and Applications Development

Workshop on Android and Applications Development Workshop on Android and Applications Development Duration: 2 Days (8 hrs/day) Introduction: With over one billion devices activated, Android is an exciting space to make apps to help you communicate, organize,

More information

The power of root on Android emulators

The power of root on Android emulators The power of root on Android emulators Command line tooling for Android Development Gabe Martin LinuxFest Northwest 2013 10:00 AM to 10:50 AM, CC 239 Welcome Describe alternative title Questions can be

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

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

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

An Introduction to Android

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

A B S T R A C T. Keywords: Mobile computing, Compiler, Android Development tool kit; I. INTRODUCTION

A B S T R A C T. Keywords: Mobile computing, Compiler, Android Development tool kit; I. INTRODUCTION Remote Access Android Phones Through Simple Mobile. 1M.S.Badgujar, 2N.D.Tribhuvan, 3S.U.Rahane,4Prof.C.S.Aryan Department of Computer Engg, Jaihind College Of Engg, Kuran Savitribai Phule Pune University,

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

Overview of CS 282 & Android

Overview of CS 282 & Android Overview of CS 282 & Android Douglas C. Schmidt d.schmidt@vanderbilt.edu www.dre.vanderbilt.edu/~schmidt Institute for Software Integrated Systems Vanderbilt University Nashville, Tennessee, USA CS 282

More information

Bridging the Gap between Mobile Product Development and Customer Experience: Seven Imperatives for IT Organizations

Bridging the Gap between Mobile Product Development and Customer Experience: Seven Imperatives for IT Organizations Bridging the Gap between Mobile Product Development and Customer Experience: Seven Imperatives for IT Organizations Published: 10 November 2014 Author: Bob Egan, Chief Analyst Organizations must bridge

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

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

Creating a 2D Game Engine for Android OS. Introduction

Creating a 2D Game Engine for Android OS. Introduction Creating a 2D Game Engine for Android OS Introduction This tutorial will lead you through the foundations of creating a 2D animated game for the Android Operating System. The goal here is not to create

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

Технологии Java. Android: Введение. Кузнецов Андрей Николаевич. Санкт-Петербургский Государственный Политехнический Университет

Технологии Java. Android: Введение. Кузнецов Андрей Николаевич. Санкт-Петербургский Государственный Политехнический Университет Технологии Java Android: Введение Санкт-Петербургский Государственный Политехнический Университет Кузнецов Андрей Николаевич 1 2 Архитектура ОС Android See http://www.android-app-market.com/android-architecture.html

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

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

Data on Kernel Failures and Security Incidents

Data on Kernel Failures and Security Incidents Data on Kernel Failures and Security Incidents Ravishankar K. Iyer (W. Gu, Z. Kalbarczyk, G. Lyle, A. Sharma, L. Wang ) Center for Reliable and High-Performance Computing Coordinated Science Laboratory

More information

VDI, THE NEXT GENERATION OR THE FINAL FRONTIER?

VDI, THE NEXT GENERATION OR THE FINAL FRONTIER? VDI, THE NEXT GENERATION OR THE FINAL FRONTIER? After sitting through a virtualization sales pitch focused around Virtual Desktop Infrastructures (VDI) this afternoon I had several thoughts on the topic

More information

Pattern Insight Clone Detection

Pattern Insight Clone Detection Pattern Insight Clone Detection TM The fastest, most effective way to discover all similar code segments What is Clone Detection? Pattern Insight Clone Detection is a powerful pattern discovery technology

More information

How to Avoid the 10 BIGGEST MISTAKES. in Voice Application Development

How to Avoid the 10 BIGGEST MISTAKES. in Voice Application Development How to Avoid the 10 BIGGEST MISTAKES in Voice Application Development Are you building the next generation mobile app that provides users anytime, anywhere voice and messaging communication? Maybe you

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

Android Architecture. Alexandra Harrison & Jake Saxton

Android Architecture. Alexandra Harrison & Jake Saxton Android Architecture Alexandra Harrison & Jake Saxton Overview History of Android Architecture Five Layers Linux Kernel Android Runtime Libraries Application Framework Applications Summary History 2003

More information

CS 528 Mobile and Ubiquitous Computing Lecture 2: Android Introduction and Setup. Emmanuel Agu

CS 528 Mobile and Ubiquitous Computing Lecture 2: Android Introduction and Setup. Emmanuel Agu CS 528 Mobile and Ubiquitous Computing Lecture 2: Android Introduction and Setup Emmanuel Agu What is Android? Android is world s leading mobile operating system Google: Owns Android, maintains it, extends

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

Windows Server 2003 migration: Your three-phase action plan to reach the finish line

Windows Server 2003 migration: Your three-phase action plan to reach the finish line WHITE PAPER Windows Server 2003 migration: Your three-phase action plan to reach the finish line Table of contents Executive summary...2 Windows Server 2003 and the big migration question...3 If only migration

More information

TUTORIALS AND QUIZ ANDROID APPLICATION SANDEEP REDDY PAKKER. B. Tech in Aurora's Engineering College, 2013 A REPORT

TUTORIALS AND QUIZ ANDROID APPLICATION SANDEEP REDDY PAKKER. B. Tech in Aurora's Engineering College, 2013 A REPORT TUTORIALS AND QUIZ ANDROID APPLICATION by SANDEEP REDDY PAKKER B. Tech in Aurora's Engineering College, 2013 A REPORT submitted in partial fulfillment of the requirements for the degree MASTER OF SCIENCE

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

The Design of the Inferno Virtual Machine. Introduction

The Design of the Inferno Virtual Machine. Introduction The Design of the Inferno Virtual Machine Phil Winterbottom Rob Pike Bell Labs, Lucent Technologies {philw, rob}@plan9.bell-labs.com http://www.lucent.com/inferno Introduction Virtual Machine are topical

More information

Mono for Android Activity Lifecycle Activity Lifecycle Concepts and Overview

Mono for Android Activity Lifecycle Activity Lifecycle Concepts and Overview Mono for Android Lifecycle Lifecycle Concepts and Overview Xamarin Inc. BRIEF Overview Activities are a fundamental building block of Android Applications and they can exist in a number of different states.

More information

Coverity White Paper. Reduce Your Costs: Eliminate Critical Security Vulnerabilities with Development Testing

Coverity White Paper. Reduce Your Costs: Eliminate Critical Security Vulnerabilities with Development Testing Reduce Your Costs: Eliminate Critical Security Vulnerabilities with Development Testing The Stakes Are Rising Security breaches in software and mobile devices are making headline news and costing companies

More information

Solution Provider Lights Up Its Industrial Automation Software on Windows 7

Solution Provider Lights Up Its Industrial Automation Software on Windows 7 Windows 7 Customer Solution Case Study Solution Provider Lights Up Its Industrial Automation Software on Windows 7 Overview Country or Region: United States Industry: Manufacturing High tech Customer Profile

More information

The 2014 Bottleneck Report on Enterprise Mobile

The 2014 Bottleneck Report on Enterprise Mobile The 2014 Bottleneck Report on Enterprise Mobile What s the big bottleneck for enterprise mobile app development this year, and how do you get past it? 1 / 32 The 2014 Bottleneck Report on Enterprise Mobile

More information

How Technology Executives are Managing the Shift to BYOD

How Technology Executives are Managing the Shift to BYOD A UBM TECHWEB WHITE PAPER SEPTEMBER 2012 How Technology Executives are Managing the Shift to BYOD An analysis of the benefits and hurdles of enabling employees to use their own consumer devices in the

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

ANDROID BASED MOBILE APPLICATION DEVELOPMENT and its SECURITY

ANDROID BASED MOBILE APPLICATION DEVELOPMENT and its SECURITY ANDROID BASED MOBILE APPLICATION DEVELOPMENT and its SECURITY Suhas Holla #1, Mahima M Katti #2 # Department of Information Science & Engg, R V College of Engineering Bangalore, India Abstract In the advancing

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

Building Motion and Noise Detector Networks from Mobile Phones

Building Motion and Noise Detector Networks from Mobile Phones Building Motion and Noise Detector Networks from Mobile Phones Péter Ekler 1111 Budapest, Magyar Tudósok körútja 2. IL208, peter.ekler@aut.bme.hu Hassan Charaf Dr. 1111 Budapest, Magyar Tudósok körútja

More information

Magellan. 5 Simple Steps to Finding the Right Mobile Development. 2013 Magellan Holdings, LLC. http://www.magellanllc.com

Magellan. 5 Simple Steps to Finding the Right Mobile Development. 2013 Magellan Holdings, LLC. http://www.magellanllc.com Magellan 5 Simple Steps to Finding the Right Mobile Development Services for Your Business 1 Introduction -1 million smart phones are sold every year. -There are 1.5 billion people on smart phones worldwide.

More information

Figure 1: Graphical example of a mergesort 1.

Figure 1: Graphical example of a mergesort 1. CSE 30321 Computer Architecture I Fall 2011 Lab 02: Procedure Calls in MIPS Assembly Programming and Performance Total Points: 100 points due to its complexity, this lab will weight more heavily in your

More information

Learning Course Curriculum

Learning Course Curriculum Learning Course Curriculum Security Compass Training Learning Curriculum. Copyright 2012. Security Compass. 1 It has long been discussed that identifying and resolving software vulnerabilities at an early

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

3 Reasons Xamarin is Best for Mobile App Development

3 Reasons Xamarin is Best for Mobile App Development Mobility Series The Quick Guide: 3 Reasons Xamarin is Best for Mobile App Development Sales Solutions 1 800 443 5210 www.aajtech.com So you ve decided to strengthen your organization s mobile strategy

More information

Lua as a business logic language in high load application. Ilya Martynov ilya@iponweb.net CTO at IPONWEB

Lua as a business logic language in high load application. Ilya Martynov ilya@iponweb.net CTO at IPONWEB Lua as a business logic language in high load application Ilya Martynov ilya@iponweb.net CTO at IPONWEB Company background Ad industry Custom development Technical platform with multiple components Custom

More information

Developing And Marketing Mobile Applications. Presented by: Leesha Roberts, Senior Instructor, Center for Education Programmes, UTT

Developing And Marketing Mobile Applications. Presented by: Leesha Roberts, Senior Instructor, Center for Education Programmes, UTT Developing And Marketing Mobile Applications Presented by: Leesha Roberts, Senior Instructor, Center for Education Programmes, UTT MOBILE MARKETING What is a Mobile App? A mobile app is a software application

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

Hacking your Droid ADITYA GUPTA

Hacking your Droid ADITYA GUPTA Hacking your Droid ADITYA GUPTA adityagupta1991 [at] gmail [dot] com facebook[dot]com/aditya1391 Twitter : @adi1391 INTRODUCTION After the recent developments in the smart phones, they are no longer used

More information

User Tutorial on Changing Frame Size, Window Size, and Screen Resolution for The Original Version of The Cancer-Rates.Info/NJ Application

User Tutorial on Changing Frame Size, Window Size, and Screen Resolution for The Original Version of The Cancer-Rates.Info/NJ Application User Tutorial on Changing Frame Size, Window Size, and Screen Resolution for The Original Version of The Cancer-Rates.Info/NJ Application Introduction The original version of Cancer-Rates.Info/NJ, like

More information

Development Testing for Agile Environments

Development Testing for Agile Environments Development Testing for Agile Environments November 2011 The Pressure Is On More than ever before, companies are being asked to do things faster. They need to get products to market faster to remain competitive

More information

Understanding barcodes. www.brightpearl.com. White paper

Understanding barcodes. www.brightpearl.com. White paper White paper Understanding barcodes. Barcodes turn manual product look-ups into an automated process that s efficient and virtually errorfree. In this white paper, you ll learn what they are, when to use

More information

Who, What, Where, How: Five Big Questions in Mobile Security

Who, What, Where, How: Five Big Questions in Mobile Security Who, What, Where, How: Five Big Questions in Mobile Security Jacob West CTO, Fortify Products HP Enterprise Security Session ID: ASEC-R31 Session Classification: Intermediate Why is mobile security an

More information

Thirsting for ideas to help your restaurant grow?

Thirsting for ideas to help your restaurant grow? Thirsting for ideas to help your restaurant grow? Heartland provides a number of refreshing solutions HOSPITALITY SOLUTIONS Table of Contents Overview Payment Processing Ovation Payroll Marketing Solutions

More information

Here to take you beyond Mobile Application development using Android Course details

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

Disclaimer: The contents in this document are only my personal opinions, do not reflect the opinions of my employer or anyone else.

Disclaimer: The contents in this document are only my personal opinions, do not reflect the opinions of my employer or anyone else. Disclaimer: The contents in this document are only my personal opinions, do not reflect the opinions of my employer or anyone else. Android overview From a system design perspective Xiao-Feng Li xiaofeng.li@gmail.com

More information

STORM. Simulation TOol for Real-time Multiprocessor scheduling. Designer Guide V3.3.1 September 2009

STORM. Simulation TOol for Real-time Multiprocessor scheduling. Designer Guide V3.3.1 September 2009 STORM Simulation TOol for Real-time Multiprocessor scheduling Designer Guide V3.3.1 September 2009 Richard Urunuela, Anne-Marie Déplanche, Yvon Trinquet This work is part of the project PHERMA supported

More information

A Modular Approach to Teaching Mobile APPS Development

A Modular Approach to Teaching Mobile APPS Development 2014 Hawaii University International Conferences Science, Technology, Engineering, Math & Education June 16, 17, & 18 2014 Ala Moana Hotel, Honolulu, Hawaii A Modular Approach to Teaching Mobile APPS Development

More information

Dr. Dimitar Valtchev. 24 June 2010, Stuttgart, Eclipse Embedded Day

Dr. Dimitar Valtchev. 24 June 2010, Stuttgart, Eclipse Embedded Day Dr. Dimitar Valtchev 24 June 2010, Stuttgart, Eclipse Embedded Day ProSyst is a leading company for end-to-end embedded software and OSGi solutions Founded 1997 in Cologne, Germany OSGi member since its

More information

Azul's Zulu JVM could prove an awkward challenge to Oracle's Java ambitions

Azul's Zulu JVM could prove an awkward challenge to Oracle's Java ambitions Azul's Zulu JVM could prove an awkward challenge to Oracle's Java ambitions Analyst: John Abbott 26 Feb, 2014 Azul Systems, best known for its Zing scalable Java runtime, has been introducing a new product

More information

Research and Design of Universal and Open Software Development Platform for Digital Home

Research and Design of Universal and Open Software Development Platform for Digital Home Research and Design of Universal and Open Software Development Platform for Digital Home CaiFeng Cao School of Computer Wuyi University, Jiangmen 529020, China cfcao@126.com Abstract. With the development

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

An Evaluation of No-Cost Business Intelligence Tools. Claire Walsh. Contact: claire.walsh@excella.com @datanurturer 703-840-8600

An Evaluation of No-Cost Business Intelligence Tools. Claire Walsh. Contact: claire.walsh@excella.com @datanurturer 703-840-8600 An Evaluation of No-Cost Business Intelligence Tools Contact: Claire Walsh claire.walsh@excella.com @datanurturer 703-840-8600 1 An Evaluation of No-Cost Business Intelligence Tools Business Intelligence

More information

collaboration Keeping people in touch efficiently

collaboration Keeping people in touch efficiently collaboration Keeping people in touch efficiently What is collaboration? At its best, unified communications (UC) is just what it says it enables better interaction between people by integrating what were

More information

How to Program an Android Application to Access and Manage the Wi-Fi Capabilities of a Smartphone

How to Program an Android Application to Access and Manage the Wi-Fi Capabilities of a Smartphone ECE 480 DESIGN TEAM 2 How to Program an Android Application to Access and Manage the Wi-Fi Capabilities of a Smartphone Application Note Matt Gottshall 4/1/2011 This application note is designed to teach

More information

DEVELOPING MOBILE APPLICATIONS USING ANDROID

DEVELOPING MOBILE APPLICATIONS USING ANDROID ISSN 2229-5518 2300 DEVELOPING MOBILE APPLICATIONS USING ANDROID M.VARUN KUMAR, S.THIRUMALINI, S.RAJESH KUMAR, N.VANISRI, PULIDINDI VENUGOPAL School of Information Technology &VITBS VIT University,Vellore-632014

More information

Android Development: Part One

Android Development: Part One Android Development: Part One This workshop will introduce you to the nature of the Android development platform. We begin with an overview of the platform s development history and some discussion of

More information

BYOD Policy Implementation Guide. February 2016 March 2016

BYOD Policy Implementation Guide. February 2016 March 2016 BYOD Policy Implementation Guide February 2016 March 2016 Table of Contents Step One: Evaluate Devices... 3 Step Two: Refine Network Accessibility... 4 Step Three: Determine Appropriate Management Policies...

More information

The modern marketer s guide to global content creation

The modern marketer s guide to global content creation The modern marketer s guide to global content creation The Modern Marketer s Guide to Global Content Creation As a modern marketer, you re already taking advantage of customer relationship management (CRM)

More information

Stack Allocation. Run-Time Data Structures. Static Structures

Stack Allocation. Run-Time Data Structures. Static Structures Run-Time Data Structures Stack Allocation Static Structures For static structures, a fixed address is used throughout execution. This is the oldest and simplest memory organization. In current compilers,

More information

E-Commerce on Android OS

E-Commerce on Android OS Degree project E-Commerce on Android OS Author: Mohammd Hossein Malekzadeh Dirin & Nima Mohammad Hassan Zadeh Khiabani Date: 2011-09-16 Subject: Computer Sience Level: Master Course code: 5DV00E Abstract

More information

C a p a b i l i t i e s

C a p a b i l i t i e s S o u t h p o r t s B u s i n e s s I n t e l l i g e n c e C a p a b i l i t i e s At Southport, we help our clients easily transform data into intuitive dashboards and reports for greater analytical

More information

Business Protection. Personal Privacy. One Device. Enhanced Security for Your Network and Business Intelligence.

Business Protection. Personal Privacy. One Device. Enhanced Security for Your Network and Business Intelligence. Business Protection. Personal Privacy. One Device. Enhanced Security for Your Network and Business Intelligence. Work Hard. Rest Easy. Today, employees are always on, which for you means always vulnerable.

More information

OPC UA App development for Android

OPC UA App development for Android OPC UA App development for Android Ismo Leszczynski Master s Thesis presentation 13.11.2015 Contents 1. Introduction 2. Targets 3. OPC Unified Architecture 4. Android Operating System 5. App development

More information

high-performance computing so you can move your enterprise forward

high-performance computing so you can move your enterprise forward Whether targeted to HPC or embedded applications, Pico Computing s modular and highly-scalable architecture, based on Field Programmable Gate Array (FPGA) technologies, brings orders-of-magnitude performance

More information

An Introduction to Android. Huang Xuguang Database Lab. Inha University 2009.11.2 Email: xuguanghuang@yahoo.cn

An Introduction to Android. Huang Xuguang Database Lab. Inha University 2009.11.2 Email: xuguanghuang@yahoo.cn An Introduction to Android Huang Xuguang Database Lab. Inha University 2009.11.2 Email: xuguanghuang@yahoo.cn Outline Background What is Android? Development for Android Background Internet users and Mobile

More information

Communications Cloud Product Enhancements February 2016

Communications Cloud Product Enhancements February 2016 Communications Cloud Product Enhancements February 2016 Table of Contents Pages GoToMeeting... 3-26 GoToTraining...47-60 Communications Cloud Product Enhancements February 2016 GoToMeeting (Return to Table

More information

The State of IT Transformation An Analysis by EMC and VMware

The State of IT Transformation An Analysis by EMC and VMware The State of IT Transformation An Analysis by EMC and VMware EMC and VMware are helping IT organizations transform to business-focused service providers. The State of IT Transformation is an analysis of

More information

RoverPal - A Mobile Payment Application

RoverPal - A Mobile Payment Application White Paper RoverPal - A Mobile Payment Application Introduction Online shopping has been a favorable experience with most of us. Still, we come across instances where we are out on shopping and we run

More information

OSAS version 8 A foundation for the future

OSAS version 8 A foundation for the future OSAS version 8 A foundation for the future The features, applications, and technology described In this document represent the intended functionality of OSAS version 8.0 as of January, 2013. Features and

More information

Data Management for Portable Media Players

Data Management for Portable Media Players Data Management for Portable Media Players Table of Contents Introduction...2 The New Role of Database...3 Design Considerations...3 Hardware Limitations...3 Value of a Lightweight Relational Database...4

More information

PAYMENTS AND HOSPITALITY. globalpaymentsinc.co.uk

PAYMENTS AND HOSPITALITY. globalpaymentsinc.co.uk PAYMENTS AND HOSPITALITY globalpaymentsinc.co.uk Page 2 3 FOREWORD The payments industry is changing like never before. A number of mega trends are combining to create a perfect storm which, as a consequence,

More information

Introduction to Android. CSG250 Wireless Networks Fall, 2008

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

A Guide To Evaluating Desktop Virtualization Solutions

A Guide To Evaluating Desktop Virtualization Solutions A Guide To Evaluating Desktop Virtualization Solutions T A K E A W A Y G U I D E Table of e s What To Look For In Evaluating Desktop Virtualization... 3 Achieving the Optimal Benefits of Desktop Virtualization...

More information

μsoho PBX for small business or home

μsoho PBX for small business or home μsoho PBX for small business or home Converged Communications for Business A green solution www.nexmatrix.com Why a μsoho PBX for you? The smallest PBX for Home and Small Offices with 10 or less people,

More information

Mobile Phones Operating Systems

Mobile Phones Operating Systems Mobile Phones Operating Systems José Costa Software for Embedded Systems Departamento de Engenharia Informática (DEI) Instituto Superior Técnico 2015-05-28 José Costa (DEI/IST) Mobile Phones Operating

More information

Car Cybersecurity: What do the automakers really think? 2015 Survey of Automakers and Suppliers Conducted by Ponemon Institute

Car Cybersecurity: What do the automakers really think? 2015 Survey of Automakers and Suppliers Conducted by Ponemon Institute Car Cybersecurity: What do the automakers really think? 2015 Survey of Automakers and Suppliers Conducted by Ponemon Institute 1 Executive Summary The Ponemon Institute recently conducted a cybersecurity

More information