OFFLINE MODE OF ANDROID
|
|
- Jared Dickerson
- 5 years ago
- Views:
Transcription
1 OFFLINE MODE OF ANDROID
2 ABOUT ME new Presenter( Ajit Singh, github.com/ajitsing, )
3 AGENDA Why offline mode? What it takes to build an offline mode Architecture & Code Network factors Testing Bugs & how to solve them Wrap up
4 WHY OFFLINE MODE? Lets understand by an example We can t always get connected to internet Mobile networks are not stable
5 WHAT IT TAKES TO BUILD AN OFFLINE MODE
6 WHAT IT TAKES TO BUILD OFFLINE MODE UX Data Listening to network state updates Manage the network state Notifying user with the latest network state
7 USER EXPERIENCE
8 CAN NOT DO ANYTHING OFFLINE!
9 CAN DO SOMETHING!
10 CAN DO A LOT!!
11 DATA DB CACHE JSON files, sharedpreferences etc..
12 LISTEN FOR NETWORK CHANGE EVENTS APP
13 IDENTIFYING INTERNET CONNECTIVITY Figure out current network state using the NetworkStateIdentifier
14 MANAGE NETWORK STATE Update the network state
15 NOTIFYING USER WITH THE LATEST STATE Update UI using the latest network state
16 OFFLINE MODE ARCHITECTURE
17 ARCHITECTURE APP
18 BENEFITS OF THIS ARCHITECTURE Event driven architecture App always has the copy of latest connectivity state Utilising less resources User gets notified almost immediately
19 CODE
20 User Permission 10
21 PERMISSION TO ACCESS NETWORK STATE <uses-permission android:name="android.permission.access_network_state"/>
22 Registering for network status change events 10
23 LISTEN TO NETWORK CHANGE EVENT <receiver android:name=".networkstatechangereceiver" android:exported="false"> <intent-filter> <action android:name="android.net.conn.connectivity_change"/> </intent-filter> </receiver> Deprecated for Apps targeting to API 24
24 LISTEN TO NETWORK CHANGE EVENT BELOW API 21 if (belowlollipop()) { ctx.registerreceiver(receiver, new IntentFilter(CONNECTIVITY_ACTION)) } ctx.registerreceiver(receiver, new IntentFilter(WIFI_STATE_CHANGE_ACTION))
25 LISTEN TO NETWORK CHANGE EVENT BELOW API 21 public class NetworkStateChangeReceiver extends BroadcastReceiver public void onreceive(context context, Intent intent) { networkstatemanager.refresh(); } }
26 LISTEN TO NETWORK CHANGE EVENT FOR API 21 & ABOVE NetworkCallback networkcallback = new NetworkCallback() public void onavailable(network network) { networkstatemanager.refresh(); public void onlost(network network) { networkstatemanager.refresh(); } }; cm.registernetworkcallback(networkrequest, networkcallback);
27 Managing network state 10
28 NETWORK STATE MANAGER networkstatemanager.refresh(); public void refresh() { updatenetworkstate(); broadcastnetworkchangeintent(); }
29 Network state identifier 10
30 NETWORK CONNECTIVITY IDENTIFIER NetworkInfo networkinfo = cm.getactivenetworkinfo(); networkinfo.isconnected();
31 NETWORK FACTORS
32 NETWORK FACTORS WiFi Mobile Data Low Connectivity Flight Mode B A T T E R Y Power Save Mode Roaming Roaming
33 POTENTIAL ISSUES
34 ARE YOU REALLY OFFLINE?
35 AND
36 But Why?? 10
37 WATCH OUT! App NetworkConnectivityIdentifier NetworkCallback
38 Lets take a look at some of the common mistakes while using Android Network APIs 10
39 NETWORK CONNECTIVITY IDENTIFIER public boolean isconnectedtointernet() { NetworkInfo networkinfo = cm.getactivenetworkinfo(); return networkinfo.isconnected(); } NullPointerException!!
40 NETWORK CONNECTIVITY IDENTIFIER public boolean isconnectedtointernet() { NetworkInfo networkinfo = cm.getactivenetworkinfo(); return networkinfo!= null && networkinfo.isconnected(); } What about multiple networks!!
41 NETWORK CONNECTIVITY IDENTIFIER public boolean isconnectedtointernet() { Network[] allnetworks = cm.getallnetworks(); for (Network network : allnetworks) { NetworkInfo networkinfo = cm.getnetworkinfo(network); if (networkinfo!= null) { return networkinfo.isconnected(); } } return false; } What about unwanted networks!!
42 NETWORK CONNECTIVITY IDENTIFIER private boolean iswifiormobile(networkinfo networkinfo) { List<Integer> networks = aslist(type_mobile, TYPE_WIFI); return networks.contains(networkinfo.gettype()); }
43 WHAT DID WE DO Added null check for NetworkInfo Handled multiple networks Filtered WIFI and Mobile Data networks only
44 BE CAREFUL WITH NETWORK CALLBACK NetworkCallback networkcallback = new NetworkCallback() public void onavailable(network network) { networkstatemanager.setconnectedtointernet(true); public void onlost(network network) { networkstatemanager.setconnectedtointernet(false); } }; cm.registernetworkcallback(networkrequest, networkcallback);
45 BE CAREFUL WITH NETWORK CALLBACK NetworkCallback networkcallback = new NetworkCallback() public void onavailable(network network) { networkstatemanager.refresh(); public void onlost(network network) { networkstatemanager.refresh(); } }; cm.registernetworkcallback(networkrequest, networkcallback); Is it good enough??
46 BE CAREFUL WITH NETWORK CALLBACK NetworkCallback networkcallback = new NetworkCallback() public void onavailable(network network) { networkstatemanager.refresh(); public void oncapabilitieschanged(network n, NetworkCapabilities nc) { networkstatemanager.refresh(); public void onlost(network network) { networkstatemanager.refresh(); } }; cm.registernetworkcallback(networkrequest, networkcallback);
47 HAVE WE SOLVED ALL THE PROBLEMS? Power Save Mode Handling on different devices Other random connectivity issues
48 HANDLING ISSUES
49 UNDERSTANDING THE USER BEHAVIOUR
50 INCREASE TRIGGER POINTS
51 GIVE THE USER CHANCE TO GET OUT OF OFFLINE MODE Activity s onresume() Fragment s onresume() Network Call? User Action
52 TESTING
53 TESTING PYRAMID
54 UNIT TESTING Network state management logic Broadcasting network change event to the app Showing offline UI components
55 INSTRUMENTATION TESTING Showing offline UI components on broadcast of network change event Content of UI components Interactions with offline components
56 AUTOMATION TESTING
57 TESTING USER JOURNEYS When user goes online to offline When user comes back online Interactions with offline components
58 USING ADB TO GO OFFLINE
59 MANUAL TESTING
60 WHY MANUAL TESTING? Low connectivity scenarios Combination of multiple networks Fluctuating network conditions
61 TESTING IN LIFTS
62 TESTING WHILE TRAVELLING
63 WRAP UP! Build something that is useful to the user Be careful while using android network API Always read the documentation of network APIs Understand user behaviour Manual testing Test with combination of mobile data and wifi Use automation testing to test offline UI components
64 THANK YOU Questions?
Analyzing Wi Fi P2P in the context of a hangman game 1
Analyzing Wi Fi P2P in the context of a hangman game 1 1. Introduction and Findings 2 3 Wi Fi P2P, which complies with the Wi Fi Alliance's Wi Fi Direct certification program, is a relatively new addition
More informationServices. service: A background task used by an app.
CS 193A Services This document is copyright (C) Marty Stepp and Stanford Computer Science. Licensed under Creative Commons Attribution 2.5 License. All rights reserved. Services service: A background task
More information10/27/17. Network Connec1on. Outline. Connect to the Internet. Connect to the Internet. Perform Network Operations. Perform Network Operations
Connecting to the Internet Outline Network Connec1on CS443 Mobile Applica1ons Instructor: Bo Sheng Perform network operations Manage network usage Parsing data 1 2 Connect to the Internet Permissions in
More informationProduced 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 informationHello! I AM ZARAH. I am an Android developer for Domain.com.au
TOOLS OF THE TRADE Hello! I AM ZARAH I am an Android developer for Domain.com.au THE KEY Know available tools THE KEY Know available tools There is no correct setup CODE FRAGMENTS FRAGMENT LIFECYCLE FragmentManager.enableDebugLogging(true);
More informationSpring Lecture 5 Lecturer: Omid Jafarinezhad
Mobile Programming Sharif University of Technology Spring 2016 - Lecture 5 Lecturer: Omid Jafarinezhad Storage Options Android provides several options for you to save persistent application data. The
More informationMobile 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 informationCommunicating 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 informationMobile and Ubiquitous Computing: Android Programming (part 4)
Mobile and Ubiquitous Computing: Android Programming (part 4) Master studies, Winter 2015/2016 Dr Veljko Pejović Veljko.Pejovic@fri.uni-lj.si Examples from: Mobile and Ubiquitous Computing Jo Vermeulen,
More informationMobile Computing Professor Pushpedra Singh Indraprasth Institute of Information Technology Delhi Activity Logging Lecture 16
Mobile Computing Professor Pushpedra Singh Indraprasth Institute of Information Technology Delhi Activity Logging Lecture 16 Hello, last two classes we learned about activity life cycles and the call back
More informationApp Development for Smart Devices. Lec #17: Networking II
App Development for Smart Devices CS 495/595 - Fall 2011 Lec #17: Networking II Tamer Nadeem Dept. of Computer Science Objective Bluetooth Network Connectivity and WiFi Presentation - Mobile Crowdsensing:
More informationLifecycle-Aware Components Live Data ViewModel Room Library
Lifecycle-Aware Components Live Data ViewModel Room Library Multiple entry points launched individually Components started in many different orders Android kills components on reconfiguration / low memory
More informationBasic UI elements: Defining Activity UI in the code. Marco Ronchetti Università degli Studi di Trento
1 Basic UI elements: Defining Activity UI in the code Marco Ronchetti Università degli Studi di Trento UI Programmatically public class UIThroughCode extends Activity { LinearLayout llayout; TextView tview;
More informationThe Internet. CS 2046 Mobile Application Development Fall Jeff Davidson CS 2046
The Internet CS 2046 Mobile Application Development Fall 2010 Announcements HW2 due Monday, 11/8, at 11:59pm If you want to know what it means to root your phone, or what this does, see Newsgroup HW1 grades
More informationBITalino Java Application Programming Interface. Documentation Android API
BITalino Java Application Programming Interface Documentation Android API Contents Contents...2 1. General Information...3 2. Introduction...4 3. Main Objects...5 3.1.Class BITalinoDescription...5 3.2.Class
More informationAndroid Programmierung leichtgemacht. Lars Vogel
Android Programmierung leichtgemacht Lars Vogel Twitter: @vogella Lars Vogel Arbeitet als unabhängiger Eclipse und Android Berater und Trainer Arbeit zusätzlichen für SAP AG als Product Owner in einem
More informationCS378 -Mobile Computing. Services and Broadcast Receivers
CS378 -Mobile Computing Services and Broadcast Receivers Services One of the four primary application components: activities content providers services broadcast receivers 2 Services Application component
More informationUnderstanding Application
Introduction to Android Application Development, Android Essentials, Fifth Edition Chapter 4 Understanding Application Components Chapter 4 Overview Master important terminology Learn what the application
More informationMessage Passing & APIs
CS 160 User Interface Design Message Passing & APIs Section 05 // September 25th, 2015 Tricia Fu // OH Monday 9:30-10:30am // triciasfu@berkeley.edu Agenda 1 Administrivia 2 Brainstorm Discussion 3 Message
More informationMobile Application Development Android
Mobile Application Development Android Lecture 3 MTAT.03.262 Satish Srirama satish.srirama@ut.ee Android Lecture 2 - recap Views and Layouts Events Basic application components Activities Intents 9/15/2014
More informationAccessing Cellular Network Efficiently Without the Battery Drain. Lee, Chang Hwan, SK Telecom lipisoft at gmail dot com Kandroid: Lipi(리피)
Accessing Cellular Network Efficiently Without the Battery Drain Lee, Chang Hwan, SK Telecom lipisoft at gmail dot com Kandroid: Lipi(리피) Contents Wired vs Cellular Cellular Network LTE Protocol Stack
More informationAndroid Application Development using Kotlin
Android Application Development using Kotlin 1. Introduction to Kotlin a. Kotlin History b. Kotlin Advantages c. How Kotlin Program Work? d. Kotlin software Prerequisites i. Installing Java JDK and JRE
More informationA Separation of Concerns Clean Architecture on Android
A Separation of Concerns Clean Architecture on Android Kamal Kamal Mohamed Android Developer, //TODO Find Better Title @ Outware Mobile Ryan Hodgman Official Despiser of Utils Classes @ Outware Mobile
More informationIntents & Intent Filters. codeandroid.org
Intents & Intent Filters codeandroid.org Intents & Intents Filter Intents : request for an action to be performed (usually on a set of data) Intent Filters : register Activities, Services, and Broadcast
More informationAndroid User Interface
Android Smartphone Programming Matthias Keil Institute for Computer Science Faculty of Engineering 20. Oktober 2014 Outline 1 Android User Interface 2 Multi-Language Support 3 Summary Matthias Keil Android
More informationLifecycle Callbacks and Intents
SE 435: Development in the Android Environment Recitations 2 3 Semester 1 5779 4 Dec - 11 Dec 2018 Lifecycle Callbacks and Intents In this recitation we ll prepare a mockup tool which demonstrates the
More informationMobile Application Development Android
Mobile Application Development Android Lecture 3 MTAT.03.262 Satish Srirama satish.srirama@ut.ee Android Lecture 2 -recap Views and Layouts Events Basic application components Activities Intents BroadcastReceivers
More informationThe Basis of Data. Steven R. Bagley
The Basis of Data Steven R. Bagley So far How to create a UI View defined in XML Java-based Activity as the Controller Services Long running processes Intents used to send messages between things asynchronously
More informationTermite WiFi Direct API
Termite WiFi Direct API Developers Guide 2014/15 Nuno Santos 1. Objectives This document provides a brief description of the Termite WiFi Direct API. 2. Termite API Guide In order for an application to
More informationAndroid permissions Defining and using permissions Component permissions and related APIs
Android permissions Defining and using permissions Component permissions and related APIs Permissions protects resources and data For instance, they limit access to: User information e.g, Contacts Cost-sensitive
More informationANDROID 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 informationProduced by. Design Patterns. MSc in Communications Software. Eamonn de Leastar
Design Patterns MSc in Communications Software 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 informationSyllabus- 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 informationMinds-on: Android. Session 1
Minds-on: Android Session 1 Paulo Baltarejo Sousa Instituto Superior de Engenharia do Porto 2016 Outline Mobile devices Android OS Android architecture Android Studio Practice 1 / 33 2 / 33 Mobile devices
More informationRunning Effective Projects In Office 365. June 1, 2017
Running Effective Projects In Office 365 June 1, 2017 Peter Carson President, Envision IT SharePoint MVP Partner Seller, Microsoft Canada peter.carson@extranetusermanager.com http://blog.petercarson.ca
More informationCQ Beacon Android SDK V2.0.1
Copyright 2014 ConnectQuest, LLC 1 CQ Beacon Android SDK V2.0.1 Software Requirements: Android 4.3 or greater SDK Support Page: http://www.connectquest.com/app- developers/android- api/ The CQ SDK package
More informationINTRODUCTION 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 informationAndroid Best Practices
Android Best Practices Agenda Introduction The clean architecture Testing Support library Libraries we can depend on What's next Introduction Introduction Android Studio Gradle Material Design Lollipop
More informationApplication Fundamentals
Application Fundamentals CS 2046 Mobile Application Development Fall 2010 Announcements CMS is up If you did not get an email regarding this, see me after class or send me an email. Still working on room
More informationANDROID 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 informationregister/unregister for Intent to be activated if device is within a specific distance of of given lat/long
stolen from: http://developer.android.com/guide/topics/sensors/index.html Locations and Maps Build using android.location package and google maps libraries Main component to talk to is LocationManager
More informationMobile Speech Recognizer
Mobile Speech Recognizer by Piotr Zmudzinski ptr.zmudzinski@gmail.com!1 About Wouldn't your prefer to let your users speak instead of making them type? This plugin uses OS components for speech recognition
More informationKotlin for Android Developers
Kotlin for Android Developers Learn Kotlin the easy way while developing an Android App Antonio Leiva This book is for sale at http://leanpub.com/kotlin-for-android-developers This version was published
More informationKotlin for Android Developers
Kotlin for Android Developers Learn Kotlin the easy way while developing an Android App Antonio Leiva This book is for sale at http://leanpub.com/kotlin-for-android-developers This version was published
More informationGetting Started ArcGIS Runtime SDK for Android. Andy
Getting Started ArcGIS Runtime SDK for Android Andy Gup @agup Agenda Introduction Runtime SDK - Tools and features Maps & Layers Tasks Editing GPS Offline Capabilities Summary My contact info Andy Gup,
More informationAndroid 6.0 Runtime Permissions And You!
droidcon NYC 2015 Android 6.0 Runtime Permissions And You! (a code lab) droidcon NYC 2015 Android 6.0 Runtime Permissions And You! (a code review) Runtime Permissions in
More informationDistributed Systems 2011 Assignment 1
Distributed Systems 2011 Assignment 1 Gábor Sörös gabor.soros@inf.ethz.ch The Exercise Objectives Get familiar with Android programming Emulator, debugging, deployment Learn to use UI elements and to design
More informationSoftware Engineering Large Practical: Accessing remote data and XML parsing. Stephen Gilmore School of Informatics October 8, 2017
Software Engineering Large Practical: Accessing remote data and XML parsing Stephen Gilmore School of Informatics October 8, 2017 Contents 1. Android system permissions 2. Getting a network connection
More informationANDROID 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 informationServices. Background operating component without a visual interface Running in the background indefinitely
Services Background operating component without a visual interface Running in the background indefinitely Differently from Activity, Service in Android runs in background, they don t have an interface
More informationWelcome to Developing for Edge 04/06/2017
Welcome to Developing for Edge 04/06/2017 A few housekeeping items: If you have any questions for the presenters, please post them in the Q&A box and we will answer them at the end of the presentation.
More informationA simple, scalable app architecture with Android Annotations Luke Sleeman Freelance Android developer lukesleeman.com.au
A simple, scalable app architecture with Android Annotations Luke Sleeman Freelance Android developer lukesleeman.com.au Image CC: https://flic.kr/p/6oqczb Luke Sleeman - Freelance developer specialising
More informationUnderstand 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 information32. 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 informationAndroid User Interface Android Smartphone Programming. Outline University of Freiburg
Android Smartphone Programming Matthias Keil Institute for Computer Science Faculty of Engineering 20. Oktober 2014 Outline 1 2 Multi-Language Support 3 Summary Matthias Keil 20. Oktober 2014 2 / 19 From
More informationANDROID 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 informationJava 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 informationOverview. Android Apps (Partner s App) Other Partner s App Platform. Samsung Health. Server SDK. Samsung Health. Samsung Health Server
W E L C O M E T O Overview Android Apps (Partner s App) Data Service Health Android SDK Android API Samsung Health Samsung Health Server SDK Data REST API Oauth2 Other Partner s App Platform REST API
More informationCS378 -Mobile Computing. What's Next?
CS378 -Mobile Computing What's Next? Fragments Added in Android 3.0, a release aimed at tablets A fragment is a portion of the UI in an Activity multiple fragments can be combined into multi-paned UI fragments
More informationMobile Computing Professor Pushpedra Singh Indraprasth Institute of Information Technology Delhi Andriod Development Lecture 09
Mobile Computing Professor Pushpedra Singh Indraprasth Institute of Information Technology Delhi Andriod Development Lecture 09 Hello, today we will create another application called a math quiz. This
More informationANDROID 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 informationInstructions on Yealink s SDK for Yealink T5 Smart Business Phone Series. Instructions on Yealink s SDK for Yealink T5 Smart Business Phone Series
Instructions on Yealink s SDK for Yealink T5 Smart Business Phone Series Table of Contents 1 SDK Introduction... 5 2 Yealink Android Phone Debugging Preparation... 5 2.1 Enabling the ADB Feature... 5 2.2
More informationCoding for Life--Battery Life, That Is
Coding for Life--Battery Life, That Is Jeff Sharkey May 27, 2009 Post your questions for this talk on Google Moderator: code.google.com/events/io/questions Why does this matter? Phones primarily run on
More informationMobile Application Development Integration HTTP Android Client (Retrofit)
Mobile Application Development Integration HTTP Android Client (Retrofit) Waterford Institute of Technology November 1, 2016 John Fitzgerald Waterford Institute of Technology, Mobile Application Development
More informationLab 5 Periodic Task Scheduling
Lab 5 Periodic Task Scheduling Scheduling a periodic task in Android is difficult as it goes against the philosophy of keeping an application active only while the user is interacting with it. You are
More informationExternal Services. CSE 5236: Mobile Application Development Course Coordinator: Dr. Rajiv Ramnath Instructor: Adam C. Champion
External Services CSE 5236: Mobile Application Development Course Coordinator: Dr. Rajiv Ramnath Instructor: Adam C. Champion 1 External Services Viewing websites Location- and map-based functionality
More informationGoogle Maps Troubleshooting
Google Maps Troubleshooting Before you go through the troubleshooting guide below, make sure that you ve consulted the class FAQ, Google s Map Activity Tutorial, as well as these helpful resources from
More informationANDROID SERVICES, BROADCAST RECEIVER, APPLICATION RESOURCES AND PROCESS
ANDROID SERVICES, BROADCAST RECEIVER, APPLICATION RESOURCES AND PROCESS 1 Instructor: Mazhar Hussain Services A Service is an application component that can perform long-running operations in the background
More informationAndroid Connectivity & Google APIs
Android Connectivity & Google APIs Lecture 5 Operating Systems Practical 2 November 2016 This work is licensed under the Creative Commons Attribution 4.0 International License. To view a copy of this license,
More informationAndroid framework. How to use it and extend it
Android framework How to use it and extend it Android has got in the past three years an explosive growth: it has reached in Q1 2011 the goal of 100M of Activations world wide with a number of daily activations
More informationAndroid Developer Nanodegree Syllabus
Before You Start This program is aimed at developers with 1-2 years of experience programming in Java or another object-oriented programming language like Python or C#. If you don t have this experience,
More informationBuilding Applications with ArcGIS Runtime SDK for Android Part II. Will Crick Dan O Neill
Building Applications with ArcGIS Runtime SDK for Android Part II Will Crick Dan O Neill Agenda Intro Connected editing summary Offline capabilities - Local features - Geometry Engine Platform integration
More informationMiCloud Office. Android guide. Copyright Mitel Communications AB
Table of Contents MiCloud Office Android guide Copyright 2009-2015 Mitel Communications AB 1. MiCloud Office Overview... 1 1.1. Supported Phones... 1 2. To get started with MiCloud Office... 2 3. Starting
More informationSecurity Philosophy. Humans have difficulty understanding risk
Android Security Security Philosophy Humans have difficulty understanding risk Safer to assume that Most developers do not understand security Most users do not understand security Security philosophy
More informationSafety First - Android sicher programmieren! Benjamin Reimold & Stephan Linzner
2011 Safety First - Android sicher programmieren! Benjamin Reimold & Stephan Linzner 7th July, 2011 Introducing Stephan Linzner Benjamin Reimold Freelance Software Engineer Mobile Developer Founder of
More informationMobile Application Development Android
Mobile Application Development Android Lecture 3 MTAT.03.262 Satish Srirama satish.srirama@ut.ee Android Lecture 2 - recap Views and Layouts Events Basic application components Activities Intents 9/22/2017
More informationHCA Tech Note 120. Configuring the Control UI Home Page. Option 1: HCA constructs the home page
Configuring the Control UI Home Page HCA contains two different user interfaces: One interface called the Development UI - where all design elements and tools are available and you can make changes, and
More informationIntroduction to Android
Introduction to Android Ambient intelligence Alberto Monge Roffarello Politecnico di Torino, 2017/2018 Some slides and figures are taken from the Mobile Application Development (MAD) course Disclaimer
More informationServices Broadcast Receivers Permissions
Services Broadcast Receivers Permissions Runs in the background Extends Service Java class Not necessarily connected to the user s visual interface Music player working in foreground User wants read email
More informationDistributed Systems Assignment 1
Distributed Systems Assignment 1 Marian.george@inf.ethz.ch Distributed Systems Assignment 1 1 The Exercise Objectives Get familiar with Android programming Emulator, debugging, deployment Learn to use
More informationLesson Five: Detecting Poses
Lesson Five: Detecting Poses PAGE 01 Lesson Five: Detecting Poses Overview Last lesson, we introduced onforegroundwindowchange and how it can be used to detect applications. This lesson will focus on writing
More informationLoca%on Support in Android. COMP 355 (Muppala) Location Services and Maps 1
Loca%on Support in Android COMP 355 (Muppala) Location Services and Maps 1 Loca%on Services in Android Loca%on capabili%es for applica%ons supported through the classes in android.loca%on package and Google
More informationAgenda. 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 informationINTRODUCTION COS MOBILE DEVELOPMENT WHAT IS ANDROID CORE OS. 6-Android Basics.key - February 21, Linux-based.
1 COS 470 - MOBILE DEVELOPMENT INTRODUCTION 2 WHAT IS ANDROID Linux-based Java/Kotlin Android Runtime (ART) System Apps SMS, Calendar, etc. Platform Architecture 3 CORE OS Linux (64 bit) Each app is a
More informationCS371m - Mobile Computing. Persistence
CS371m - Mobile Computing Persistence Storing Data Multiple options for storing data associated with apps Shared Preferences Internal Storage device memory External Storage SQLite Database Network Connection
More informationSoftware Engineering Large Practical: Preferences, storage, and testing
Software Engineering Large Practical: Preferences, storage, and testing Stephen Gilmore (Stephen.Gilmore@ed.ac.uk) School of Informatics November 9, 2016 Contents A simple counter activity Preferences
More informationAndroid Ecosystem and. Revised v4presenter. What s New
Android Ecosystem and Revised v4presenter What s New Why Mobile? 5B 4B 3B 2B 1B Landlines PCs TVs Bank users Mobiles 225M AOL 180M 135M 90M 45M 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 Quarters
More informationAndroid Security Lab WS 2013/14 Lab 2: Android Permission System
Saarland University Information Security & Cryptography Group Prof. Dr. Michael Backes saarland university computer science Android Security Lab WS 2013/14 M.Sc. Sven Bugiel Version 1.2 (November 12, 2013)
More informationGetting Started With Feature Toggle in Java
Guide Getting Started With Feature Toggle in Java INTRO Feature toggles (also known as feature flags) are simple. You want to introduce new behavior in a Java application, but you re not ready to turn
More informationAndroid Fundamentals - Part 1
Android Fundamentals - Part 1 Alexander Nelson September 1, 2017 University of Arkansas - Department of Computer Science and Computer Engineering Reminders Projects Project 1 due Wednesday, September 13th
More informationThe application must track specific user actions / events and communicate them to Responsys through a SOAP service.
Responsys Integration Architecture Scope The intention of this section is to present the high level architecture of the integration between the Forever21 websphere commerce application and the external
More informationAndroid/Java Lightning Tutorial JULY 30, 2018
Android/Java Lightning Tutorial JULY 30, 2018 Java Android uses java as primary language Resource : https://github.mit.edu/6178-2017/lec1 Online Tutorial : https://docs.oracle.com/javase/tutorial/java/nutsandbolts/inde
More informationPILOT FM Radio SDK AUGUST 31, 2016
PILOT FM Radio SDK Android Integration Guide Document version 1.0.3 Applies to: SDK Version 1.0.3 This document is intended to be used in conjunction with the sample app provided. AUGUST 31, 2016 PILOT
More informationMobile Application Development MyRent Settings
Mobile Application Development MyRent Settings Waterford Institute of Technology October 13, 2016 John Fitzgerald Waterford Institute of Technology, Mobile Application Development MyRent Settings 1/19
More informationContextual Android Education
Contextual Android Education James Reed David S. Janzen Abstract Advances in mobile phone hardware and development platforms have drastically increased the demand, interest, and potential of mobile applications.
More informationSim Card Alarm for Android Smartphone
Sim Card Alarm for Android Smartphone Rikip Ginanjar 1, Ridho Utomo 2 1 President University, Faculty of Computing, Jl. Ki Hajar Dewantara, Cikarang Baru Bekasi 17550 E-mail: rikipginanjar@president.ac.id
More informationSDK Android Studio. 2. build.gradle. SDK moxie-client-xxx.aar libs 2.1. build.gradle. 2.4 repositories. app proguard-rules.pro
SDK Android Studio 1. SDK SDK moxie-client-xxx.aar libs 2. build.gradle 2.1 build.gradle dependencies { compile filetree(dir: 'libs', include: ['.jar']) compile 'com.android.support:appcompat-v7:23.1.1'
More informationEMBEDDED SYSTEMS PROGRAMMING Application Basics
EMBEDDED SYSTEMS PROGRAMMING 2015-16 Application Basics APPLICATIONS Application components (e.g., UI elements) are objects instantiated from the platform s frameworks Applications are event driven ( there
More informationAndroid About.me/DavidCorrado Mobile Meetup Organizer
Android Tips/Tricks @DavidCorrado About.me/DavidCorrado Mobile Meetup Organizer IDE Don t Use Eclipse Use either Android Studio/IntelliJ They are basically the same thing. They are both built off of IntelliJ
More informationN different strategies to automate OWASP ZAP
OWASP BUCHAREST APPSEC CONFERENCE 13 OCTOBER 2017 The OWASP Foundation http://www.owasp.org N different strategies to automate OWASP ZAP The OWASP Zed Attack Proxy Marudhamaran Gunasekaran Zap Contributor
More information