최근에 8.1 Silverlight로 업그레이드 한 Windows Phone 8 응용 프로그램이 있습니다. 새로운 타일 템플릿을 사용하고 싶습니다. 지금은 ShellTile을 사용하는 ScheduledTaskAgent가 있습니다.Windows Phone 8.1 라이브 타일 배경 작업
새 라이브 타일을 사용하기 위해 WMAppManifest.xml에서 알림 서비스를 WNS로 변경했습니다. 나는 오래 된 배경 작업을 등록하는 코드를 제거하고 대신에이 코드를 추가 :
public sealed class LiveTileBackgroundTask : IBackgroundTask
{
public void Run(IBackgroundTaskInstance taskInstance)
{
BackgroundTaskDeferral deferral = taskInstance.GetDeferral();
const string xml = "<tile>"
+ "<visual>"
+ "<binding template='TileWideText01'>"
+ "<text id='1'>Text Field 1 (larger text)</text>"
+ "<text id='2'>Text Field 2</text>"
+ "<text id='3'>Text Field 3</text>"
+ "<text id='4'>Text Field 4</text>"
+ "<text id='5'>Text Field 5</text>"
+ "</binding> "
+ "</visual>"
+"</tile>";
XmlDocument doc = new XmlDocument();
doc.LoadXml(xml);
TileNotification tileNotification = new TileNotification(doc);
TileUpdateManager.CreateTileUpdaterForApplication().Update(tileNotification);
deferral.Complete();
}
}
내가 추가 :
var backgroundAccessStatus = await BackgroundExecutionManager.RequestAccessAsync();
if (backgroundAccessStatus == BackgroundAccessStatus.AllowedMayUseActiveRealTimeConnectivity ||
backgroundAccessStatus == BackgroundAccessStatus.AllowedWithAlwaysOnRealTimeConnectivity)
{
foreach (var task in BackgroundTaskRegistration.AllTasks)
{
if (task.Value.Name == "LiveTileBackgroundTask")
{
task.Value.Unregister(true);
}
}
BackgroundTaskBuilder taskBuilder = new BackgroundTaskBuilder();
taskBuilder.Name = "LiveTileBackgroundTask";
taskBuilder.TaskEntryPoint = "BackgroundTasks.LiveTileBackgroundTask";
taskBuilder.SetTrigger(new TimeTrigger(15, false));
var registration = taskBuilder.Register();
}
가 나는 윈도우 폰 8.1 Windows 런타임 구성 요소가 BackgroundTask가 LiveTileBackgroundTask
라는 포함 BackgroundTasks
라고 만든 내 Windows Phone 프로젝트에서이 어셈블리에 대한 참조.
엔트리 포인트가 BackgroundTasks.LiveTileBackgroundTask
인 내 Package.appxmanifest에 백그라운드 작업 선언을 추가했습니다. 타이머 및 시스템 이벤트를 지원되는 작업 유형으로 선택했습니다.
그러나 앱을 실행해도 아무런 변화가 없습니다. 라이브 타일이 표시되지 않습니다. 나는 백그라운드 작업을 통해 도망 갔고 모든 것이 예외없이 잘되었다.
안녕하세요, 백그라운드 작업 대신 포 그라운드에서 타일을 업데이트 해 보셨습니까? 내가 물었던 이유는 전경에서 타일을 업데이트 할 수 없기 때문입니다 ... –
안녕 신화, 나는 그것을 시도하고 그것도 작동하지 않았다. –
이 하나의 http : // stackoverflow를 살펴보십시오.com/questions/23589479/new-live-tiles-dont-work-in-windows-phone-silverlight-8-1-apps –