2015-01-05 4 views
0

В настоящее время я пытаюсь загрузить изображение, сохранить его в папку в контейнере LocalStorage, а затем использовать его как фрагмент. Однако каждый раз, когда я пытаюсь это сделать, плитка просто пустая. Все есть название приложения и заголовок.Веб-образ как плитка из локального хранилища

Я не могу проверить, произошло ли это, потому что изображение не сохранено правильно или потому, что URI неверен.

var localFolder = Windows.Storage.ApplicationData.Current.LocalFolder; 
var channelFolder = await localFolder.CreateFolderAsync(_currentChannel.Name, CreationCollisionOption.OpenIfExists); 

var thumbnail = RandomAccessStreamReference.CreateFromUri(new Uri(_currentChannel.Logo)); 
var remoteFile = await StorageFile.CreateStreamedFileFromUriAsync("profilePicture.jpeg", new Uri(_currentChannel.Logo), thumbnail); 
await remoteFile.CopyAsync(channelFolder, "profilePicture.jpeg", NameCollisionOption.ReplaceExisting); 

string tileXmlString = "<tile>" 
+ "<visual>" 
+ "<binding template='TileSquareText04'>" 
+ "<image id='1' src='ms-appdata:///local/" +_currentChannel.Name + "/profilePicture.jpeg'>" + "</image>" 
+ "<text id='1'>" + "Latest Image" + "</text>" 
+ "</binding>" 
+ "</visual>" 
+ "</tile>"; 

Windows.Data.Xml.Dom.XmlDocument tileDOM = new Windows.Data.Xml.Dom.XmlDocument(); 
tileDOM.LoadXml(tileXmlString); 
TileNotification tile = new TileNotification(tileDOM); 
TileUpdateManager.CreateTileUpdaterForApplication().Update(tile); 

_currentChannel.Logo - это строка с URL-адресом для изображения в формате jpeg.

В конечном итоге я получаю прозрачную плитку.

ответ

1

После запуска кода вы сможете увидеть, находится ли изображение в папке \ AppData \ Microsoft \ Packages \\ Local. Если нет, то проблема с загрузкой. Если он есть, убедитесь, что он равен 200 КБ или меньше, а 1024 пикселей или меньше в обоих измерениях. Это пределы для изображений с черепицей, которые, если они превышены, приведут к тому, что изображение не появится. В этом случае вам нужно будет перепрограммировать изображение.

Вы также должны проверить свой код обновления плит отдельно с помощью известного небольшого изображения, например. что-то в пакете, используя URI ms-appx или удаленное изображение с URI http. Если они не работают, то ваш код обновления является подозрительным. Проверьте наличие ошибок или исключений из этого раздела вашего кода.

Смежные вопросы