building apps that integrate with people and events

Post on 24-Feb-2016

37 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

DESCRIPTION

Building apps that integrate with people and events. Zainab Hakim Program Manager 3-007. Agenda. Connecting with people. Integrating with calendar. App + code demos. “Contracts”. Windows Store apps use contracts to declare interactions they support with other apps and with Windows. . - PowerPoint PPT Presentation

TRANSCRIPT

Building apps that integrate with people and eventsZainab HakimProgram Manager3-007

• Connecting with people.• Integrating with calendar.• App + code demos.

Agenda

Windows Store apps use contracts to declare interactions they support with other apps and with Windows.

“Contracts”

Connecting with people.

The people we communicate

and share with are important

to how we use modern devices.

7/19/2013

“There is no easy way for me to lookup my contacts and interact with them from any of the other Windows Store apps!”

Contact card: App demo

Contact card workflowContact card

Source app

• App with contact info that starts the flow to show contact card.

My demo app Target app

• App that fulfils the contract to handle one or more actions.

Windows Contacts Store

• Aggregates and manages contacts.

• Provides contacts data to Windows.

Windows runtime

Match found!

Query

View Profile

No match

Add Contact Action type + object

Great user experience

Contextual.Consistent.Lightweight.

♥ Your activity was loved by Ben Miller

View Profile

Puts user in control

“57% of all app users have either uninstalled an app over concerns about having to share their personal information, or declined to install an app for similar reasons”—Survey conducted by Pew Research Center’s Internet & American Life Project.

Hey Jake, give me a call Later.(206) 555-0134

Meaningful data and actions• Email• Call• Message• Video call• Map address• Post View Profile View Profile

Meaningful data and actions• Email• Call• Message• Video call• Map address• Post

Add Contact

View Profile

View Profile

View Profile

View Profile

What apps should use the contact card?

Social groups (class, club, sports, etc.).Maps and location.Event management.Mail and messaging.Birthday assistants.Fitness tracking and sharing.Career and job search.Dating and matrimony.

Email, phone

Has rich people data

Imports people data

Using APIs:ContactManager.showContactCard

Contact card: code demo

1. Create input contact object.2. Get the rectangular area of user

selection.3. Optionally, specify a preferred

placement of the contact card.

ContactManager.showContactCard

Query and show Contact Card

Use only if your app needs to retrieve contact data with a noticeable delay.

ContactManager.showDelayLoadedContactCard

Query and show Contact Card

Pluggable model for appsAction Target Apps

Holly Holt

View Profile

Use the Windows Contact Card to easily bring the power of people into your apps.

Integrating with Calendar.

Get events into my Calendar

Weekend in Vancouver

Calendar: App demo

View Calendar workflow

• App that starts the flow to view availability in user’s Calendar.

• Main view activation. App launched along-side source app in the requested timeframe.

Your app Windows runtime

Calendar provider app

Your app

Add to Calendar workflow

Start the flow to add event to Calendar.

Calendar provider app

Appointment is saved to Calendar provider app.

Body: Hosted view activation of Calendar provider app’s UI in fly-out.

Header: Windows UI showing Calendar provider app’s name and logo.

Windows runtime

Calendar ▼ zhakim@outlook.com

Frank's Birthday Party7/6/2013 6:00PM – 11:00PMBen Miller’s home118 Christopher St,New York, NY 10011

Organizer – Ben MillerThis is a surprise birthday party for Frank! Hoping you all you can join...

Demo Calendar

Launch action verb+

Appt. object

Using APIs:AppointmentManager.showTimeFrameAsyncAppointmentManager.showAddAppointmentAsync

Calendar: code demo

1. Input parameters.- timeToShow- duration

2. No result returned.

AppointmentManager.showTimeFrameAsync

View Calendar

1. Create input appointment object.2. Get the selection rect. of the

invocation point.3. Optionally, specify a UI placement.4. Returns unique id for the added

appointment.

AppointmentManager.showAddAppointmentAsync

Add to Calendar

4. Additionally, provide the appointment Id for the appointment to be replaced.

5. Returns unique id for the replaced appointment.

For recurring appointments, also specify the instance start date of the appointment instance to be replaced.

AppointmentManager.showReplaceAppointmentAsync

Update Calendar

1. Provide the appointment Id for the appointment to be removed.

2. Returns a boolean indicating whether the appointment was removed or not.

AppointmentManager.showRemoveAppointmentAsync

Remove from Calendar

Use appointment APIs to easily integrate events with your user’s Calendar.

Call to action

Hey Jake, give me a call Later.(206) 555-0134

Call to actionYour app

Calendar Provider App

Calendar ▼ zhakim@outlook.com

Frank's Birthday Party7/6/2013 6:00PM – 11:00PMBen Miller’s home118 Christopher St,New York, NY 10011

Organizer – Ben MillerThis is a surprise birthday party for Frank! Hoping you all you can join...

ResourcesMSDN documentation• Windows.ApplicationModel.Contacts.ContactManager • Windows.ApplicationModel.Appointments • Windows.ApplicationModel.Appointments.AppointmentsProvider • Windows.ApplicationModel.Activation SDK samples• Contact manager API sample.• Contact picker app sample.• Handling contact actions.• Appointments API sample.

Evaluate this session

Scan this QR code to evaluate this session and be automatically entered in a drawing to win a prize!

© 2013 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

top related