Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Windows phone 7 升级后如何停止活动磁贴计划_Windows Phone 7_Live Tile - Fatal编程技术网

Windows phone 7 升级后如何停止活动磁贴计划

Windows phone 7 升级后如何停止活动磁贴计划,windows-phone-7,live-tile,Windows Phone 7,Live Tile,我有一个Windows Phone 7应用程序,当前使用Live Tile时间表进行更新 新版本的应用程序使用后台任务更新互动程序 但是,在手机上升级应用程序后,如果主磁贴上已运行磁贴计划,则不会停止更新 如果磁砖计划正在运行,我需要停止它 创建新计划并停止它不起作用: var t = new ShellTileSchedule() { MaxUpdateCount = 1, Recu

我有一个Windows Phone 7应用程序,当前使用Live Tile时间表进行更新

新版本的应用程序使用后台任务更新互动程序

但是,在手机上升级应用程序后,如果主磁贴上已运行磁贴计划,则不会停止更新

如果磁砖计划正在运行,我需要停止它

创建新计划并停止它不起作用:

var t = new ShellTileSchedule()
                {
                    MaxUpdateCount = 1,
                    Recurrence = UpdateRecurrence.Onetime,
                    StartTime = DateTime.Now,
                    RemoteImageUri = new Uri("http://mysite.com/livetile.png"),
                };
t.Start();
t.Stop();
ShellTile mainTile = ShellTile.ActiveTiles.FirstOrDefault();
t = new ShellTileSchedule(mainTile)
                    {
                        MaxUpdateCount = 1,
                        Recurrence = UpdateRecurrence.Onetime,
                        StartTime = DateTime.Now,
                        RemoteImageUri = new Uri("http://mysite.com/livetile.png")
                     };
t.Start();
t.Stop();
在活动磁贴中的主磁贴上创建新明细表无效:

var t = new ShellTileSchedule()
                {
                    MaxUpdateCount = 1,
                    Recurrence = UpdateRecurrence.Onetime,
                    StartTime = DateTime.Now,
                    RemoteImageUri = new Uri("http://mysite.com/livetile.png"),
                };
t.Start();
t.Stop();
ShellTile mainTile = ShellTile.ActiveTiles.FirstOrDefault();
t = new ShellTileSchedule(mainTile)
                    {
                        MaxUpdateCount = 1,
                        Recurrence = UpdateRecurrence.Onetime,
                        StartTime = DateTime.Now,
                        RemoteImageUri = new Uri("http://mysite.com/livetile.png")
                     };
t.Start();
t.Stop();

由于每个应用程序只能有一个
ShellTileSchedule
,因此创建一个新的应用程序,启动它,然后停止它,应该删除旧的应用程序,当然也应该停止刚刚创建的应用程序


(问之前为什么不试试?

既然每个应用程序只能有一个
ShellTileSchedule
,创建一个新的,启动它,然后停止它,应该删除旧的,当然也应该停止刚刚创建的


(问之前为什么不试试?

首先,这个问题是否发生在实际部署到市场的应用程序中?(我的意思是,是否部署了更新?)

以下是一些其他建议,我没有测试过其中任何一个: -您是否尝试过从应用程序中删除?ShellTileSchedule需要它,因此删除它可能会阻止它工作?这可能会在通过市场提交此应用程序时自动发生,但对于测试,您可以尝试一下。 -如果ShellTileScheduel失败,则可以取消它。如果可能,可以尝试删除RemoteImageUri中的PNG文件。或者用损坏的数据填充它,把外壳搞得一团糟。我知道这不太好,但可能有用。 -您是否尝试过将ShellTileSchedule替换为一个不会无限期重复的计划?只要让它执行(最后一次),然后它就完成了


祝您好运,请告诉我们您是否以及如何修复此问题。

首先,此问题是否发生在实际部署到市场的应用程序中?(我的意思是,是否部署了更新?)

以下是一些其他建议,我没有测试过其中任何一个: -您是否尝试过从应用程序中删除?ShellTileSchedule需要它,因此删除它可能会阻止它工作?这可能会在通过市场提交此应用程序时自动发生,但对于测试,您可以尝试一下。 -如果ShellTileScheduel失败,则可以取消它。如果可能,可以尝试删除RemoteImageUri中的PNG文件。或者用损坏的数据填充它,把外壳搞得一团糟。我知道这不太好,但可能有用。 -您是否尝试过将ShellTileSchedule替换为一个不会无限期重复的计划?只要让它执行(最后一次),然后它就完成了


祝您好运,请告诉我们您是否修复了,以及如何修复。

不尝试的两个原因。我认为应该有一个有正确答案的SO页面,因为我在MSDN上很难找到它,也因为我不想使用黑客,我想确保我使用了正确的方式MSDN澄清每页只能有一个
ShellTileSchedule
,所以:-)创建一个新的并停止它的解决方案似乎不起作用…?不尝试的两个原因。我认为应该有一个有正确答案的SO页面,因为我在MSDN上很难找到它,也因为我不想使用黑客,我想确保我使用了正确的方式MSDN澄清每页只能有一个
ShellTileSchedule
,所以:-)创建一个新的并停止它的解决方案似乎不起作用…?谢谢Tom。一些很棒的想法,尽管很遗憾,我无法“搞糟”live tile,因为一旦新版本面市,它将打破所有没有更新到新版本的人(我将通过对live tile处理程序进行版本化来解决这个问题)。我也尝试过在没有任何运气的情况下开始一个单独的计划(在问题的代码中)。因此,我越来越沮丧。如果您还没有运行“清理、重建”,您可能正在使用VisualStudio在部署过程中执行的清单“更新”进行操作—这就是我测试更新的方式;通过在执行干净的重建后按顺序安装每个。嗯,我可以想到两个选项:-跟踪用户首次运行更新版本的时间,然后断开原始的实时磁贴-更新发布时,用“请更新”消息替换所有“旧”磁贴,并在一天左右后断开。该消息将保持可见,直到用户更新并且后台代理开始运行。两者都不理想,但不幸的是,这是我现在能想到的最好的。随时通知我们!谢谢你,汤姆。一些很棒的想法,尽管很遗憾,我无法“搞糟”live tile,因为一旦新版本面市,它将打破所有没有更新到新版本的人(我将通过对live tile处理程序进行版本化来解决这个问题)。我也尝试过在没有任何运气的情况下开始一个单独的计划(在问题的代码中)。因此,我越来越沮丧。如果您还没有运行“清理、重建”,您可能正在使用VisualStudio在部署过程中执行的清单“更新”进行操作—这就是我测试更新的方式;通过在执行干净的重建后按顺序安装每个。嗯,我可以想到两个选项:-跟踪用户首次运行更新版本的时间,然后断开原始的实时磁贴-更新发布时,用“请更新”消息替换所有“旧”磁贴,并在一天左右后断开。该消息将保持可见,直到用户更新并且后台代理开始运行。两者都不理想,但不幸的是,这是我现在能想到的最好的。随时通知我们!