Date post: | 16-Dec-2014 |
Category: |
Technology |
Upload: | samidip-basu |
View: | 766 times |
Download: | 1 times |
Local Touch – Global Reach
www.us.sogeti.com
Samidip BasuManager| Columbus ADI PracticeSolutions Lead | MSFT MobilityEmail: [email protected]: @samidipInfo: http://samidipbasu.infoBlog: http://samidipbasu.com Sogeti USA8425 Pulsar Place, Suite 300 | Columbus, OH 43240. www.us.sogeti.com
The Pragmatic Windows Phone Developer
Central Ohio Windows Phone User Grouphttp://cowpug.orghttp://meetup.com/cowpug@cowpug3rd Monday @ TechColumbus
3www.us.sogeti.com
Local Touch – Global Reach
What’s on the plate? .. Ok, way too much!
Windows Phone – The Platform & Design Decisions
SDK, Emulator Improvements & Marketplace Pitfalls
Let’s Peel Mango
Getting back to your hot wife or girlfriend - aka Push Notifications
Push Notifications from the cloud [Demo/Walkthrough]
Shopping List App with Mango features [Demo/Walkthrough]
StirTrek App with hints of MVVM [Demo/Walkthrough]
Introduction to OData
Browse Netflix with me [Demo/Walkthrough]
MVC3, EF 4.1, SQL Azure, OData & WP7 all play together [Demo/Walkthrough]
Azure Toolkit for WP7/iOS [Demo of template solution]
August WP7 Sweepstakes -- http://www.windowsphone7event.com/contest/ContestIndex.aspx Free unlocked Samsung Focus or Free Marketplace Reg!
4www.us.sogeti.com
Local Touch – Global Reach
WP7 Experience
Different, For Good Reasons
Smart Design
Integrated Experiences
6www.us.sogeti.com
Local Touch – Global Reach
CLOUD
SCREEN
Phone Emulator
Samples Documentation
Guides Community
Packaging and Verification Tools
Notifications
Location Identity Feeds
MapsSocial
App Deployment Registration
Validation
Certification
Publishing
Marketplace
MO and CC Billing
Business Intelligence
Update Management
Elements of the Application Platform
Tools
Portal ServicesCloud Services
Sensors Media Data
Xbox LIVE Notifications
.NET Framework managed code sandbox
Location
Phone
Runtime – On “Screen”
Two Flavors of Applications
9www.us.sogeti.com
Local Touch – Global Reach
Mango !! [Confirmed Features]
500 new features
Message Threading by contact
Live Messenger & Facebook chats
Group support for people hub
Deeper social integration thru Twitter & LinkedIn
Linked (multiple) Inboxes
Conversational email view
Voice commands for messaging
Deep-linked apps in Search results
Livelier Secondary Live Tiles with back flip information
Enhanced & more reliable Push Notifications for Deep-linked Toasts & Tiles
IE9 .. nuf said
Web-based WP Marketplace
10www.us.sogeti.com
Local Touch – Global Reach
Mango !! [Confirmed Features] .. Contd.
Bing vision, voice & music searches
Quick Cards in search results include apps & info
Local scout in Bing
Multitasking, new app state & fast app switching
Background agents to schedule actions
Background audio
New sensors - compass, gyroscope & the combined motion API
Sockets for IM & multi-player games
Enhanced access to camera feed
Silverlight & XNA Integration
Application Profiling
Enhanced emulator
Local DB & Linq to SQL
Encrypted credentials store
Stronger partner ecosystem; more countries
11www.us.sogeti.com
Local Touch – Global Reach
Mango !! .. Oh, the rumors.
Tethering .. curse the carriers
4G
Bing Turn-by-Turn directions – In for sure
Front-facing cameras – Supported; Skype & Lync clients coming soon
12www.us.sogeti.com
Local Touch – Global Reach
It’s not always Sunny & 73o !!
13www.us.sogeti.com
Local Touch – Global Reach
Push Notifications
14www.us.sogeti.com
Local Touch – Global Reach
Push Notifications Contd.
Notification types – Live Tile Update, Toast or Raw; depending on type, notification is sent either to App or Shell.
Tile – visual dynamic representation of application content within phone’s start page, if pinned by user (through Context Menu); ongoing communication to user based on frequency of cloud service actions; the backend cloud service can control a tile’s background image (may be expensive if no local resource) & counter, as configured.
Toast – displays notification as an overlay onto user’s current screen; intrusive & hence to be used sparingly; user may touch to launch application; cloud service may control title & subtitle of toast; appropriate for peer-to-peer apps; users have to have an explicit option to agree to toasts.
Toast and Tile notification are system defined notification in Windows Phone 7 platform.
Raw – App can receive messages from cloud constantly using PN; eliminates need for custom code to have persistent connection open with backend cloud service; only possible if app running in foreground.
15www.us.sogeti.com
Local Touch – Global Reach
Push Notifications Contd.
For now, 3rd party apps are not permitted to run in the background for efficiency reasons [changes in Mango]; hence need for communication channel from backend services so that apps need not be kept running to receive updates or keep polling & in turn draining battery.
Push Notification service (MPNS) is designed to provide a cloud service with a dedicated & persistent channel for pushing notifications to interested mobile devices. Interacts with carrier networks.
When a cloud service needs to inform user of something “interesting”, it sends a notification request to PN service. PN, in turn, routes the notification to subscribing devices as a Toast or Tile notification.
Enhanced Push Notifications in Mango – Improved TDET detection, Fast resume of channel, Max channels up to 30 now and API enhancements to handle multiple 2-sided tiles & deep-linked Toasts.
16www.us.sogeti.com
Local Touch – Global Reach
What is… the Cloud for a Mobile Developer?
A style of computing where massively scalable IT-enabled capabilities are delivered ‘as a service’ to external customers using Internet technologies.- Gartner
Cloud computing is Internet-based computing, whereby shared resources, software, and information are provided to computers and other devices on demand, like the electricity grid.-Wikipedia
A way of delivering value and monetization efficiency.- Jonathan Appavoo
The notion of data and applications and hardware sources being accessed remotely.- Kartik Hosanagar
In a recent Economist survey, 20 years ago your typical knowledge worker got 80 percent of the info needed to do their job came from inside the company. Today, it’s completely flipped. Cloud computing is the technical response to this reality.- Anthony Arrott
Cloud is the worst buzzword I’ve ever heard. Vapor, something you can’t touch. I think it’s a lot of hype, but then again, here I am offering that service.- Vance Checkletts
17www.us.sogeti.com
Local Touch – Global Reach
Huh .. say that again?
The Cloud is just another place to host your code/stuff, but you are billed like a utility.
Augment your Mobile Solutions with cloud support.
State of the web
Practicality?
Windows Azure Boot Camp WindowsAzureBootCamp.com
In preparation for today’s Boot Camp, please take a moment to ensure you have registered for the 30-day free Windows Azure platform pass:
Need to Register?•Go to www.windowsazurepass.com•Select your Country and Enter Promo Code: “DPCE01”•Login with your Windows Live ID and complete the registration information
Already Registered but haven’t received confirmation email?•Go to https://windows.azure.com•Login with your Windows Live ID
19www.us.sogeti.com
Local Touch – Global Reach
Windows Azure Components
Virtualized Computation provides massive application scalability. Customers can build a combination of web and worker roles. Those roles can be replicated as needed to scale the applications and computational processing power.
Storage Services allow customers to scale to store large amounts of data – in any format – for any length of time, only paying for what they use or store.
Service Management is performed by the Fabric Controller, which controls all the resources within the data center. The Fabric Controller deploys your service and monitors the overall health of the fabric.
Security and Control State-of-the-art physical security processes combined with strictly controlled OS access model. Data is replicated in multiple fault domains in location selected by the customer.
State-of-the-art data centers located around the world. Host your applications and data securely, accessible from everywhere you allow.
20www.us.sogeti.com
Local Touch – Global Reach
Web and Worker Roles
WEB ROLE
•Interacts with end-user or web services
•Communicate with worker roles directly or via queues
WORKER ROLE
•Initiates their own requests for data or tasks from the queue
•Similar to a "batch job” or Windows service
• Build services and solutions with any combination of Web and Worker Roles
• Communicate via HTTP/HTTPS, TCP/IP, and ports other than 80 and 443
• Develop with Microsoft and non-Microsoft tools: ASP.NET, WCF, other .NET tools, Java, Python, Ruby, etc.
21www.us.sogeti.com
Local Touch – Global Reach
Storage Services
• Windows Azure storage is an application managed by the Fabric Controller
• Windows Azure applications can use native storage, MySQL within a VM, or SQL Azure
• Application state is kept in storage services, so worker roles can replicate as needed
• Blobs can be stored in global Windows Azure Content Delivery Network (CDN)
22www.us.sogeti.com
Local Touch – Global Reach
SQL Azure
Benefits of SQL Azure:•Unlimited, automated scaling •Self managing, self healing •Automatic failover•Multi-tenant•Low friction provisioning•Pay as you consume•Business Ready SLA
23www.us.sogeti.com
Local Touch – Global Reach
O(h my ) Data
“In very simple terms, OData is a resource-based Web protocol for querying and updating data. OData defines operations on resources using HTTP verbs (PUT, POST, UPDATE and DELETE), and it identifies those resources using a standard URI syntax. Data is transferred over HTTP using the AtomPub or JSON standards. For AtomPub, the OData protocol defines some conventions on the standard to support the exchange of query and schema information. (Source: MSDN Magazine, June 2010 Issue)”
Services that expose their data using the OData protocol are referred to as OData producers, and clients that consume data exposed using the OData protocol are referred to as consumers. Head over to http://odata.org for more information about Odata, a list of current producers & consumers and what all this means for developers.
The OData protocol enables access to information from a broad range of clients. At present, there are client libraries available for Windows Phone 7, iPhone, Silverlight 4, PHP, AJAX/Javascript, Ruby, or Java.
Local Touch – Global Reach
www.us.sogeti.com
Questions?
Thank you !!