2010-12-02 38 views
2

我一直在开发包含Bing地图的“定位我”风格功能的WP7应用程序。WP7 App部署时退出

我有一个早期的原型WP7设备,我可以部署到这个没问题。我的两个同事拥有零售WP7设备,运行该应用程序时,它总是在某个时间点退出。

我假定这部分代码内发生崩溃:

void UpdateMap(GeoPosition<GeoCoordinate> position, double zoom) 
    { 


     _foundLocation = position; 
     mapLocation.Center = position.Location; 
     mapLocation.ZoomLevel = zoom; 
     txtStatus.Text = "Found you within " + position.Location.HorizontalAccuracy.ToString(AccuracyFormat) + " meters"; 

     //Display address to user 
     DisplayLocationAddress(position.Location.Latitude, position.Location.Longitude); 

     //Stop the watcher if horizontal accuracy is high enough for requirements to converse battery power. 
     if (watcher != null && watcher.Position.Location.HorizontalAccuracy <= DesiredAccuracy) 
     { 
      watcher.Stop(); 
     } 
    } 

由于显示关于Horizo​​ntalAccuracy消息以及从反向地理代码得到的地址。

但是地图变白了(就好像它即将开始以位置为中心),然后应用程序退出。通过Visual Studio 2010

所有我能想到的调试应用程序时,

两款器件做工精细是,虽然连接到我的电脑设备使用通过USB电缆与互联网连接,但在断开连接时使用蜂窝数据。但我想不出为什么这会让它退出。

既调试同时调试如何继续追踪问题?

UPDATE

我实现了全球性的错误处理的建议和我得到以下错误: 证书是无效或不能工作了2台设备未指定。但是,如上所述,仅在部署时提到,而不是在通过Visual Studio运行时提到。

+0

哪里是哪里来的错误?堆栈跟踪的样子是什么? – 2010-12-02 13:46:39

+0

实际上将错误追溯到从Bing地图反向地理编码API获取地址。在最后几分钟内没有做任何改变,它已经开始工作。所以我认为这是一个Bing web服务的错误? – Fishcake 2010-12-02 14:01:49

回答

2

你有一个全局异常处理程序,至少对于UI线程?您可能希望包含在发布版本中显示礼让错误消息的代码,以及调试版本的例外细节。

这将不利于:

扔在其他线程
  • 无法恢复的例外,如堆栈溢出错误
  • 如果推出从VS2010,但没有调试

    • 例外 - 所以它仍然使用USB连接 - 它仍然崩溃?

    0

    Bing地图凭据有问题吗?

    <my:Map 
         Margin="6" 
         CredentialsProvider="{StaticResource BingCredentials}">