This document is downloaded from DR-NTU, Nanyang Technological University Library, Singapore.

Size: px
Start display at page:

Download "This document is downloaded from DR-NTU, Nanyang Technological University Library, Singapore."

Transcription

1 This document is downloaded from DR-NTU, Nanyang Technological University Library, Singapore. Title Web access to cloud system Author(s) Tao, Qingyi Citation Tao, Q. (2014). Web access to cloud system. Student research paper, Nanyang Technological University. Date 2014 URL Rights 2014 The Author(s).

2 Web Access to Cloud System Tao Qingyi School of Computer Engineering Abstract - This URECA project Web Access to Cloud System is an attempt to enable the Hadoop file system accessible from mobile platforms. Particularly, the project is conducted based on the Android platform. Given the existing campus network and the established Hadoop servers, the major objective is to develop a mobile application to access the Hadoop File System (HDFS) implemented on the Hadoop servers from an Android device. The application is supposed to support basic functions of file management, including view, selection, upload, download, deletion of the files. The following tasks are achieved: the Google Android development tools are installed; the prototype of the user interface is designed and implemented; the file list from the cloud is shown with file information; single files could be deleted. This is the first attempt of accessing to the HDFS on mobile platform and a few limitations are discovered for further researches. Keywords Hadoop, Android, HDFS 1 INTRODUCTION The Hadoop Distributed File System (HDFS) allows users to access to the cloud for file storage and retrieving. However, to access to HDFS, the user is required to perform Unix commands or use the browser to view the file list. Moreover, as the only existing graphical user interface, the web interface only support list operation. It is inconvenient for users to manage the files on the cloud. Therefore, the objective of this project is to develop a mobile tool to access the HDFS from an Android device. Android application is mainly implemented with Java programming language. This report will provide the details of the project including the software setup, prototyping, and application implementation. Although the final outcome is not a fully functioning Android application, this report will help the future discovery on this topic as it provides the basic knowledge of Android programming for network connection purpose. 2 PRE-IMPLEMENTATION 2.1 ENVIRONMENT SETUP PC Setup Google Android is an open source platform mainly resides on mobile devices such as Android smart phones or tablets. Java is the recommended Assoc Prof Cai Jianfei Mr Lu Haifeng School of Computer Engineering programming language. To start the project, the following software needs to be installed on the PC. Install Java Development Kit (JDK) to enable Java runtime environment and compiler Install Eclipse for Java programming Install the running envirment for Android development: Android SKD or ADT with Eclipse Mobile Device Setup Although the Android develop tool provides the Android emulator from the PC to emulate the Android device, it could be more convenient and efficient to have an real Android mobile device for testing purpose. For this report, an HTC One with Android version 4.3 is used to run the application. The Android version is since with Android version lower than 4.1, the device will not support some necessary libraries used in this project Hadoop File System The Linux server has been setup for Hadoop services. The Hadoop service is available and functioning across the campus network NTUWL. The client device needs to access to the server IP address. For this project, the server side is the Hadoop server set up in the campus ROSE data center with IP address BASIC KNOWLEDGE OF ANDROID DEVELOPMENT As the beginner of Android programming, it is fundamental to know the basic structure of the application in terms of its programming components. The two key components of an Android application are 1) Activity (Java Class) and 2) View (xml layout). Android programming is based on Java programming language which is objective oriented. In particular, the Activity class is necessary for window creation. The activity is the foreground mode of an application. There are also background services that could run without the window changes. When the whole window is replaced by another activity, the current activity will be stopped or even killed. View is the displayable UI of the application. It is realized by xml layout configuration. In the activity class, the event can look up the corresponding view component by functions such as findviewbyid() could be used to update the activity actions in the View. In each view, a event listener could be registered and when 1

3 the user touches the view component, the event can be triggered by View.OnClickListener. 2.3 REQUIREMENT ELICITATION AND PROTOTYPING The main task of this project is to refine the GUI to access to the Hadoop File System on mobile device. Therefore, the application needs to have a clear and concise GUI to present the items in the file system, i.e. the directories and files with details such as the file name, size, and the last modification time. It should also have the menu for action selection. The actions for touch screen such as short click and long click effects can be utilized to reflect the advantage of using touch screen devices. To make the task clearer, the low fidelity mock-up of the UI is shown as below Start Page This is a relative layout with simple image view and a start button. The reason to have this page is to allow further improvement when the system needs log in control. The text areas could be easily added to retrieve the username and IP address File List View The file list view is the page where all files under the current directory are listed with file details. Each item in the list view carries the file name, file size, last modification time and the file icon (directory or file). The text view and the image view is identified by id as shown below. <TextView android:text="@+id/textviewname" android:id="@+id/textviewname" android:layout_width="wrap_content" android:layout_height="wrap_content" android:singleline="true" android:textstyle="bold" android:layout_torightof="@+id/fd_icon1" android:layout_margintop="5dip" android:layout_marginleft="5dip"> </TextView> Action Bar The action bar is the menu at the top area with the action icons home, go back, upload and create directory. The action bar can be created by adding Menu Element to the xml file in the res menu folder. In this application, the following three elements are added: Figure 1Application Low-Fi Mock Up The UI can be divided in to three parts: the top menu of actions, the main content of the file list and popup dialogs when any action is triggered. 3 IMPLEMENTATION 3.1 GUI IMPLEMENTATION The first step to build up this application is to draw the GUI by creating new xml file under res layout folder. There are several different layout for this application: a start page, a file view page, the top menu view, and some popup windows. Each view is an xml file in the res folder. Figure 2 Menu Element Capture Popup Dialogs When the user clicks the icons in the action bar or triggers special events, the prompts or confirmation dialogs will be triggered. In this application, the following dialogs are implemented: 1) The confirmation dialog for uploading files 2) The confirmation dialog for deleting files 3) The text dialog to enter directory name for directory creation 2

4 Similar as the main layout, the dialogs are consist of the text view, buttons and image view if needed. The figures below are some captures of the GUI. Figure 5 Upload Confirmation Figure 3 Start Page Figure 4 File List View 3.2 KEY ENTITIES Figure 6 Action Prompt Hadoop File Enity public class HDFile HDFile is designed to hold the information of the files in Hadoop file system at the server side. It has two main attributes: name and absolute path. The attributes identify a file in HDFS. Apart from the getters of the attributes, getparentname () and getparentpath() are 3

5 implemented since they are useful to go back to upper directory Displayable Item Entity public class Item implements Comparable<Item> This class is used for the file list items in the view. It holds the item s name, data, date, image, i.e. anything will be presented in the list view Array Adapter public class FileArrayAdapter extends ArrayAdapter<Item> The array adapter can accept the list data structure, and then construct the list view for display purpose. 3.3 MAIN ACTIVITIES The first activity is the file explorer activity: public class FileexplorerActivity extends Activity. This content of this main activity is set as the start page (Home). When the start button is pressed, the new intent is created. Intent is used when application switches from one activity to another. Intent intent1 = new Intent(this, FileChooser.class); The next activity is: public class FileChooser extends ListActivity. The is the key activity of this program. This file chooser activity extends list activity and it displays the file list of the Hadoop server. All server connection actions are implemented in the file chooser class to retrieve the server output and extract the details. 3.4 SERVER CONNECTION With the GUI and the main activities created, the most essential task is to connect to the Hadoop server. The below permission should be added in AndroidManifest.xml file to allow network access. <uses-permission android:name="android.permission.access_netwo RK_STATE" /> The server connection functionality uses WebHDFS REST API [1] of Hadoop file system. From Android side, the methods provided Client library can access to the url with various methods such as get, put and delete. Function List Files Make Director y Delete Open Table 1 Request Type Operation GET PUT DELETE GET URL " RT>/webhdfs/v1/<PA TH>?op=LISTSTAT US" " RT>/<PATH>?op=M KDIRS[&permission =<OCTAL>]" " webhdfs/v1/<path>?o p=delete [&recursive=<true fal se>]" " RT>/webhdfs/v1/<PA TH>?op=OPEN[&off set=<long>][&leng th=<long>][&buffe rsize=<int>]" Client Reuqest Type HttpGet HttpPut HttpDelete HttpGet Since the server connection needs to do in the background without changing the current window display in the application, these tasks are defined as AsyncTask. For example, the list file task uses private class HttpGetTask extends AsyncTask<Void, Void, Void> in which http get method will do in background. The source code section is provided below. protected Void doinbackground(void... params) { if (!iscancelled()){ HttpClient httpclient = new DefaultHttpClient(); // Prepare a request object HttpGet httpget = new HttpGet(url); // Execute the request HttpResponse response; try { response = httpclient.execute(httpget); HttpEntity entity = response.getentity(); if (entity!= null) { InputStream instream = entity.getcontent(); jsonstr= StreamConverter.convertStreamToString(instream); instream.close(); try { jsonresponse = new JSONObject(jsonStr); catch (JSONException e) { 4

6 e.printstacktrace(); Similarly, for PUT and DELETE operations, separate AsyncTask classes are created and responses could be retrived. By giving correct url, the http response could be retrieved. After the stream is converted, the response from the server could be reprensented in JSON format. Figure 7 File Statuses JSON Reponse 3.5 INFORMATION EXTRACTION FOR FILE LIST STATUS In Java, there is a data type called JSONArray. The JSON string could be converted into an array of JSON object. filestatusesresponse = new JSONObject (jsonresponse.getstring("filestatuses")); filestatusarray = new JSONArray (filestatusesresponse.getstring("filestatus")); The JSONArray needs to be converted into a list of items for display, so the JSON object also needs to be parsed. The item name is defined by the value of pathsuffix. The item type is determined by the value of type which could be a directory or a file. The 13-bit modification time is represented in format of UNIX machine time stamp. Therefore it should be parsed into simple date format. Finally the item list will be sorted by name and the directories will be shown on the top followed by the files. public List<Item> getfilelistitem (JSONArray filestatusarray){ int lengthjsonarr = filestatusarray.length(); List<Item>dir = new ArrayList<Item>(); List<Item>fls = new ArrayList<Item>(); try{ int i = 0; for (i=0;i<lengthjsonarr; i++) { JSONObject filestatus = filestatusarray.getjsonobject(i); String filename = filestatus.getstring("pathsuffix"); String timestampstr = filestatus.getstring("modificationtime"); long timestamp = Long.parseLong(timeStampStr); java.util.date time=new java.util.date((long)timestamp); SimpleDateFormat df = new SimpleDateFormat("dd-MM-yyyy HH:mm:ss"); String formatedtime = df.format(time); String size =filestatus.getstring ("blocksize"); boolean isdirectory = filestatus.getstring("type").equals("directory"); String absolutepath = currentdir.getabsolutepath() + "/"+filename; if(isdirectory){ dir.add(new Item(fileName,"Directory",formatedTime,absolutePath,"directory_ico n")); else{ fls.add(new Item(fileName,size+ " Byte", formatedtime, absolutepath,"file_icon")); catch(exception e){ e.printstacktrace(); Collections.sort(dir); Collections.sort(fls); dir.addall(fls); return dir; 4 LIMITATION AND FUTURE RESEARCH TASKS The implemented application is able to perform the GET, PUT and DELETE request. However, the open and upload functions are not fully implemented at the back end. Due to the setup at the server side, the request with operation = open will be performed with two steps. Firstly, a GET request is submitted with automatically following redirects. Then the request is redirected to a datanode where the file data can be read. Finally The client follows the redirect to the datanode and receives the file data. The datanode address is in a server local format: Location: RS4:50075/webhdfs/v1/user/flyingkid/setup.txt?op=OP EN&user.name=flyingkid&offset=0 5

7 Therefore the host name CeMNet-RS4 is not recognizable by the android device. After research, it is found that the host name should be added in the host file of the android device. The host file is not accessible in a normal condition and the editing action needs the super user permission. Therefore, the Android device needs to be rooted. With many trails, the redirection of http request is not successful and no response could be get from the server side. Therefore the open and download functions are not successful implemented. In the future researches, it is also possible to setup an agent server to coordinate the communication between the Hadoop server and the mobile client. 5 CONCLUSION In this project, an Android application is implemented to access to the Hadoop server with the campus network. The application support the listing, making directories and deleting functions, whereas the open and upload functions are not implemented. With basic knowledge of the Hadoop file system and the Android programming, the functionality is relative simple but the UI is quite clear and neat. However, there are still a couple of unsolved problems including how to get the response after the request is redirected and how to manage the background tasks if multiple background tasks are in execution. This is a very first attempt of implementing Hadoop file system into the mobile platform, more effort should be put into this topic to eliminate the limitations. ACKNOWLEDGMENT I wish to acknowledge the support for this project from Nanyang Technological University under the Undergraduate Research Experience on CAmpus (URECA) programme and the resources provided by the ROSE data centre. REFERENCES [1] Unknown,(2013, Feb13) WebHDFS REST API, Apache Hadoop Project, Retrived from l 6

Mobile Development Lecture 9: Android & RESTFUL Services

Mobile Development Lecture 9: Android & RESTFUL Services Mobile Development Lecture 9: Android & RESTFUL Services Mahmoud El-Gayyar elgayyar@ci.suez.edu.eg Elgayyar.weebly.com What is a RESTFUL Web Service REST stands for REpresentational State Transfer. In

More information

Wireless Vehicle Bus Adapter (WVA) Android Library Tutorial

Wireless Vehicle Bus Adapter (WVA) Android Library Tutorial Wireless Vehicle Bus Adapter (WVA) Android Library Tutorial Revision history 90001431-13 Revision Date Description A October 2014 Original release. B October 2017 Rebranded the document. Edited the document.

More information

MOBILE CLIENT FOR ONLINE DICTIONARY. Constantin Lucian ALDEA 1. Abstract

MOBILE CLIENT FOR ONLINE DICTIONARY. Constantin Lucian ALDEA 1. Abstract Bulletin of the Transilvania University of Braşov Vol 4(53), No. 2-2011 Series III: Mathematics, Informatics, Physics, 123-128 MOBILE CLIENT FOR ONLINE DICTIONARY Constantin Lucian ALDEA 1 Abstract The

More information

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

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

More information

INTRODUCTION TO ANDROID

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

More information

Introduction To Android

Introduction To Android Introduction To Android Mobile Technologies Symbian OS ios BlackBerry OS Windows Android Introduction to Android Android is an operating system for mobile devices such as smart phones and tablet computers.

More information

1. Implementation of Inheritance with objects, methods. 2. Implementing Interface in a simple java class. 3. To create java class with polymorphism

1. Implementation of Inheritance with objects, methods. 2. Implementing Interface in a simple java class. 3. To create java class with polymorphism ANDROID TRAINING COURSE CONTENT SECTION 1 : INTRODUCTION Android What it is? History of Android Importance of Java language for Android Apps Other mobile OS-es Android Versions & different development

More information

Android App Development

Android App Development Android App Development Outline Introduction Android Fundamentals Android Studio Tutorials Introduction What is Android? A software platform and operating system for mobile devices Based on the Linux kernel

More information

Talend Component tgoogledrive

Talend Component tgoogledrive Talend Component tgoogledrive Purpose and procedure This component manages files on a Google Drive. The component provides these capabilities: 1. Providing only the client for other tgoogledrive components

More information

Android Workshop: Model View Controller ( MVC):

Android Workshop: Model View Controller ( MVC): Android Workshop: Android Details: Android is framework that provides java programmers the ability to control different aspects of smart devices. This interaction happens through the Android SDK (Software

More information

A Crash Course to Android Mobile Platform

A Crash Course to Android Mobile Platform Enterprise Application Development using J2EE Shmulik London Lecture #2 A Crash Course to Android Mobile Platform Enterprise Application Development Using J2EE / Shmulik London 2004 Interdisciplinary Center

More information

Groovy. Extending Java with scripting capabilities. Last updated: 10 July 2017

Groovy. Extending Java with scripting capabilities. Last updated: 10 July 2017 Groovy Extending Java with scripting capabilities Last updated: 10 July 2017 Pepgo Limited, 71-75 Shelton Street, Covent Garden, London, WC2H 9JQ, United Kingdom Contents About Groovy... 3 Install Groovy...

More information

Applied Cognitive Computing Fall 2016 Android Application + IBM Bluemix (Cloudant NoSQL DB)

Applied Cognitive Computing Fall 2016 Android Application + IBM Bluemix (Cloudant NoSQL DB) Applied Cognitive Computing Fall 2016 Android Application + IBM Bluemix (Cloudant NoSQL DB) In this exercise, we will create a simple Android application that uses IBM Bluemix Cloudant NoSQL DB. The application

More information

Distributed Systems Project 4 Assigned: Friday March 20 Due: Friday April 3, 11:59pm

Distributed Systems Project 4 Assigned: Friday March 20 Due: Friday April 3, 11:59pm 95-702 Distributed Systems Project 4 Assigned: Friday March 20 Due: Friday April 3, 11:59pm Project Topics: Java RMI and a distributed, Mobile to Cloud application This project has 2 tasks. Task 1 is a

More information

ANDROID BASED WS SECURITY AND MVC BASED UI REPRESENTATION OF DATA

ANDROID BASED WS SECURITY AND MVC BASED UI REPRESENTATION OF DATA ANDROID BASED WS SECURITY AND MVC BASED UI REPRESENTATION OF DATA Jitendra Ingale, Parikshit mahalle SKNCOE pune,maharashtra,india Email: jits.ingale@gmail.com ABSTRACT: Google s Android is open source;

More information

Lab 3. Accessing GSM Functions on an Android Smartphone

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

More information

Android Programming (5 Days)

Android Programming (5 Days) www.peaklearningllc.com Android Programming (5 Days) Course Description Android is an open source platform for mobile computing. Applications are developed using familiar Java and Eclipse tools. This Android

More information

Figure 2.10 demonstrates the creation of a new project named Chapter2 using the wizard.

Figure 2.10 demonstrates the creation of a new project named Chapter2 using the wizard. 44 CHAPTER 2 Android s development environment Figure 2.10 demonstrates the creation of a new project named Chapter2 using the wizard. TIP You ll want the package name of your applications to be unique

More information

Programming Mobile Applications with Android Lab1

Programming Mobile Applications with Android Lab1 Programming Mobile Applications Lab1 22-26 September, Albacete, Spain Jesus Martínez-Gómez Android Lab I.- Create, compile and execute a hello world application Follow the instructions to prepare your

More information

Android App Development

Android App Development Android App Development Course Contents: Android app development Course Benefit: You will learn how to Use Advance Features of Android with LIVE PROJECTS Original Fees: 15000 per student. Corporate Discount

More information

JDirectoryChooser Documentation

JDirectoryChooser Documentation JDirectoryChooser Documentation Page 1 of 7 How to Use JDirectoryChooser The JDirectoryChooser provides user-friendly GUI for manipulating directories from Java application. User can either simply choose

More information

Android Development Crash Course

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

More information

Assignment 1: Port & Starboard

Assignment 1: Port & Starboard Assignment 1: Port & Starboard Revisions: Jan 7: Added note on how to clean project for submission. Submit a ZIP file of all the deliverables to the CourSys: https://courses.cs.sfu.ca/ All submissions

More information

ECOM 5341 Mobile Computing(Android) Eng.Ruba A. Salamah

ECOM 5341 Mobile Computing(Android) Eng.Ruba A. Salamah ECOM 5341 Mobile Computing(Android) 1 Eng.Ruba A. Salamah Lecture # 2 Android Tools Objectives Understand Android Tools Setup Android Development Environment Create HelloWorld Application Understand HelloWorld

More information

ANDROID SYLLABUS. Advanced Android

ANDROID SYLLABUS. Advanced Android Advanced Android 1) Introduction To Mobile Apps I. Why we Need Mobile Apps II. Different Kinds of Mobile Apps III. Briefly about Android 2) Introduction Android I. History Behind Android Development II.

More information

MARS AREA SCHOOL DISTRICT Curriculum TECHNOLOGY EDUCATION

MARS AREA SCHOOL DISTRICT Curriculum TECHNOLOGY EDUCATION Course Title: Java Technologies Grades: 10-12 Prepared by: Rob Case Course Unit: What is Java? Learn about the history of Java. Learn about compilation & Syntax. Discuss the principles of Java. Discuss

More information

Hydrogen Car Mobile Display

Hydrogen Car Mobile Display Hydrogen Car Mobile Display Andrew Schulze Course Instructor: Dr. Guilherme DeSouza, PhD ECE 4220 Project Report Department of Electrical and Computer Engineering University of Missouri Columbia December

More information

Configuring and Using Osmosis Platform

Configuring and Using Osmosis Platform Configuring and Using Osmosis Platform Index 1. Registration 2. Login 3. Device Creation 4. Node Creation 5. Sending Data from REST Client 6. Checking data received 7. Sending Data from Device 8. Define

More information

Answers to Exercises

Answers to Exercises Answers to Exercises CHAPTER 1 ANSWERS 1. What is an AVD? Ans: An AVD is an Android Virtual Device. It represents an Android emulator, which emulates a particular configuration of an actual Android device.

More information

Pace University. Fundamental Concepts of CS121 1

Pace University. Fundamental Concepts of CS121 1 Pace University Fundamental Concepts of CS121 1 Dr. Lixin Tao http://csis.pace.edu/~lixin Computer Science Department Pace University October 12, 2005 This document complements my tutorial Introduction

More information

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

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

More information

Developing Android applications in Windows

Developing Android applications in Windows Developing Android applications in Windows Below you will find information about the components needed for developing Android applications and other (optional) software needed to connect to the institution

More information

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

ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL II) ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL II) Lecture 6: Notification and Web Services Notification A notification is a user interface element that you display outside your app's normal

More information

A web-based IDE for Java

A web-based IDE for Java A web-based IDE for Java Software Engineering Laboratory By: Supervised by: Marcel Bertsch Christian Estler Dr. Martin Nordio Prof. Dr. Bertrand Meyer Student Number: 09-928-896 Content 1 Introduction...3

More information

Communicating with a Server

Communicating with a Server Communicating with a Server Client and Server Most mobile applications are no longer stand-alone Many of them now have a Cloud backend The Cloud Client-server communication Server Backend Database HTTP

More information

Chapter 2 Setting Up for Development

Chapter 2 Setting Up for Development Introduction to Android Application Development, Android Essentials, Fifth Edition Chapter 2 Setting Up for Development Chapter 2 Overview Learn how to set up our Android development environment Look at

More information

SD Module- Android Programming

SD Module- Android Programming Assignment No. 1 SD Module- Android Programming R (2) C (4) V (2) T (2) Total (10) Dated Sign Title: Download Install and Configure Android Studio on Linux /windows platform. Problem Definition: Install

More information

Content. 1. Overview Setup Demonstration Linux Application Project on DE10-Nano Android Application Project...

Content. 1. Overview Setup Demonstration Linux Application Project on DE10-Nano Android Application Project... Content 1. Overview... 1 2. Setup Demonstration... 3 3. Linux Application Project on... 6 4. Android Application Project... 8 5. Appendix... 13 www.terasic.com 1. Overview This documents describe how to

More information

IEMS 5722 Mobile Network Programming and Distributed Server Architecture

IEMS 5722 Mobile Network Programming and Distributed Server Architecture Department of Information Engineering, CUHK MScIE 2 nd Semester, 2016/17 IEMS 5722 Mobile Network Programming and Distributed Server Architecture Lecture 1 Course Introduction Lecturer: Albert C. M. Au

More information

Upon completion of the second part of the lab the students will have:

Upon completion of the second part of the lab the students will have: ETSN05, Fall 2017, Version 2.0 Software Development of Large Systems Lab 2 1. INTRODUCTION The goal of lab 2 is to introduce students to the basics of Android development and help them to create a starting

More information

MC Android Programming

MC Android Programming MC1921 - Android Programming Duration: 5 days Course Price: $3,395 Course Description Android is an open source platform for mobile computing. Applications are developed using familiar Java and Eclipse

More information

Android Volley Tutorial

Android Volley Tutorial Android Volley Tutorial by Kapil - Monday, May 16, 2016 http://www.androidtutorialpoint.com/networking/android-volley-tutorial/ YouTube Video Volley is an HTTP library developed by Google to ease networking

More information

ANDROID DEVELOPMENT. Course Details

ANDROID DEVELOPMENT. Course Details ANDROID DEVELOPMENT Course Details centers@acadgild.com www.acadgild.com 90360 10796 01 Brief About the Course Android s share of the global smartphone is 81%. The Google Certified Android development

More information

Android Application Development Course Code: AND-401 Version 7 Duration: 05 days

Android Application Development Course Code: AND-401 Version 7 Duration: 05 days Let s Reach For Excellence! TAN DUC INFORMATION TECHNOLOGY SCHOOL JSC Address: 103 Pasteur, Dist.1, HCMC Tel: 08 38245819; 38239761 Email: traincert@tdt-tanduc.com Website: www.tdt-tanduc.com; www.tanducits.com

More information

Pro Android 2. Sayed Y. Hashimi Satya Komatineni Dave Mac Lean. Apress

Pro Android 2. Sayed Y. Hashimi Satya Komatineni Dave Mac Lean. Apress Pro Android 2 Sayed Y. Hashimi Satya Komatineni Dave Mac Lean Apress Contents Contents at a Glance Contents About the Authors About the Technical Reviewer Acknowledgments Foreword iv v xiii xiv xv xvi

More information

ANDROID APPS (NOW WITH JELLY BEANS!) Jordan Jozwiak November 11, 2012

ANDROID APPS (NOW WITH JELLY BEANS!) Jordan Jozwiak November 11, 2012 ANDROID APPS (NOW WITH JELLY BEANS!) Jordan Jozwiak November 11, 2012 AGENDA Android v. ios Design Paradigms Setup Application Framework Demo Libraries Distribution ANDROID V. IOS Android $25 one-time

More information

GeneXus for Smart Devices course - Architecture of Smart Device Applications

GeneXus for Smart Devices course - Architecture of Smart Device Applications GeneXus for Smart Devices course - Architecture of Smart Device Applications The problem to solve is the construction of a backend for a real estate office, with a web section and another section for smart

More information

CyberOffice: A Smart Mobile Application for Instant Meetings

CyberOffice: A Smart Mobile Application for Instant Meetings , pp.43-52 http://dx.doi.org/10.14257/ijseia.2014.8.1.04 CyberOffice: A Smart Mobile Application for Instant Meetings Dong Kwan Kim 1 and Jae Yoon Jung 2 1 Department of Computer Engineering, Mokpo National

More information

Programming Concepts and Skills. Creating an Android Project

Programming Concepts and Skills. Creating an Android Project Programming Concepts and Skills Creating an Android Project Getting Started An Android project contains all the files that comprise the source code for your Android app. The Android SDK tools make it easy

More information

Course Syllabus. Course Title. Who should attend? Course Description. Android ( Level 1 )

Course Syllabus. Course Title. Who should attend? Course Description. Android ( Level 1 ) Course Title Android ( Level 1 ) Course Description Android is a Free and open source operating system designed primarily for smart phones and tablets and can be used for TVs, cars and others. It is based

More information

How to implement applications for Smart Devices... using GeneXus.

How to implement applications for Smart Devices... using GeneXus. 1. How to implement applications for Smart Devices... using GeneXus. 2. Let s suppose that we need to develop a simplified application for a real estate agency... 1 This real estate agency works with certain

More information

Android Essentials with Java

Android Essentials with Java Android Essentials with Java Before You Program o Exercise in algorithm generation Getting Started o Using IntelliJ CE Using Variables and Values o Store data in typed variables Static Methods o Write

More information

If you don t have the JDK, you will need to install it. 1. Go to

If you don t have the JDK, you will need to install it. 1. Go to Developing Android applications in Windows Below you will find information about the components needed for developing Android applications and other (optional) software needed to connect to the institution

More information

Coding Menggunakan software Eclipse: Mainactivity.java (coding untuk tampilan login): package com.bella.pengontrol_otomatis;

Coding Menggunakan software Eclipse: Mainactivity.java (coding untuk tampilan login): package com.bella.pengontrol_otomatis; Coding Menggunakan software Eclipse: Mainactivity.java (coding untuk tampilan login): package com.bella.pengontrol_otomatis; import android.app.activity; import android.os.bundle; import android.os.countdowntimer;

More information

Tutorial on Basic Android Setup

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

More information

LTBP INDUSTRIAL TRAINING INSTITUTE

LTBP INDUSTRIAL TRAINING INSTITUTE Java SE Introduction to Java JDK JRE Discussion of Java features and OOPS Concepts Installation of Netbeans IDE Datatypes primitive data types non-primitive data types Variable declaration Operators Control

More information

Project Covered During Training: Real Time Project Training

Project Covered During Training: Real Time Project Training Website: http://www.php2ranjan.com/ Contact person: Ranjan Mobile: 91-9347045052, 09032803895 Email: purusingh2004@gmail.com Skype: purnendu_ranjan Course name: Advance Android App Development Training

More information

Extended Search Administration

Extended Search Administration IBM Lotus Extended Search Extended Search Administration Version 4 Release 0.1 SC27-1404-02 IBM Lotus Extended Search Extended Search Administration Version 4 Release 0.1 SC27-1404-02 Note! Before using

More information

An Approach to VoiceXML Application Modeling

An Approach to VoiceXML Application Modeling An Approach to Application Modeling Xin Ni 1 Meng Ye 2 Lianhong Cai 3 1,3 Tsinghua University, Beijing, China 2 IBM China Research Lab nx01@mails.tsinghua.edu.cn, yemeng@cn.ibm.com, clh-dcs@tsinghua.edu.cn

More information

EMC Documentum Composer

EMC Documentum Composer EMC Documentum Composer Version 6.5 SP2 User Guide P/N 300-009-462 A01 EMC Corporation Corporate Headquarters: Hopkinton, MA 01748-9103 1-508-435-1000 www.emc.com Copyright 2008 2009 EMC Corporation. All

More information

Programming in Android. Nick Bopp

Programming in Android. Nick Bopp Programming in Android Nick Bopp nbopp@usc.edu Types of Classes Activity This is the main Android class that you will be using. These are actively displayed on the screen and allow for user interaction.

More information

AP Computer Science A Summer Assignment

AP Computer Science A Summer Assignment Mr. George AP Computer Science A Summer Assignment Welcome to AP Computer Science A! I am looking forward to our class. Please complete the assignment below. It is due on the first day back to school in

More information

Purpose. Why use Java? Installing the Software. Java

Purpose. Why use Java? Installing the Software. Java Purpose I am providing instructions for those that want to follow along the progress and missteps of Project BrainyCode. Going forward we will just refer to the project a JGG for Java Game Generator (I

More information

Android for Java Developers Dr. Markus Schmall, Jochen Hiller

Android for Java Developers Dr. Markus Schmall, Jochen Hiller Android for Java Developers Dr. Markus Schmall Jochen Hiller 1 Who we are Dr. Markus Schmall m.schmall@telekom.de Deutsche Telekom AG Jochen Hiller j.hiller@telekom.de Deutsche Telekom AG 2 Agenda Introduction

More information

Android" Application Development SAMS. Sams Teach Yourself. Shane Conder. Lauren Darcey. Second Edition

Android Application Development SAMS. Sams Teach Yourself. Shane Conder. Lauren Darcey. Second Edition Lauren Darcey Shane Conder Sams Teach Yourself Android" Application Development Second Edition SAMS 800 East 96th Street, Indianapolis, Indiana, 46240 USA Table of Contents Introduction 1 Who Should Read

More information

Android Help. Section 8. Eric Xiao

Android Help. Section 8. Eric Xiao Android Help Section 8 Eric Xiao The Midterm That happened Any residual questions? New Assignment! Make a low-fi prototype Must be interactive Use balsamiq or paper Test it with users 3 tasks Test task

More information

A Customizable Travel Application- Travel-It

A Customizable Travel Application- Travel-It A Customizable Travel Application- Travel-It GRADUATE PROJECT Submitted to the Faculty of the Department of Computing Sciences Texas A&M University-Corpus Christi Corpus Christi, Texas In Partial Fulfillment

More information

Required Core Java for Android application development

Required Core Java for Android application development Required Core Java for Android application development Introduction to Java Datatypes primitive data types non-primitive data types Variable declaration Operators Control flow statements Arrays and Enhanced

More information

User Interface Design & Development

User Interface Design & Development User Interface Design & Development Lecture Intro to Android João Pedro Sousa SWE 632, Fall 2011 George Mason University features multitasking w/ just-in-time compiler for Dalvik-VM bytecode storage on

More information

CMSC436: Fall 2013 Week 4 Lab

CMSC436: Fall 2013 Week 4 Lab CMSC436: Fall 2013 Week 4 Lab Objectives: Familiarize yourself with Android Permission and with the Fragment class. Create simple applications using different Permissions and Fragments. Once you ve completed

More information

Android Online Training

Android Online Training Android Online Training IQ training facility offers Android Online Training. Our Android trainers come with vast work experience and teaching skills. Our Android training online is regarded as the one

More information

IGEEKS TECHNOLOGIES. Software Training Division. Academic Live Projects For BE,ME,MCA,BCA and PHD Students

IGEEKS TECHNOLOGIES. Software Training Division. Academic Live Projects For BE,ME,MCA,BCA and PHD Students Duration:40hours IGEEKS TECHNOLOGIES Software Training Division Academic Live Projects For BE,ME,MCA,BCA and PHD Students IGeekS Technologies (Make Final Year Project) No: 19, MN Complex, 2nd Cross, Sampige

More information

SAVING SIMPLE APPLICATION DATA

SAVING SIMPLE APPLICATION DATA 1 DATA PERSISTENCE OBJECTIVES In this chapter, you will learn how to persist data in your Android applications. Persisting data is an important topic in application development, as users typically expect

More information

2 Apache Wink Building Blocks

2 Apache Wink Building Blocks 2 Apache Wink Building Blocks Apache Wink Building Block Basics In order to take full advantage of Apache Wink, a basic understanding of the building blocks that comprise it and their functional integration

More information

Course Learning Outcomes (CLO): Student Outcomes (SO):

Course Learning Outcomes (CLO): Student Outcomes (SO): Course Coverage Course Learning Outcomes (CLO): 1. Understand the technical limitations and challenges posed by current mobile devices and wireless communications; be able to evaluate and select appropriate

More information

Page 1 Podcast Workshop Instructions for creating a podcast using Podifier.

Page 1 Podcast Workshop Instructions for creating a podcast using Podifier. Podcast Workshop Instructions for creating a podcast using Podifier. Bg: make mp3, make web page. Plan in ppt. put screen shots in ppt. Step 1. Launch the application Podifier from the Programs menu or

More information

Android App Development. Ahmad Tayeb

Android App Development. Ahmad Tayeb Android App Development Ahmad Tayeb Ahmad Tayeb Lecturer @ Department of Information Technology, Faculty of Computing and Information Technology, KAU Master degree from Information Sciences and Technologies,

More information

ANDROID TRAINING PROGRAM COURSE CONTENT

ANDROID TRAINING PROGRAM COURSE CONTENT ANDROID TRAINING PROGRAM COURSE CONTENT Android Architecture System architecture of Android Activities Android Components Android Manifest Android Development Tools Installation of the Android Development

More information

(C) Global Journal of Engineering Science and Research Management

(C) Global Journal of Engineering Science and Research Management ANDROID BASED SECURED PHOTO IDENTIFICATION SYSTEM USING DIGITAL WATERMARKING Prof.Abhijeet A.Chincholkar *1, Ms.Najuka B.Todekar 2, Ms.Sunita V.Ghai 3 *1 M.E. Digital Electronics, JCOET Yavatmal, India.

More information

Porting mobile web application engine to the Android platform

Porting mobile web application engine to the Android platform 2010 10th IEEE International Conference on Computer and Information Technology (CIT 2010) Porting mobile web application engine to the Android platform Yonghong Wu, Jianchao Luo, Lei Luo School of Computer

More information

Exploring Dynamic Compilation Facility in Java

Exploring Dynamic Compilation Facility in Java Exploring Dynamic Compilation Facility in Java Dingwei He and Kasi Periyasamy Computer Science Department University of Wisconsin-La Crosse La Crosse, WI 54601 kasi@cs.uwlax.edu Abstract Traditional programming

More information

Mobile Application Development L12: Storage & Communication

Mobile Application Development L12: Storage & Communication Mobile Application Development L12: Storage & Communication Jonathan Diehl (Informatik 10) Hendrik Thüs (Informatik 9) Data Storage & Communication Serialization & File Management SQLite Database CoreData

More information

Syllabus- Java + Android. Java Fundamentals

Syllabus- Java + Android. Java Fundamentals Introducing the Java Technology Syllabus- Java + Android Java Fundamentals Key features of the technology and the advantages of using Java Using an Integrated Development Environment (IDE) Introducing

More information

PAPER ON ANDROID ESWAR COLLEGE OF ENGINEERING SUBMITTED BY:

PAPER ON ANDROID ESWAR COLLEGE OF ENGINEERING SUBMITTED BY: PAPER ON ANDROID ESWAR COLLEGE OF ENGINEERING SUBMITTED BY: K.VENU 10JE1A0555 Venu0555@gmail.com B.POTHURAJU 10JE1A0428 eswr10je1a0410@gmail.com ABSTRACT early prototypes, basic building blocks of an android

More information

Intro to Android Development 3. Accessibility Capstone Dec 10, 2010

Intro to Android Development 3. Accessibility Capstone Dec 10, 2010 Intro to Android Development 3 Accessibility Capstone Dec 10, 2010 Using Web Services HTTP Request HTTP Response Using Web Services HTTP Request HTTP Response webserver some program Why use a web service?

More information

Java Training Center - Android Application Development

Java Training Center - Android Application Development Java Training Center - Android Application Development Android Syllabus and Course Content (3 months, 2 hour Daily) Introduction to Android Android and it's feature Android releases and Versions Introduction

More information

Mobile Computing LECTURE # 2

Mobile Computing LECTURE # 2 Mobile Computing LECTURE # 2 The Course Course Code: IT-4545 Course Title: Mobile Computing Instructor: JAWAD AHMAD Email Address: jawadahmad@uoslahore.edu.pk Web Address: http://csandituoslahore.weebly.com/mc.html

More information

BlackBerry Developer Summit. A02: Rapid Development Leveraging BEMS Services and the AppKinetics Framework

BlackBerry Developer Summit. A02: Rapid Development Leveraging BEMS Services and the AppKinetics Framework BlackBerry Developer Summit A02: Rapid Development Leveraging BEMS Services and the AppKinetics Framework Page 2 of 21 Table of Contents 1. Workbook Scope... 4 2. Compatibility... 4 3. Source code download

More information

Introduction to Android Android Smartphone Programming. Outline University of Freiburg. What is Android? Background University of Freiburg.

Introduction to Android Android Smartphone Programming. Outline University of Freiburg. What is Android? Background University of Freiburg. Introduction to Android Android Smartphone Programming Matthias Keil Institute for Computer Science Faculty of Engineering October 19, 2015 Outline 1 What is Android? 2 3 Applications: A Quick Glimpse

More information

Université Antonine - Baabda

Université Antonine - Baabda Université Antonine - Baabda Faculté d ingénieurs en Informatique, Multimédia, Systèmes, Réseaux et Télécommunications Applications mobiles (Pocket PC, etc ) Project: Manipulate School Database Préparé

More information

CS Fundamentals of Programming II Fall Very Basic UNIX

CS Fundamentals of Programming II Fall Very Basic UNIX CS 215 - Fundamentals of Programming II Fall 2012 - Very Basic UNIX This handout very briefly describes how to use Unix and how to use the Linux server and client machines in the CS (Project) Lab (KC-265)

More information

owncloud Android App Manual

owncloud Android App Manual owncloud Android App Manual Release 2.7.0 The owncloud developers October 30, 2018 CONTENTS 1 Release Notes 1 1.1 Changes in 2.7.0............................................. 1 1.2 Changes in 2.6.0.............................................

More information

Oracle Big Data Cloud Service, Oracle Storage Cloud Service, Oracle Database Cloud Service

Oracle Big Data Cloud Service, Oracle Storage Cloud Service, Oracle Database Cloud Service Demo Introduction Keywords: Oracle Big Data Cloud Service, Oracle Storage Cloud Service, Oracle Database Cloud Service Goal of Demo: Oracle Big Data Preparation Cloud Services can ingest data from various

More information

Android Application Development Course 28 Contact Hours

Android Application Development Course 28 Contact Hours Android Application Development Course 28 Contact Hours Course Overview This course that provides the required knowledge and skills to design and build a complete Androidâ application. It delivers an extensive

More information

A Model-Controller Interface for Struts-Based Web Applications

A Model-Controller Interface for Struts-Based Web Applications A Model-Controller Interface for Struts-Based Web Applications A Writing Project Presented to The Faculty of the Department of Computer Science San José State University In Partial Fulfillment of the Requirements

More information

Android Basics Nanodegree Syllabus

Android Basics Nanodegree Syllabus Android Basics Nanodegree Syllabus Before You Start This is an entry-level program. No prior programming experience required. Project 1: Build a Single Screen App Design and implement a single screen app

More information

Understand applications and their components. activity service broadcast receiver content provider intent AndroidManifest.xml

Understand applications and their components. activity service broadcast receiver content provider intent AndroidManifest.xml Understand applications and their components activity service broadcast receiver content provider intent AndroidManifest.xml Android Application Written in Java (it s possible to write native code) Good

More information

ORACLE UNIVERSITY AUTHORISED EDUCATION PARTNER (WDP)

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

More information

BCA 6. Question Bank

BCA 6. Question Bank BCA 6 030010601 : Introduction to Mobile Application Development Question Bank Unit 1: Introduction to Android and Development tools Short questions 1. What kind of tool is used to simulate Android application?

More information