2012-07-10 3 views
0

WP7 라이브 타일을 처리하기 위해 정기적 인 작업을 등록하면 30 분마다 한 번 이상 업데이트되지 않습니다. 그러나 사용자가 앱을 종료 할 때마다 백그라운드 에이전트가 작동하는 데이터를 업데이트하고 싶습니다.앱 내에서 백그라운드 에이전트 실행하기

내 시나리오는 플래너의 첫 번째 항목을 표시하는 라이브 타일을 가지고 있으며 사용자가 앱 내에서 수행하는 작업에 따라 해당 플래너가 항목을 삭제하거나 새 것을 맨 앞에 표시 할 수 있습니다. 라이브 타일을 오래된 정보로 표시하는 것은 그리 매력적이지 않습니다.

가능한가요? 그렇다면 어떻게해야합니까?

+0

에이전트를 더 빨리 실행할 수 없습니다. 하지만 배경 에이전트가 앱 내에서 무엇을 하던지간에 (언제든지 종료 할 때와 같이 원하는 경우 언제든지 할 수 있습니다. 종료 할 때 제한된 시간이 있긴하지만). –

+0

그래서 기본적으로 응용 프로그램에서 직접 라이브 타일을 만들 수 있습니까? 어지간한. –

답변

0

나는 이것이 당신이 찾고있는 것인지 모르겠다.

내 앱이 사용자가 앱을 종료 할 때 앱을 업데이트합니다. 그런데 사용자가 며칠 동안 앱을 열지 않으면 업데이트되지 않는 등의 문제가 발생했습니다.

protected override void OnBackKeyPress(System.ComponentModel.CancelEventArgs e) 
    {    
     ShellTile PrimaryTile = ShellTile.ActiveTiles.First(); 
     StandardTileData tile = new StandardTileData(); 

     if (PrimaryTile != null) 
     { 
      tile.BackTitle = resMan.GetString("liveTileTitle"); 
      tile.BackBackgroundImage = new Uri("/Background.png", UriKind.Relative); 


      if (pCycMan.GetStartDate() == pCycMan.GetDefaultDate()) 
      { 
       tile.Title = resMan.GetString("liveTileNotTrackingStatus"); 
      } 
      else 
      { 
       tile.Title = App.m_liveTileText; 
      } 

      PrimaryTile.Update(tile); 
     } 
    } 
+0

@KrisSelbekk 답변을 업데이트했습니다. 사용자가 앱을 종료 할 때마다 PeriodicTask가 가져 오는 데이터를 업데이트 할 수 있습니다. 내가 한 것은 타일을 직접 업데이트하는 것입니다. – alfah