Document Plan. Social Media Geolocation App. Robert McCaffrey, Matt Feld, Taylor Neal, David Kwon BLIPME

Size: px
Start display at page:

Download "Document Plan. Social Media Geolocation App. Robert McCaffrey, Matt Feld, Taylor Neal, David Kwon BLIPME"

Transcription

1 BLIPME Document Plan Social Media Geolocation App Robert McCaffrey, Matt Feld, Taylor Neal, David Kwon Blip is a social app aimed at combining new technology and design in a simple way to make going out more fun for college kids

2 BLIPME INTRODUCTION: PROJECT CONCEPT: Blip is a social networking phone application that focuses on the sharing of geolocation data between peers. Our project will encompass the development of an Android version of the application. Upon opening the application, the user will be prompted to either log-in or register. The user will required to be logged-in with an authorised identity in order to use the application s features. Once logged in, a map of the nearby area will be presented to the user. Overlapping this map will be icons representing people who have chosen to share real-time location data with the user for a specified amount of time. The icons will be placed on the map according to the current location of the corresponding user s phone. At the bottom of the screen is a button that may be employed by the user to likewise post his or her current location for a specified amount of time. The user will choose from a list of the user names of friends with whom he or she would like to share the location information. These friends will be able to see the user s real time location on their map until the specified amount of time concludes, at which time the information will no longer be available until the user decides to share it with these friends again. Upon pressing a virtual button on the top right-hand corner of the screen, the user will be brought to a friends list screen, where the user may peruse his or her list of friends. It is at this screen that the user will be able to add user names to his/her friends list. The user may only share location information with the accounts listed in the user s friends list.

3 BLIPME 1.ARCHITECTURE: 2.DECOMPOSITIONS: MODULES MVC Architecture:

4 WEBMANAGER: The Web Manger communicates with the backed provided by the Client. The Node.Js server communicates via JSON through HTTP POST and GET requests. The Web Manager uses String and JSON parser in order to interpret and create HTTP requests Model: Model layer communicates with our Web Manager. Which defines 1. User: A User defines a friend by Name, , phone, unique id and bliprequested( asked for a blip from you) 2. FriendManager: which retrieves friend list using the WebManager 3. BlipModel: Defines a Blip i.e. Geo-location, Timer, Message, Sender, Recipients etc. 4. BlipManager: Manages incoming and outgoing Blips with WebManager 5. Authenticator: provides user authorisation token after login/registration 6. BlipSampler interacts with authenticator, user, BlipManager and FriendManager VIEW: Layouts define the visual structure of the user interface for our activity s. The system declares UI elements in XML. Android provides a straightforward XML vocabulary which quickly designs UI layouts and screen elements similar to way we create web pages in HTML. LAYOUTS: 1. activity_login.xml 2. activity_main.xml 3. cutom_marker.xml 4. footer_repeat.xml 5. fragment_item_grid.xml 6. fragment_item_list.xml 7. fragment_map.xml 8. friends.xml 9. friends_row.xml 10. friends_section.xml 11. header_gradient.xml

5 12. list_header.xml 13. list_row.xml 14. login.xml 15. register.xml 5-7: Map and Blip fragment view for viewing incoming and sending outgoing blips. 8-10: Friend List view 14-15: Login and register view for user login and new user registration respectively. 1-4, 11-13: Sub xml views for the main views described above. CONTROLLER: FriendList: FriendListActivity o Activity for selecting friends when sending a Blip FriendsListAdapter o Corresponds Friends data to the views BlipFeedAdapter o Adapter for the BlipFeed View BlipFeedFragment o Generates the List MainBlipArray o Class holding our array list of BlipModels that is used throughout the app SmartFragmentStatePagerAdapter o Stores the MapFragment and the BlipFeed Fragment. ViewPagerAdapter o In charge of putting the fragments onto the containers Map:

6 MapFrament o Creates Map with Blip markers, user location communicates with BlipFeed LoginAndRegistrations: LoginActivity o RegistrationActivty o Processes: Multiple Threads: Creates login screen, login user via Authenticator Creates registration screen, registers user via Authenticator Worker Threads. Android is a single thread model, therefore anytime we preform operation that are not instantaneous we must back a separate thread: UI Thread New Blip data is one of these data points. New incoming Blips are handled by creating a UI thread in order to handle adding in a new Blip marker on the map AsyncTask Allows for asynchronous work on our Login and Registration views. It performs blocking operations in a worker thread and then publishes the results on the UI thread. It performs the work in doinbackground() and runs in the UI thread, so we can safely provide helper Dialogs and retrieve user information. Server Communication All server communication is done asynchronous connection by using HTTP requests. Data The Data for this project was provided by the Client. Therefore all backend data was handled by the client. For our project we interpreted and applied this data to the application. This data came in the form of what we have defined as a Blip: Description: A Blip is user and geolocation tag that contains longitude, latitude, user information, and a self destruct timer. Functionality: Users send Blip to each other. The application interrupts the blips sent between friends and produces a map labelled with marker showing a friends location as shown in the screenshot. Relationship: Blips are related to each other only by the user who has sent or received the

7 3.MODULE DESCRIPTION: Name: WebManager Type: Access Form Node: Article Manager Processor Description: The Web Manger communicates with the backed provided by the Client. Attributes: Author Name, Reviewer Name Resources: None Name: newpostrequest() Arguments: String url,string[] names, Object[] values,string auth_token. Returns: HTTPResponse Description: Sends a new POST request., returns HTTP response Exceptions: getstacktrace() if anything goes wrong server side. Flow of Events: 1. Create HTTP client 2. Create HTTP Post 3. Execute HTTP request. Name: newgetrequest() Arguments: String url, String[] names, String[] values, String auth_token. Returns: response, which is a JSON response from the server. Description: Sends a new GET request. Pre-condition: None Post-condition: None Exceptions: RuntimeException(). Flow of Events: 1. Create HTTP client 2. Create HTTP Post 3. Execute HTTP request. Name: getjsonbody() Arguments: (HttpResponse response) Returns: JSON Object Description: Parse HTTP response to JSON object Pre-condition: None

8 Post-condition: None Exceptions: Exception(). Name: getstringbody() Arguments: (HttpResponse response) Returns: String Description: Parse HTTP response to JSON object Pre-condition: None Post-condition: None Exceptions: Exception(). MODEL: Name: User Description: Creates a User (friend) Attributes: String name, String , String phone, String id Resources: None Name: isbliprequested() Arguments: None Returns: Boolean Description: If this user has requested a blip from you Name: User() Arguments: 1. String name, String 2 String name 3 String name,string id,boolean requested 4 String name, double phone

9 Description: Four separate setters. Pre-condition: None Post-condition: None. Name: getname(),get ,getid Arguments: None Returns: name. ,id respectively Description: Three separate getters. Pre-condition: None Post-condition: None. Name: FriendManager Description: retrieves friend list using the WebManager Attributes: Author Name,Reviewer Name Resources:None Name: getfriends() Arguments: None Returns: HTTPResponse Description: Returns an array of Users(friends) Exceptions: Server Response Error. Flow of Events: 1. Create GET request 2. Execute GET request sending to WebManager 3. Interrupt response 4. Create friend list and return. Name: BlipModel Type: - Node: - Description: Defines a Blip i.e. Geo-location, Timer, Message, Sender, Recipients etc Attributes:

10 1. String name 2. String type, String sender, boolean isstory,datetime time,user[] recipients, double latitude, double longitude, String message Resources: None Name: getsender(),getrecipients(),getisgroupheader(),getendtime(),gettype(),isstory(),getlatitude(),getlongitude)_ Arguments: None Returns: sender,recipients,isgroupheader,endtime.getmillis,type,isstory,latitude,longitude,message respectively Description: Getter functions. Name: BlipManager Node: - Description: Manages incoming and outgoing Blips with WebManager Attributes: None Resources: None Name: getincomingblips(),getoutgoingblips(),getallblips(), Arguments: None Returns: BlipModel array Description: Getter functions Exceptions: Server Response Error. Flow of Events: 1. Calls getblips with incoming, outgoing, respectively 2. Returns Response Name: getblips Arguments: String type Returns: BlipModel array Description: Given input type incoming, outgoing or both communicate with return response. WebManager and

11 Exceptions: Server Response Error. Flow of Events: 1. Create Type for HTTP request 2. Communicate with WebManager 3. Create JSON response and parse into a Blip Array Name: AESPassEncryptor Type: AES encryption scheme Node: - Description: Encryption and Decryption of byte, cipher respectively with default key of 32 byte length Attributes: None Resources: AES encryption scheme, Key = "ZhketJNHrmGC5upwYckG4Ky1fhHJyZAD" Name: encrypt() Type: byte Arguments: byte[] ivbytes, byte[] keybytes, byte[] textbytes Returns: cipher Description: Creates Cipher. Name: decrypt() Type: byte Arguments: byte[] ivbytes, byte[] keybytes, byte[] textbytes Returns: byte array Description: Decrypts Cipher.

12 Name: encrypt() Type: String Arguments: String text Returns: String Description: Concatenates String with zeros with 32 Byte length Exceptions: getstacktrace(). Name: decrypt() Type: String Arguments: String Text Returns: byte array Description: Removes concatenation of String with zeros with 32 Byte length back to original form. Exceptions: Exception. CONTROLLER: Name: FriendsListActivity Description: Activity for selecting friends when sending a Blip Attributes: None Resources: HashMap, List Name: oncreateoptionsmenu Type: Boolean Arguments: Menu menu Returns: true Description: Inflates Top Menu Pre-condition: Layout menu_friends_list must be initialised. Exceptions:None Flow of Events: 1. Create Menu Inflate object

13 Name: oncreate Type: void Arguments: Bundle savedinstancestate Description: Setting up scrolled view for friends list Exceptions:None Flow of Events: 1. Create The Gestures 2. Create View Name: ontouchevent Type: boolean Arguments: MotionEvent event Returns: Boolean Description: Event handler for Gesture Detector Exceptions:None Name: updatelist Type: void Arguments: None Description: Updates view to correspond to new data Pre-condition: View must already be create. Exceptions:None Flow of Events: 1. Wipe current data 2. Recreate List with new data 3. Recreates a new view Name: displaylistitem() Type: void Arguments: None

14 Description: helper function to display list to the views Name: populatelist() Type: List<String> Arguments:None Returns: List of Friends Description: Pulls User(friends)data from model Name: getrecent() Type: List<String> Arguments:None Returns: List Friends Description: Pulls recent Blip data from model Name: getrequests() Type: List<String> Arguments:None Returns: List of Blip request Description: Pulls requested Blip data from model Name: SideIndexGestureListener extends GestureDector.SimpleOnGestureListener Arguments: None Returns: BlipModel array Description: Getter functions

15 Exceptions: Server Response Error. Flow of Events: 1. Calls getblips with incoming, outgoing, respectively 2. Returns Response Name: FriendsListAdapater Description: Corresponds Friends data to the views Attributes: None Resources:None Name:getRows(),getCount(),getItem(),getItemId(),getViewTypeCount()getItemViewType() Arguments: None Returns: int Description: Getter functions. Name: getview extends GestureDector.SimpleOnGestureListener Arguments: int position, View convertview, ViewGroup parent Returns: View Description: Returns View of Friend List Activity Name: BlipFeedAdapter Node: - Description: Adapter for the BlipFeed View Attributes: Context context Resources: ArrayList

16 Name: addsentblip Type: Void Arguments: BlipModel Description: Add outgoing blip to the list Name: addincomingblip Type: Void Arguments: BlipModel Description: Add incoming blip to the list Name: addstoryblip Type: Void Arguments: BlipModel Description: Add story blip to the list Name: removesentblips Type: Void Arguments: BlipModel Description: Remove outgoing blip from the list

17 Name: removeincomingblips Type: Void Arguments: BlipModel Description: Remove incoming blip from the list Name: removestoryblips Type: Void Arguments: BlipModel Description: Remove story blip from the list Name: getitemviewtype,getviewtypecount,getcount(),getitem(),getview() Type: - Arguments:None Returns:- Description: Getter Functions Subclasses of BlipFeedAdapter Name: ViewHolder Node: - Description: Container for the view for each row Attributes: None Resources:None None

18 Name: BlipFeedFragment Node: - Description: Generates the List Attributes: int page Resources: Array List Name: OnBlipSelectedListener Type: Interface Description: Allows the fragment to deliver messages from the list to the main activity. Name: oncreateview() Arguments: LayoutInflater inflater,viewgroup container, Bundle savedinstancestate Returns: View Description: This method is called when the view is created and android starts Name: onactivitycreated() Arguments: Bundle savedinstancestate Description: This is what happens when the activity is created Name: onlistitemclick() Type: void Arguments:ListView l, View v, int position, long id Returns: View Description: This is method is called when item on the list is clicked

19 Name: onattach() Type: void Arguments:None Returns: View Description: This makes sure that the container activity has implemented the callback interface Name: cancelsentblips(),removeincomingblips(),removestoryblips() Arguments:None Description:Functions used by getblips to remove all sent Blips Name: getblips() Type: void Arguments:None Description: Connects to the adapter method that removes all Sent Blips To items then adds most update blips Name: MainBlipArray Description: Class holding our array list of BlipModels that is used throughout the app Attributes:None Resources: Array List Name: addblips() Type: void Arguments: BlipModel

20 Description: Add to the array list Name: addblips Type: void Arguments: BlipModel Description: Overloaded method to adapt to BlipManager Name: SmartFragmentStatePagerAdapter Extends:FragmentStatePagerAdapter Description: Stores the MapFragment and the BlipFeed Fragment. Attributes: Fragment Manager Resources: None Name: instantiateitem() Type: Object Arguments: ViewGroup container, int position Returns: Object Type Fragment Description: Registers the fragment when the item is instantiated Name: destroyitem() Type: Void Arguments: ViewGroup container, int position, Object object() Description: Unregister when the item is inactive

21 Name: getregisterfragment() Type: Void Arguments: int position Returns: Fragment Description: Returns the fragment for the position Pre-condition: if instantiated. Name: ViewPagerAdapter Extends:SmartFragmentStatePagerAdapter Node: - Description: In charge of putting the fragments onto the containers Attributes: FragmentManager fm,charsequence mtitles[], int mnumboftabsumb Resources: None Name: getitem() Type: Fragment Arguments:position Returns:Fragment Description: Return the fragment for the every position in the View Pager Name: getpagetitle() Arguments:position Returns: CharSequence Description: Returns the titles for the Tabs in the Tab Strip

22 Name: getcount() Arguments:None Returns: int Description: return the Number of tabs for the tabs Strip LoginAndRegistrations: Name: LoginActivity Node: - Description: AsyncTask used for login of a user Attributes: savedinstancestate Resources: AsyncTask Name: oncreate() Type: void Arguments: Bundle savedinstancestate Description: Sets up login views with event handlers for buttons Name: onclick() Arguments: View Description: Event handler for button clicks Name: AttemptLogin() Extends: AsyncTask Arguments: None

23 Description: Create an asynchronous login for the application. Communicates with the server via the authenticator Pre-condition: Views must be set up. Exceptions: Throws Dialog handler if authenticator throw exception. Name: RegisterActivity Node: - Description: AsyncTask used for registration of a user Attributes: savedinstancestate Resources: AsyncTask Name: oncreate() Type: void Arguments: Bundle savedinstancestate Description: Sets up registration views with event handlers for buttons Name: onclick() Arguments: View Description: Event handler for button clicks Name: AttemptRegister() Extends: AsyncTask Arguments: None Description: Create an asynchronous registration for the application. Communicates with the server via the authenticator. Pre-condition: Views must be set up.

24 Exceptions: Throws Dialog handler if authenticator throw exception. MAP: Name: MapFragment Extends:SmartFragmentStatePagerAdapter Description:? Attributes: int page Resources: Array List, BitMap Name: oncreateview() Arguments: layoutinflater inflater, ViewGroup container, Bundle savedinstancestate Description: Create the Views of the Map Fragment Name: onlocationchanged() Arguments: Location Description: Method callback when the user moves Name: pointcamerato() Arguments: BlipModel Description: Points the map camera to location of the Blip Name: lookatcurrentposition() Arguments: None Description: Look at current position on the map

25 Name: createdrawablefromview() Arguments: Context, View Returns: BitMap Description: Helper function for making custom marker on the map

26 4.DESIGN RATIONALE: DESIGN DECISIONS Decision that effected overall design of System: The client expressed interest from the begin in having the design of the application to be similar to that of Snapchat. They felt that this would provide a smaller learning curve for new users that were already familiar to the popular application Snapchat. This affected our own creative view of the application and restricted us from using design techniques that we were already familiar with. As the client already had an ios version of the project in production most of our design was copied from that. Due to the fact the Client already had a working product ton another platform we were provided with a backend and were not allowed to change any of the existing code which meant we had to conform to the specifications of the backend server.l Dependencies applications has and reasons the for dependencies: Include in our project are external jar that were not in the standard java library: JodaTime : How we managed expiration dates for blips. JUnit : Unit testing. Apache Commons IO: Used to parse input stream into json and strings. TCE security certification for allowing AES keys to be 32 bytes instead of 16 bytes. Android SDK version 21: provides the best compromise adaption due to, 85 percent of android users having support on there phone and providing enough support for implementation of our fragment architecture. Decisions about what was important to do and what was not: As this was a minimal viable project or a start up our emphases was on design and correct functionality. This meant we focused on getting that which was supported on the server working in our application. This meant the product didn't have to be immediately deployed to market and more the foundation for further production. Therefore although functional work cases works really well, however testing of edge cases was not an immediate priority. There were also complications where some methods weren't supported in the server yet meant we weren't apply implement. For next develop: The code has been distributed on Github under a private repository and would be provided on request. The source code along with the Document Plan will serve as a comprehensive design of our implementation. The code will be provided as an android studio application.

27

Fragments and the Maps API

Fragments and the Maps API Fragments and the Maps API Alexander Nelson October 6, 2017 University of Arkansas - Department of Computer Science and Computer Engineering Fragments Fragments Fragment A behavior or a portion of a user

More information

EMBEDDED SYSTEMS PROGRAMMING UI and Android

EMBEDDED SYSTEMS PROGRAMMING UI and Android EMBEDDED SYSTEMS PROGRAMMING 2016-17 UI and Android STANDARD GESTURES (1/2) UI classes inheriting from View allow to set listeners that respond to basic gestures. Listeners are defined by suitable interfaces.

More information

Produced by. Mobile Application Development. David Drohan Department of Computing & Mathematics Waterford Institute of Technology

Produced by. Mobile Application Development. David Drohan Department of Computing & Mathematics Waterford Institute of Technology Mobile Application Development Produced by David Drohan (ddrohan@wit.ie) Department of Computing & Mathematics Waterford Institute of Technology http://www.wit.ie User Interface Design" & Development -

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

ListView Containers. Resources. Creating a ListView

ListView Containers. Resources. Creating a ListView ListView Containers Resources https://developer.android.com/guide/topics/ui/layout/listview.html https://developer.android.com/reference/android/widget/listview.html Creating a ListView A ListView is a

More information

Android Application Model I

Android Application Model I Android Application Model I CSE 5236: Mobile Application Development Instructor: Adam C. Champion, Ph.D. Course Coordinator: Dr. Rajiv Ramnath Reading: Big Nerd Ranch Guide, Chapters 3, 5 (Activities);

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

Android Application Model I. CSE 5236: Mobile Application Development Instructor: Adam C. Champion, Ph.D. Course Coordinator: Dr.

Android Application Model I. CSE 5236: Mobile Application Development Instructor: Adam C. Champion, Ph.D. Course Coordinator: Dr. Android Application Model I CSE 5236: Mobile Application Development Instructor: Adam C. Champion, Ph.D. Course Coordinator: Dr. Rajiv Ramnath 1 Framework Support (e.g. Android) 2 Framework Capabilities

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

UI Fragment.

UI Fragment. UI Fragment 1 Contents Fragments Overviews Lifecycle of Fragments Creating Fragments Fragment Manager and Transactions Adding Fragment to Activity Fragment-to-Fragment Communication Fragment SubClasses

More information

Produced by. Design Patterns. MSc in Computer Science. Eamonn de Leastar

Produced by. Design Patterns. MSc in Computer Science. Eamonn de Leastar Design Patterns MSc in Computer Science Produced by Eamonn de Leastar (edeleastar@wit.ie)! Department of Computing, Maths & Physics Waterford Institute of Technology http://www.wit.ie http://elearning.wit.ie

More information

Mobile Development Lecture 10: Fragments

Mobile Development Lecture 10: Fragments Mobile Development Lecture 10: Fragments Mahmoud El-Gayyar elgayyar@ci.suez.edu.eg Elgayyar.weebly.com Situational Layouts Your app can use different layout in different situations: different device type

More information

getcount getitem getitemid getview com.taxi Class MainActivity drawerlayout drawerleft drawerright...

getcount getitem getitemid getview com.taxi Class MainActivity drawerlayout drawerleft drawerright... Contents com.taxi.ui Class CallDialog... 3 CallDialog... 4 show... 4 build... 5 com.taxi.custom Class CustomActivity... 5 TOUCH... 6 CustomActivity... 6 onoptionsitemselected... 6 onclick... 6 com.taxi.model

More information

Produced by. Design Patterns. MSc in Computer Science. Eamonn de Leastar

Produced by. Design Patterns. MSc in Computer Science. Eamonn de Leastar Design Patterns MSc in Computer Science Produced by Eamonn de Leastar (edeleastar@wit.ie) Department of Computing, Maths & Physics Waterford Institute of Technology http://www.wit.ie http://elearning.wit.ie

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

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

ACTIVITY, FRAGMENT, NAVIGATION. Roberto Beraldi

ACTIVITY, FRAGMENT, NAVIGATION. Roberto Beraldi ACTIVITY, FRAGMENT, NAVIGATION Roberto Beraldi Introduction An application is composed of at least one Activity GUI It is a software component that stays behind a GUI (screen) Activity It runs inside the

More information

Building User Interface for Android Mobile Applications II

Building User Interface for Android Mobile Applications II Building User Interface for Android Mobile Applications II Mobile App Development 1 MVC 2 MVC 1 MVC 2 MVC Android redraw View invalidate Controller tap, key pressed update Model MVC MVC in Android View

More information

CE881: Mobile & Social Application Programming

CE881: Mobile & Social Application Programming CE881: Mobile & Social Application Programming, s, s and s Jialin Liu Senior Research Officer Univerisity of Essex 6 Feb 2017 Recall of lecture 3 and lab 3 :) Please download Kahoot or open a bowser and

More information

CONVERTIGO SDK THE ULTIMATE CLIENT MOBILE API FOR CONVERTIGO MBAAS

CONVERTIGO SDK THE ULTIMATE CLIENT MOBILE API FOR CONVERTIGO MBAAS CONVERTIGO SDK THE ULTIMATE CLIENT MOBILE API FOR CONVERTIGO MBAAS WHY CONVERTIGO SDK? Abstracts Mobile app developer from protocol complexity Gives simple cross-platform API to access Convertigo MBaaS

More information

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

ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL I) ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL I) Lecture 3: Android Life Cycle and Permission Entire Lifetime An activity begins its lifecycle when entering the oncreate() state If not interrupted

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

Fragments were added to the Android API in Honeycomb, API 11. The primary classes related to fragments are: android.app.fragment

Fragments were added to the Android API in Honeycomb, API 11. The primary classes related to fragments are: android.app.fragment FRAGMENTS Fragments An activity is a container for views When you have a larger screen device than a phone like a tablet it can look too simple to use phone interface here. Fragments Mini-activities, each

More information

Creating a Custom ListView

Creating a Custom ListView Creating a Custom ListView References https://developer.android.com/guide/topics/ui/declaring-layout.html#adapterviews Overview The ListView in the previous tutorial creates a TextView object for each

More information

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

ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL I) ANDROID APPS DEVELOPMENT FOR MOBILE AND TABLET DEVICE (LEVEL I) Lecture 3: Android Life Cycle and Permission Android Lifecycle An activity begins its lifecycle when entering the oncreate() state If not

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

CHAPTER 4. Fragments ActionBar Menus

CHAPTER 4. Fragments ActionBar Menus CHAPTER 4 Fragments ActionBar Menus Explore how to build applications that use an ActionBar and Fragments Understand the Fragment lifecycle Learn to configure the ActionBar Implement Fragments with Responsive

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

Frequently Asked Questions

Frequently Asked Questions Frequently Asked Questions This PowerTools FAQ answers many frequently asked questions regarding the functionality of the various parts of the PowerTools suite. The questions are organized in the following

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

Multiple devices. Use wrap_content and match_parent Use RelativeLayout/ConstraintLayout Use configuration qualifiers

Multiple devices. Use wrap_content and match_parent Use RelativeLayout/ConstraintLayout Use configuration qualifiers Multiple devices Multiple devices Use wrap_content and match_parent Use RelativeLayout/ConstraintLayout Use configuration qualifiers Create a new directory in your project's res/ and name it using the

More information

CS371m - Mobile Computing. Persistence - Web Based Storage CHECK OUT g/sync-adapters/index.

CS371m - Mobile Computing. Persistence - Web Based Storage CHECK OUT   g/sync-adapters/index. CS371m - Mobile Computing Persistence - Web Based Storage CHECK OUT https://developer.android.com/trainin g/sync-adapters/index.html The Cloud. 2 Backend No clear definition of backend front end - user

More information

CS 4518 Mobile and Ubiquitous Computing Lecture 5: Rotating Device, Saving Data, Intents and Fragments Emmanuel Agu

CS 4518 Mobile and Ubiquitous Computing Lecture 5: Rotating Device, Saving Data, Intents and Fragments Emmanuel Agu CS 4518 Mobile and Ubiquitous Computing Lecture 5: Rotating Device, Saving Data, Intents and Fragments Emmanuel Agu Administrivia Moved back deadlines for projects 2, 3 and final project See updated schedule

More information

Mobile Computing Fragments

Mobile Computing Fragments Fragments APM@FEUP 1 Fragments (1) Activities are used to define a full screen interface and its functionality That s right for small screen devices (smartphones) In bigger devices we can have more interface

More information

Developing Android Applications Introduction to Software Engineering Fall Updated 1st November 2015

Developing Android Applications Introduction to Software Engineering Fall Updated 1st November 2015 Developing Android Applications Introduction to Software Engineering Fall 2015 Updated 1st November 2015 Android Lab 3 & Midterm Additional Concepts No Class Assignment 2 Class Plan Android : Additional

More information

Android Basics Nanodegree Syllabus

Android Basics Nanodegree Syllabus Android Basics Nanodegree Syllabus Before You Start This is an entry-level, single term Nanodegree program with no prior programming experience required. Support Options We are here to support you every

More information

Assignment #3 CSCI 201 Spring % of course grade Title Weathermeister Back-End API Integration

Assignment #3 CSCI 201 Spring % of course grade Title Weathermeister Back-End API Integration Assignment #3 CSCI 201 4.5% of course grade Title Weathermeister Back-End API Integration Topics Covered Java Classes HTML CSS Basic Java Topics Java Servlets JSP JavaScript AJAX Databases SQL JDBC Overview

More information

BLACKBERRY SPARK COMMUNICATIONS PLATFORM. Getting Started Workbook

BLACKBERRY SPARK COMMUNICATIONS PLATFORM. Getting Started Workbook 1 BLACKBERRY SPARK COMMUNICATIONS PLATFORM Getting Started Workbook 2 2018 BlackBerry. All rights reserved. BlackBerry and related trademarks, names and logos are the property of BlackBerry

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

Classes and Objects 3/28/2017. How can multiple methods within a Java class read and write the same variable?

Classes and Objects 3/28/2017. How can multiple methods within a Java class read and write the same variable? Peer Instruction 8 Classes and Objects How can multiple methods within a Java class read and write the same variable? A. Allow one method to reference a local variable of the other B. Declare a variable

More information

Author: Group 03 Yuly Suvorov, Luke Harvey, Ben Holland, Jordan Cook, Michael Higdon. All Completed SRS2 Steps

Author: Group 03 Yuly Suvorov, Luke Harvey, Ben Holland, Jordan Cook, Michael Higdon. All Completed SRS2 Steps Software Requirements Document for Graffiti Author: Group 03 Yuly Suvorov, Luke Harvey, Ben Holland, Jordan Cook, Michael Higdon Version Date Author Change 0.1 09/13/ SM Initial Document 07 0.2 09/22/

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

Fragments. Lecture 11

Fragments. Lecture 11 Fragments Lecture 11 Situational layouts Your app can use different layouts in different situations Different device type (tablet vs. phone vs. watch) Different screen size Different orientation (portrait

More information

CS260 Intro to Java & Android 05.Android UI(Part I)

CS260 Intro to Java & Android 05.Android UI(Part I) CS260 Intro to Java & Android 05.Android UI(Part I) Winter 2018 Winter 2018 CS250 - Intro to Java & Android 1 User Interface UIs in Android are built using View and ViewGroup objects A View is the base

More information

Android User Guide. for version 5.3

Android User Guide. for version 5.3 Android User Guide for version 5.3 Contents 1. Installation... 3 1.1. How to install Babelnet... 3 1.2. Enter Babelnet in the search field.... 3 1.3. Safety precautions when using Babelnet on your Android...

More information

CS 528 Mobile and Ubiquitous Computing Lecture 4a: Fragments, Camera Emmanuel Agu

CS 528 Mobile and Ubiquitous Computing Lecture 4a: Fragments, Camera Emmanuel Agu CS 528 Mobile and Ubiquitous Computing Lecture 4a: Fragments, Camera Emmanuel Agu Fragments Recall: Fragments Sub-components of an Activity (screen) An activity can contain multiple fragments, organized

More information

CS371m - Mobile Computing. More UI Action Bar, Navigation, and Fragments

CS371m - Mobile Computing. More UI Action Bar, Navigation, and Fragments CS371m - Mobile Computing More UI Action Bar, Navigation, and Fragments ACTION BAR 2 Options Menu and Action Bar prior to Android 3.0 / API level 11 Android devices required a dedicated menu button Pressing

More information

CS 403X Mobile and Ubiquitous Computing Lecture 5: Web Services, Broadcast Receivers, Tracking Location, SQLite Databases Emmanuel Agu

CS 403X Mobile and Ubiquitous Computing Lecture 5: Web Services, Broadcast Receivers, Tracking Location, SQLite Databases Emmanuel Agu CS 403X Mobile and Ubiquitous Computing Lecture 5: Web Services, Broadcast Receivers, Tracking Location, SQLite Databases Emmanuel Agu Web Services What are Web Services? Means to call a remote method

More information

Active Monitoring System for Android Devices using Cloud 1 Sagar Bhalodia, 2 K. Navin 1 Student, 2 Assistant Professor

Active Monitoring System for Android Devices using Cloud 1 Sagar Bhalodia, 2 K. Navin 1 Student, 2 Assistant Professor Active Monitoring System for Android Devices using Cloud 1 Sagar Bhalodia, 2 K. Navin 1 Student, 2 Assistant Professor Department of Information Technology, Faculty of Engineering and Technology, SRM University,

More information

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

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

Jumble for Microsoft Outlook

Jumble for Microsoft Outlook Jumble for Microsoft Outlook Jumble provides truly usable and secure email encryption by integrating with existing email clients. Users can easily and securely communicate from their email client simply

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

CS371m - Mobile Computing. More UI Navigation, Fragments, and App / Action Bars

CS371m - Mobile Computing. More UI Navigation, Fragments, and App / Action Bars CS371m - Mobile Computing More UI Navigation, Fragments, and App / Action Bars EFFECTIVE ANDROID NAVIGATION 2 Clicker Question Have you heard of the terms Back and Up in the context of Android Navigation?

More information

Workspace Secure Container for Mobile Devices

Workspace Secure Container for Mobile Devices Workspace Secure Container for Mobile Devices Version 1.1 Last Updated: April 24, 2014 2014 Verizon. All Rights Reserved. The Verizon name and logo and all other names, logos, and slogans identifying Verizon

More information

Login with Amazon. Getting Started Guide for Android apps

Login with Amazon. Getting Started Guide for Android apps Login with Amazon Getting Started Guide for Android apps Login with Amazon: Getting Started Guide for Android Copyright 2017 Amazon.com, Inc., or its affiliates. All rights reserved. Amazon and the Amazon

More information

Enterprise Smart Outlet: Android Development

Enterprise Smart Outlet: Android Development Enterprise Smart Outlet: Android Development Aaron Koeppel Advisor: Professor Aaron Keen California Polytechnic State University Computer Science Department June 9, 2015 Abstract This project consists

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

Single Sign-on Overview Guide

Single Sign-on Overview Guide Single Sign-on Overview Guide 1/24/2017 Blackbaud NetCommunity 7.1 Single Sign-on Overview US 2016 Blackbaud, Inc. This publication, or any part thereof, may not be reproduced or transmitted in any form

More information

HOW TO CONFIGURE SOCIAL MEDIA PRIVACY SETTINGS

HOW TO CONFIGURE SOCIAL MEDIA PRIVACY SETTINGS HOW TO CONFIGURE SOCIAL MEDIA PRIVACY SETTINGS The right settings are critical when it comes to keeping your kids safe on social media. Here s a quick guide to safe settings for some of the most popular

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

Oracle Exam 1z0-441 Oracle Mobile Development 2015 Essentials Version: 6.0 [ Total Questions: 85 ]

Oracle Exam 1z0-441 Oracle Mobile Development 2015 Essentials Version: 6.0 [ Total Questions: 85 ] s@lm@n Oracle Exam 1z0-441 Oracle Mobile Development 2015 Essentials Version: 6.0 [ Total Questions: 85 ] Question No : 1 You have been asked to select the appropriate security policy to apply to a SOAP

More information

Produced by. Mobile Application Development. David Drohan Department of Computing & Mathematics Waterford Institute of Technology

Produced by. Mobile Application Development. David Drohan Department of Computing & Mathematics Waterford Institute of Technology Mobile Application Development Produced by David Drohan (ddrohan@wit.ie) Department of Computing & Mathematics Waterford Institute of Technology http://www.wit.ie The image cannot be displayed. Your computer

More information

Mobile Application Development

Mobile Application Development Android Native Application Development Mobile Application Development 1. Android Framework and Android Studio b. Android Software Layers c. Android Libraries d. Components of an Android Application e.

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

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

Mumbai Android Bootcamp -Course Content

Mumbai Android Bootcamp -Course Content Mumbai Android Bootcamp -Course Content Dear Learners, The Mumbai Android Bootcamp course is floated with an aim to empower aspiring minds to be fluent in computer programming and use that to take a leap

More information

ReportPlus Embedded Web SDK Guide

ReportPlus Embedded Web SDK Guide ReportPlus Embedded Web SDK Guide ReportPlus Web Embedding Guide 1.4 Disclaimer THE INFORMATION CONTAINED IN THIS DOCUMENT IS PROVIDED AS IS WITHOUT ANY EXPRESS REPRESENTATIONS OF WARRANTIES. IN ADDITION,

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

User Interface: Layout. Asst. Prof. Dr. Kanda Runapongsa Saikaew Computer Engineering Khon Kaen University

User Interface: Layout. Asst. Prof. Dr. Kanda Runapongsa Saikaew Computer Engineering Khon Kaen University User Interface: Layout Asst. Prof. Dr. Kanda Runapongsa Saikaew Computer Engineering Khon Kaen University http://twitter.com/krunapon Agenda User Interface Declaring Layout Common Layouts User Interface

More information

Family Map Server Specification

Family Map Server Specification Family Map Server Specification Acknowledgements The Family Map project was created by Jordan Wild. Thanks to Jordan for this significant contribution. Family Map Introduction Family Map is an application

More information

Create new Android project in Android Studio Add Button and TextView to layout Learn how to use buttons to call methods. Modify strings.

Create new Android project in Android Studio Add Button and TextView to layout Learn how to use buttons to call methods. Modify strings. Hello World Lab Objectives: Create new Android project in Android Studio Add Button and TextView to layout Learn how to use buttons to call methods. Modify strings.xml What to Turn in: The lab evaluation

More information

14FC Works Geotagging Mobile app Telangana Guidelines

14FC Works Geotagging Mobile app Telangana Guidelines 14FC Works Geotagging Mobile app Telangana Guidelines DOWNLOAD Directions: Go to CDMA portal www.cdma.telangana.gov.in and go to section 14FC Geo Tagging app Download. You will be redirected to below screen

More information

System and Software Architecture Description (SSAD)

System and Software Architecture Description (SSAD) System and Software Architecture Description (SSAD) Perfecto Coffee Xpress Consistent Perfection Team 5 Chloe Good Yekaterina Glazko Edwards Hays Yucheng Hsieh Atreya Lahiri Jaimin Patel Yun Shen Andrew

More information

ANDROID MOCK TEST ANDROID MOCK TEST IV

ANDROID MOCK TEST ANDROID MOCK TEST IV http://www.tutorialspoint.com ANDROID MOCK TEST Copyright tutorialspoint.com This section presents you various set of Mock Tests related to Android. You can download these sample mock tests at your local

More information

JAVA+ANDROID CURRICULUM 6 WEEKS. INTRODUCTION TO JAVA Understanding Requirement: Why Java Why Java is important to the Internet JAVA on LINUX Platform

JAVA+ANDROID CURRICULUM 6 WEEKS. INTRODUCTION TO JAVA Understanding Requirement: Why Java Why Java is important to the Internet JAVA on LINUX Platform JAVA+ANDROID CURRICULUM 6 WEEKS INTRODUCTION TO JAVA Understanding Requirement: Why Java Why Java is important to the Internet JAVA on LINUX Platform INTRODUCTION TO JAVA VIRTUAL MACHINE Java Virtual Machine

More information

32. And this is an example on how to retrieve the messages received through NFC.

32. And this is an example on how to retrieve the messages received through NFC. 4. In Android applications the User Interface (UI) thread is the main thread. This thread is very important because it is responsible with displaying/drawing and updating UI elements and handling/dispatching

More information

Jumble Encryption for Microsoft Outlook

Jumble  Encryption for Microsoft Outlook Jumble Email Encryption for Microsoft Outlook Jumble provides truly usable and secure email encryption by integrating with existing email clients. Users can easily and securely communicate from their email

More information

CS 370 Android Basics D R. M I C H A E L J. R E A L E F A L L

CS 370 Android Basics D R. M I C H A E L J. R E A L E F A L L CS 370 Android Basics D R. M I C H A E L J. R E A L E F A L L 2 0 1 5 Activity Basics Manifest File AndroidManifest.xml Central configuration of Android application Defines: Name of application Icon for

More information

COLLEGE OF ENGINEERING, NASHIK-4

COLLEGE OF ENGINEERING, NASHIK-4 Pune Vidyarthi Griha s COLLEGE OF ENGINEERING, NASHIK-4 DEPARTMENT OF COMPUTER ENGINEERING 1) What is Android? Important Android Questions It is an open-sourced operating system that is used primarily

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

STUDYHIVE ANDROID APPLICATION. A Project. Presented to the faculty of the Department of Computer Engineering. California State University, Sacramento

STUDYHIVE ANDROID APPLICATION. A Project. Presented to the faculty of the Department of Computer Engineering. California State University, Sacramento STUDYHIVE ANDROID APPLICATION A Project Presented to the faculty of the Department of Computer Engineering California State University, Sacramento Submitted in partial satisfaction of the requirements

More information

Spring Lecture 7 Lecturer: Omid Jafarinezhad

Spring Lecture 7 Lecturer: Omid Jafarinezhad Mobile Programming Sharif University of Technology Spring 2016 - Lecture 7 Lecturer: Omid Jafarinezhad Grid View GridView is a ViewGroup that displays items in a two-dimensional, scrollable grid. The grid

More information

Libelium Cloud Hive. Technical Guide

Libelium Cloud Hive. Technical Guide Libelium Cloud Hive Technical Guide Index Document version: v7.0-12/2018 Libelium Comunicaciones Distribuidas S.L. INDEX 1. General and information... 4 1.1. Introduction...4 1.1.1. Overview...4 1.2. Data

More information

High School PLTW Computer Science A Curriculum

High School PLTW Computer Science A Curriculum Grade 9th - 12th, 1 Credit Elective Course Prerequisites: PLTW Computer Science and Software Engineering High School PLTW Computer Science A Curriculum Course Description: Computer Science A (CSA) builds

More information

Group Name: Team Epsilon Max Hinson Jhon Faghih Nassiri

Group Name: Team Epsilon Max Hinson Jhon Faghih Nassiri Software Design Document for UCSB 360 Version 1.0 Prepared by Group Name: Team Epsilon Max Hinson 4426771 maxwellhinson@gmail.com Jhon Faghih Nassiri 4111274 jfaghihnassiri@gmail.com Luke Buckland 4060893

More information

Application Development in JAVA. Data Types, Variable, Comments & Operators. Part I: Core Java (J2SE) Getting Started

Application Development in JAVA. Data Types, Variable, Comments & Operators. Part I: Core Java (J2SE) Getting Started Application Development in JAVA Duration Lecture: Specialization x Hours Core Java (J2SE) & Advance Java (J2EE) Detailed Module Part I: Core Java (J2SE) Getting Started What is Java all about? Features

More information

Agenda. Overview of Xamarin and Xamarin.Android Xamarin.Android fundamentals Creating a detail screen

Agenda. Overview of Xamarin and Xamarin.Android Xamarin.Android fundamentals Creating a detail screen Gill Cleeren Agenda Overview of Xamarin and Xamarin.Android Xamarin.Android fundamentals Creating a detail screen Lists and navigation Navigating from master to detail Optimizing the application Preparing

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

Introductory Mobile App Development

Introductory Mobile App Development Introductory Mobile App Development 152-160 Quick Links & Text References Overview Pages ListView Pages ArrayAdaper Pages Filling a ListView Pages Sensing Click Pages Selected Item Info Pages Configuring

More information

CS260 Intro to Java & Android 05.Android UI(Part I)

CS260 Intro to Java & Android 05.Android UI(Part I) CS260 Intro to Java & Android 05.Android UI(Part I) Winter 2015 Winter 2015 CS250 - Intro to Java & Android 1 User Interface UIs in Android are built using View and ViewGroup objects A View is the base

More information

Homework 8: Ajax, JSON and Responsive Design Travel and Entertainment Search (Bootstrap/Angular/AJAX/JSON/jQuery /Cloud Exercise)

Homework 8: Ajax, JSON and Responsive Design Travel and Entertainment Search (Bootstrap/Angular/AJAX/JSON/jQuery /Cloud Exercise) Homework 8: Ajax, JSON and Responsive Design Travel and Entertainment Search (Bootstrap/Angular/AJAX/JSON/jQuery /Cloud Exercise) 1. Objectives Get familiar with the AJAX and JSON technologies Use a combination

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

TomTom Mobile SDK QuickStart Guide

TomTom Mobile SDK QuickStart Guide TomTom Mobile SDK QuickStart Guide Table of Contents Introduction... 3 Migrate to TomTom ios... 4 Prerequisites...4 Initializing a map...4 Displaying a marker...4 Displaying traffic...5 Displaying a route/directions...5

More information

Programming Android UI. J. Serrat Software Design December 2017

Programming Android UI. J. Serrat Software Design December 2017 Programming Android UI J. Serrat Software Design December 2017 Preliminaries : Goals Introduce basic programming Android concepts Examine code for some simple examples Limited to those relevant for the

More information

When programming in groups of people, it s essential to version the code. One of the most popular versioning tools is git. Some benefits of git are:

When programming in groups of people, it s essential to version the code. One of the most popular versioning tools is git. Some benefits of git are: ETSN05, Fall 2017, Version 1.0 Software Development of Large Systems Lab 2 preparations Read through this document carefully. In order to pass lab 2, you will need to understand the topics presented in

More information

Progressive Authentication in ios

Progressive Authentication in ios Progressive Authentication in ios Genghis Chau, Denis Plotnikov, Edwin Zhang December 12 th, 2014 1 Overview In today s increasingly mobile-centric world, more people are beginning to use their smartphones

More information

SAS Event Stream Processing 4.3: Visualizing Event Streams with Streamviewer

SAS Event Stream Processing 4.3: Visualizing Event Streams with Streamviewer SAS Event Stream Processing 4.3: Visualizing Event Streams with Streamviewer Overview Streamviewer provides a user interface that enables you to subscribe to window event streams from one or more event

More information

Family Map Server Specification

Family Map Server Specification Family Map Server Specification Acknowledgements The Family Map project was created by Jordan Wild. Thanks to Jordan for this significant contribution. Family Map Introduction Family Map is an application

More information

If you re a Facebook marketer, you re likely always looking for ways to

If you re a Facebook marketer, you re likely always looking for ways to Chapter 1: Custom Apps for Fan Page Timelines In This Chapter Using apps for Facebook marketing Extending the Facebook experience Discovering iframes, Application Pages, and Canvas Pages Finding out what

More information