23. public async Task ActivateAsync(ShareTargetActivatedEventArgs args)
{
if (args.Kind == ActivationKind.ShareTarget)
{
shareOperation = args.ShareOperation;
txtTitle.Text = shareOperation.Data.Properties.Title;
txtDesc.Text = shareOperation.Data.Properties.Description;
if (shareOperation.Data.Contains(StandardDataFormats.Text))
{
string text = await this.shareOperation.Data.GetTextAsync();
if (text != null)
{
txtText.Text = text;
}
}
}
}
24. DataTransferManager
DataTransferManager
new Data
TransferManager DataRequestedEventArgs
//[OPTIONALLY] If application makes distinction between target
applications, subscribe to this event
//[OPTIONALLY] Force showing share UI
DataTransferManager
25. private async void DataTransferManager
DataRequestedEventArgs
"Sample share source app"
"Spread the word about this lovely application"
RandomAccessStreamReference new Uri "ms-
appx:///Images/Love.png"
"Sample text"
RandomAccessStreamReference new Uri "ms-
appx:///Images/test.png"
26.
27.
28.
29.
30.
31. Capabilities Seamless Performant
driven data access
High isolation Data Native
Roaming platform
45. Uri logo = new Uri("ms-appx:///images/LoveIcon.png");
Uri wideLogo = new Uri("ms-appx:///images/WideSecondary.png");
SecondaryTile secondaryTile = new
SecondaryTile("LiveTilesAndToastsSample.SecondaryTile",
"Secondary tile",
"Secondary tile from app",
"argumets=Alex,123",
TileOptions.ShowNameOnWideLogo |
TileOptions.ShowNameOnLogo,
logo,
wideLogo);
bool isPinned =
await secondaryTile.RequestCreateForSelectionAsync(
new Rect(10,10,100,100));
51. var pushNotificationChannel = await
PushNotificationChannelManager.CreatePushNotificationChannelFor
ApplicationAsync();
var channelUri = pushNotificationChannel.Uri;
//Optional channel for Secondary tile
if (SecondaryTile.Exists(SecondaryTileID))
{
var secondaryPushNotificationChannel = await
PushNotificationChannelManager.CreatePushNotificationChannelFor
SecondaryTileAsync(SecondaryTileID);
var secondaryChannelUri =
secondaryPushNotificationChannel.Uri;
}
This slide is hidden.. Do start with a demo of Windows 8, but don’t show the slide. Demonstrate mostly the Windows Start Menu ( aka the shell ). Make sure you use touch … Highlight the following points Windows 8 Experience Full screen apps Live tiles Alive and in motion Action: Drag & rearrange tiles Semantic Zoom in Start Menu Search Personalize Windows Swap across process Pin an app Charms
Create a Camera Capture UI demo. Seamless integration with devices and OS resources.
Installation process:From the store, you will trigger an install.. This pulls the bytes from the cloud, validates it, and installs it.. Installation is per user.. [windows traditionally has been per machine].. Behind the scenes, we have a single instance store.. So the apps are installed once.. The registration is per user.. Extension handlers.. System handles setup and uninstall automatically – allows us to guarantee that installed app will not be making permanent changes – nothing left after uninstall.Download app package (zip) goes to package manager
The app package (Appx) is abb OPC file ( a zip) The package It includes anything necessary to deploy or uninstall – It includes capabilities and declartions so we know the impact in the system. In the package you will see JS files etc. If in C++ see .dll files and what you would expect. Blockmap is a series of hashes for each block in your package. Combination of signature + blockmap verifies the package.. It can be validated as it comes off-the wire… we don’t have to download the whole thing..
Talking about appdata specifically, will talk about user data later when we look at skydrive, etc.Slide 8 from PLAT-475T
Key, app does not have to do much – whole infrastructure built for you.Writes local and system takes care of the rest – some limitations, we will cover later.Slide 8 from PLAT-475T