Strategies for Transferring User Data Files in your WP7 Apps By Jay E. Kimble The Dev Theologian

Slides:



Advertisements
Similar presentations
PCT303 – Content Publishing in SharePoint Eugene Rosenfeld Black Blade Associates
Advertisements

Staying in Sync with Cloud 2 Device Messaging. About Me Chris Risner Twitter: chrisrisner.
Computer Basics Hit List of Items to Talk About ● What and when to use left, right, middle, double and triple click? What and when to use left, right,
SFDC Integration Basics Gerry Winning. Integrating Your Progress App with SFDC Ovid Back Office App is Fully Integrated with SFDC (about two and a half.
Using Evernote and Google Docs in your web or mobile application (and potentially Dropbox and Skydrive) By Peter Messenger Senior Developer – Triple Point.
JamesRH  7 major AWS Services (  Amazon E-Commerce Service (ECS)  Amazon.
Google Confidential and Proprietary Apps 1 Intro to Talk Google Apps.
CS 1114: Data Structures – memory allocation Prof. Graeme Bailey (notes modified from Noah Snavely, Spring 2009)
Network Terminology … Remember: Knowledge is Power!
Linked lists and memory allocation Prof. Noah Snavely CS1114
1 The World Wide Web. 2  Web Fundamentals  Pages are defined by the Hypertext Markup Language (HTML) and contain text, graphics, audio, video and software.
PHP Forms. I. Using PHP with HTML Forms A very common application of PHP is to have an HTML form gather information from a website's visitor and then.
Google App Engine Danail Alexiev Technical Trainer SoftAcad.bg.
Christopher M. Pascucci Basic Structural Concepts of.NET Browser – Server Interaction.
Presented by…. Group 2 1. Programming language 2Introduction.
1 CMSC 628: Introduction to Mobile Computing Nilanjan Banerjee Introduction to Mobile Computing University of Maryland Baltimore County
1 CSCE 4013: Mobile Systems Programming Nilanjan Banerjee Mobile Systems Programming University of Arkansas Fayetteville, AR
1 BRIDGEPAD (BP) SYSTEM TRAINING Adapted for ScoreBridge Users By John de Ridder PSBC Revised 2 November 2009.
INF Web Design Using Multimedia on the Web Sound - Part 2.
ManifoldCF for Content Acquisition
BY SAGAR SINHA SAPTARSHI BAKSHI SARTHAK JAIN SHAILZA CHAUDHARY
Windows Phone 8 uses Microsoft Push Notifications Windows 8/8.1 uses Windows Notification Service Windows Phone 8.1 uses Windows Notification.
M i SMob i S Mob i Store - Mobile i nternet File Storage Platform Chetna Kaur.
Broad set of multitasking features Balances user experience with phone health Familiar.NET programming model.
LiveCycle Data Services Introduction Part 2. Part 2? This is the second in our series on LiveCycle Data Services. If you missed our first presentation,
IT253: Computer Organization
OWASP Top Ten #1 Unvalidated Input. Agenda What is the OWASP Top 10? Where can I find it? What is Unvalidated Input? What environments are effected? How.
Holiday Homework The school building may be closing early but this doesn’t mean that the learning has to stop. You teachers have set you work to do in.
Chapter 6 Server-side Programming: Java Servlets
Chalkboard Challenge Grammar Topics: “The Present Simple & Continuous Tenses"
Using Xcode A Beginner’s Tutorial Erin Green. This tutorial will walk you through Xcode, a software development tool for Apple’s iOS applications – We.
Store your files in the sky Intro to Cloud file storage.
Instructed by: Alex Kogan Performed by: Adam Levi Tal Steier.
web app-to-app picking downloaded files.
Offline Web Apps - an offline web application is a list of URLs for HTML, CSS, JavaScript, images, or any other kind of resource. Most browsers have offline.
API Crash Course CWU Startup Club. OUTLINE What is an API? Why are API’s useful? What is HTTP? JSON? XML? What is a RESTful API? How do we consume an.
End-to-End Performance Analytics For Mobile Apps Lenin Ravindranath, Jitu Padhye, Ratul Mahajan Microsoft Research 1.
Phone Apps and Their Uses By: Deividas Vavilovas.
ELandings Data Extract Mechanisms. Data Extract Options:
FCM Workflow using GCM.
WINDOWS PHONE 7.5 “MANGO” ADVANCED Laurent Bugnion Director of UX Integration IdentityMine
IT1001 – Personal Computer Hardware & system Operations Week7- Introduction to backup & restore tools Introduction to user account with access rights.
WS-CAF Demo A Demonstration of WS-CTX. WS-CAF In A Nutshell Collection of 3 specifications WS-Context, WS-Coordination Framework and WS- Transaction Management.
HOW A COMPUTER PROCESSES DATA. What is hardware? Hardware is the electric, electronic and mechanical equipment that makes up a computer What is software?
Archive Facebook Matthew Kelly Old Dominion University.
UNDERSTANDING YOUR OPTIONS FOR CLIENT-SIDE DEVELOPMENT IN OFFICE 365 Mark Rackley
MAY I’VE SWITCHED ON! So What Happens Next?
Chapter 4 Request and Response. Servlets are controlled by the container.
Cosc 5/4735 Voice Actions Voice Interactions (API 23+)
Your final site CSS WP Hand- code, using TextEdit, TextWrangler, Dreamweaver or any other wysiwyg editor. Site doesn’t require to be hosted Deliver all.
WINDOWS PHONE 7 DEVELOPER GUIDE A guide to 3 screens and the cloud Scott Densmore Sr. Software Development Engineer Microsoft patterns & practices.
Here are some things you can do while you wait 1.Open your omeka.net site in your browser (e.g. 2.Open.
by Ondrej Rafaj Open source and other useful projects for iPhone / iPad.
111 State Management Beginning ASP.NET in C# and VB Chapter 4 Pages
Archive Facebook Matthew Kelly Department of Computer Science Old Dominion University Norfolk, Virginia.
Design for usability E6: Human Factors Design IB Technology.
BY: SALMAN 1.
BY: SALMAN.
Jason Bury Dylan Drake Rush Corey Watt
Set up your own Cloud The search for a secure and acceptable means of gaining access to your files stored at the office from a remote location.
z/Ware 2.0 Technical Overview
Scheduler activations
CS 3305 System Calls Lecture 7.
New Technology Group Meeting
Windows Phone multitasking
Why we should be texting with our customers
Crimson® 3.1 Updates January 2019.
Generate Data with Google Analytics SQL Saturday /04/2019.
Windows Operating System
Presentation transcript:

Strategies for Transferring User Data Files in your WP7 Apps By Jay E. Kimble The Dev Theologian

Disclaimers About This Talk Prescriptive session – not necessarily instructive (Emphasis is on Strategy) I am growing, too Let’s make this a dialog The first 2 demos work in WP7 (& in 7.1) The final is about Background Transfers (Mango only)

Background For WP7.0, I built an app that relies on data files that are end-user supplied This was not a problem for my WinMo app I used –a personally created lib for DropBox (but there are numerous options available) –IsolatedStorage –A third party library to simplified WebRequests

IsolatedStorage IsolatedStorage is –a special storage area on the phone –for data files created by your app –for data files downloaded by your app For WP7 (and WP7.1) there is no other local storage option available

Demo 1: Getting our feet wet Simple demo to download an image file (& display it) –We’ll use WebClient for this –We’ll store the resulting file in IsolatedStorage

Download Queues A Download Queue let’s a user manage the process of which files are downloading It also let’s them start/stop transfers We need a few objects to do this: –FileItem containing name, uri, progress, etc. –Collection of FileItems to choose from –Collection of FileItems that are queued to download –Downloader Object

Demo2: Download Queue Let’s look at an implementation of this

Background File Transfers (Bg Xfers) Simplifies the mess of managing requests Only really needs a URI You do need to handle Tombstoning so your app can remember what was downloading between sessions API is controlled via a single shares object which you add transfer requests to

Download Queue == BG Xfers Best Practice By building the Download Queue we actually took care of all the recommended UI! –The only things missing from our UI is A settings mechanism for the user to control when a transfer can happen –Can it happen on battery? –Can it happen on a Cell Data Connection

Tombstoning Sidenote Tombstoning is the process where the OS tells your app –it will be shutting down to free up memory –an app must save off it’s state immediately A separate set of events fire when an app is restored from tombstoning With Bg Xfers you need to always save the state of the transfers when the app is shutting down normally or Tombstoning

Demo3: Background Transfers This demo will create a new MangoDownloader which will BG Transfers (we can actually download up to 5 items at a time!)

Bg Xfers Caveats/Notes It does not work with all Cloud Services –It doesn’t work with SugarSync’s public storage HTTP/HTTPS only (no FTP.. yet..) It will work with other HTTP verbs (post) You can pass post variables and some headers via properties in the Transfer Object Different types of connections have size limitations (be aware of this.. You aren’t downloading a 100mb file on a 3g connection!)

Resources BG Xfers –See the docs on MSDN (especially the best practices Fla-wimo-dev.groups.live.com Joe’s wiki –dfwiki.devfish.net Wp7dev.wikispaces.com