2012-11-20 2 views
0

방금 ​​Visual Studio에서 "탐색 응용 프로그램"프로젝트를 만들었고 실제로 업데이트 할 실제 타일을 얻으려고합니다. 이것은 내가 내 default.js에있는 것입니다 : 다음,Visual Studio를 사용하는 응용 프로그램에서 Windows 8 응용 라이브 타일이 업데이트되지 않습니다.

(function() { 
    "use strict"; 

    WinJS.Binding.optimizeBindingReferences = true; 

    var app = WinJS.Application; 
    var activation = Windows.ApplicationModel.Activation; 
    var nav = WinJS.Navigation; 

    // init notifications to live tile 
    var notif = Windows.UI.Notifications; 
    var tileUpdater = notif.TileUpdateManager.createTileUpdaterForApplication(); 
    var recurrence = notif.PeriodicUpdateRecurrence.halfHour; 
    var updateTileUrl = "http://bakersdozen13.lfchosting.com/img.xml"; 
    var url = new Windows.Foundation.Uri(updateTileUrl); 
    tileUpdater.startPeriodicUpdate(url, recurrence); 

    app.addEventListener("activated", function (args) { ... }); // the js that came w/ the project template 

    ... 

})(); 

나는 그것을 실행 F5를 누르 대시 보드 윈도우 8 시작 화면 내 타일에 타일을 체크 아웃, 그것은 그냥 아무것도 다른 내 로고가 . 내가 뭘 놓치고 있니? 알림 스 니펫을 다른 위치에 두어야합니까?

시, 이것은 XML은 그 업데이트 URI에서 반환 얻고있는 것이다 :

<tile> 
    <visual> 
    <binding template="TileWideSmallImageAndText03"> 
     <image id="1" src="http://cdn.godvine.com/uploads/2012/11/image_1353288711_abandoned_church_1.jpg" alt="img alt text here"/> 
     <text id="1">Dying Man Gets a Miracle in Abandoned Church</text> 
    </binding> 
    <binding template="TileSquarePeekImageAndText04"> 
     <image id="1" src="http://cdn.godvine.com/uploads/2012/11/image_1353288711_abandoned_church_1.jpg" alt="img alt text here"/> 
     <text id="1">Dying Man Gets a Miracle in Abandoned Church</text> 
    </binding> 
    </visual> 
</tile> 

답변

0

모든 것이 잘 보인다. SDK의 Push and Periodic Notifications 샘플에서 URL을 시도했는데 타일 업데이트가 정상적으로 처리되었으므로 XML에는 아무런 문제가 없습니다. 그런 다음 단계를 수행했습니다. 새로운 Nav 앱 프로젝트가 코드에 붙여 넣어졌으며 VS에서 실행되었습니다. 타일이 시작 화면에 표시되는 데 몇 초가 걸렸지 만 한 번 타일 업데이트가 예상대로 나타납니다.

간단히 말해,이 기능을 사용하면 문제가 없습니다.

활성화 된 처리기 내에 코드를 넣을 수 있습니다. VS에서 배포하는 방식과 타일을 만드는시기 사이에는 경쟁 조건이 존재할 수 있습니다. VS의 Build 메뉴에서 Deploy 명령을 시도해 볼 수 있습니다.이 메뉴는 실행하려고하는 것과 별도로 앱을 설치해야합니다. 그런 다음 타일에서 실행하고 앱이 실행 된 후 돌아가서 시작 화면을 봅니다.

넓은 정적 타일 이미지가 없기 때문에 XML의 와이드 타일 업데이트는 기본 앱 프로젝트에서 무시됩니다. 즉, 라이브 와이드 타일을 사용하려면 매니페스트에 와이드 타일 이미지를 포함해야합니다. 그렇지 않으면 XML 페이로드의 해당 부분이 무시됩니다.

+0

배포하려면 어떻게해야합니까? 그런 다음 deploye'd 앱을 실행 하시겠습니까? 어쩌면 그걸 시도해 볼 수도 있습니다. 활성화 된 핸들러에서 w /로 코드를 이동했는데 아무 소용이 없었습니다. –

+0

및 "SDK의 푸시 및 정기 알림 샘플에서 URL을 시도했습니다."- 무슨 뜻입니까? 이 속성은 프로젝트 설정이나 다른 곳에서 제공 한 속성입니까? 나는 단지 속성에 들어가서 URL, 빈도를 제공하고 그것을 완료하는 것을 좋아할 것입니다. –

+0

내가 언급 한 샘플은 다음과 같습니다. http://code.msdn.microsoft.com/windowsapps/Push-and-periodic-de225603. 그것은 당신에게 서비스를 테스트 할 수있는 일하는 클라이언트를 제공합니다. 그러나 앱은주기적인 알림을 설정하기 위해 WinRT API 자체를 호출해야합니다. VS에서 앱을 실행하는 것으로 충분하지만 Andre가 제안한대로 수동으로 제거하고 싶을 것입니다. –

0

Visual Studio로 개발하고 배포 한 응용 프로그램에서 비슷한 문제가있었습니다. 이 앱에는 처음에는 라이브 타일이 없습니다. 나중에 라이브 타일에 대한 코드를 추가하면 타일이 업데이트되지 않습니다.

내 솔루션은 (시작 화면의 응용 프로그램 표시 줄을 통해) 응용 프로그램을 제거하고 다시 배포하는 것이 었습니다. 그 때 모든 코드를 수정하지 않고도 정상적으로 작동했습니다.

+0

나는 아무 소용이 그것을 시도 :/어디서 알림 코드를 넣었 니? –