2013-04-13 37 views
0

我開發了一個Windows 8應用程序,它使用後臺任務來檢索數據並激活實時切片功能。它一切正常,但我需要去應用程序設置,並手動打開它,以使其工作。是否有可能以編程方式請求用戶激活?這裏是我的代碼:如何從用戶請求pesmision來激活後臺任務?

private void checkTaskRegistration() 
     { 
      bool isTaskRegistered = false; 

      foreach (var task in BackgroundTaskRegistration.AllTasks) 
      { 
       if (task.Value.Name == "TileUpdater") 
       { 
        isTaskRegistered = true; 
        break; 
       } 
      } 

      if (!isTaskRegistered) 
      { 
       registerBackgroundTask("TileUpdater", "BackgroundTasks.TileUpdaterBackgroundTask"); 
      } 
     } 

     private void registerBackgroundTask(string name, string entrypoint) 
     { 
      BackgroundTaskBuilder btb = new BackgroundTaskBuilder(); 
      btb.Name = name; 
      btb.TaskEntryPoint = entrypoint; 
      btb.SetTrigger(new TimeTrigger(15, false)); 
      btb.AddCondition(new SystemCondition(SystemConditionType.InternetAvailable)); 
      BackgroundTaskRegistration task = btb.Register(); 
     } 

首先我檢查任務是否已經註冊,如果不是我註冊它。

回答

1

我找到了。您只需致電:

BackgroundExecutionManager.RequestAccessAsync(); 

就是這樣。