Совместное использование в Windows 8
Я столкнулся с проблемой, что Sharing в Windows 8 очень глючит. Потому что я скачал образец из MSDN "Образец приложения для общего доступа к контенту", и он несколько раз работал нормально (скажем, 3). В 4 раза, когда я запускал образец, он показывает:
Не могу поделиться в данный момент (интернет включен и почтовые аккаунты подключены)
В 5 раз он генерировал почтовый контент, но не мог отправить, и так далее.
Так что в моем собственном приложении я видел ту же картину. Кто-нибудь может сказать, в чем проблема?
Специально для этого я создал небольшое приложение:
public sealed partial class MainPage : Page
{
DataTransferManager dtm;
public MainPage()
{
this.InitializeComponent();
}
protected override void OnNavigatedTo(NavigationEventArgs e)
{
dtm = DataTransferManager.GetForCurrentView();
dtm.DataRequested += OnDataRequested;
}
protected override void OnNavigatingFrom(NavigatingCancelEventArgs e)
{
dtm.DataRequested -= OnDataRequested;
base.OnNavigatingFrom(e);
}
private async void OnDataRequested(DataTransferManager sender, DataRequestedEventArgs e)
{
DataRequestDeferral deferral = e.Request.GetDeferral();
var file = await Windows.ApplicationModel.Package.Current.InstalledLocation.GetFileAsync(@"shareappemail.html");
var stream = await file.OpenReadAsync();
var rdr = new StreamReader(stream.AsStream());
var contents = await rdr.ReadToEndAsync();
DataPackage requestData = e.Request.Data;
requestData.Properties.Title = "MyAppTitle";
requestData.Properties.Description = "ShareWithSomebody"; // The description is optional.
requestData.SetHtmlFormat(HtmlFormatHelper.CreateHtmlFormat(contents));
deferral.Complete();
}
}
shareappemail.html - это просто какой-то html шаблон письма.
И этот код не работает... Может кто-нибудь сказать, что не так? (Даже приложение Microsoft Photo не делится...)