【问题标题】:Parse is giving exceptions in device but works fine in emulator in Windows?Parse 在设备中给出异常但在 Windows 的模拟器中工作正常?
【发布时间】:2016-01-21 11:33:22
【问题描述】:

在我的 windows phone 应用程序中,我集成了 Parse 版本 1.7.0,并且我正在为 windows phone 8.0 及更高版本进行开发。我已按照 parse.com 中的说明进行操作,但出现异常:

    System.ArgumentNullException: Value cannot be null. Parameter name: uriString
   at System.Uri..ctor(String uriString)
   at Parse.Internal.ParseCommand..ctor(String relativeUri, String method, String sessionToken, IList`1 headers, Stream stream, String contentType)
   at Parse.Internal.ParseCommand..ctor(String relativeUri, String method, String sessionToken, IList`1 headers, IDictionary`2 data)
   at Parse.Internal.ParseAnalyticsController.TrackAppOpenedAsync(String pushHash, String sessionToken, CancellationToken cancellationToken)
   at Parse.ParseAnalytics.TrackAppOpenedWithPushHashAsync(String pushHash)
   at Parse.ParseAnalytics.TrackAppOpenedAsync()
   at xxxx.App.<Application_Launching>d__5.MoveNext()

异常发生的代码是

   try{
        await ParseAnalytics.TrackAppOpenedAsync();
         }
        catch (Exception ex){
                    Debug.WriteLine("Exception in Parse Initialise \n" + ex.Message);

}

但在模拟器中工作正常...

【问题讨论】:

  • 查看堆栈跟踪。检查哪个方法需要 uriString。
  • 看起来您缺少一些配置或初始化代码。
  • @CodeCaster 请查看更新后的问题
  • @lonewolf 请查看更新后的问题
  • 堆栈跟踪并没有告诉我太多。我不知道这个 Parse API,你也没有链接到任何文档,所以我不太愿意去弄清楚你错过了什么。就像我说的,我可以假设这段代码 (ParseAnalytics.TrackAppOpenedAsync()) 需要一些配置或初始化,而您没有显示。当然,如果库抛出类似 "Cannot find AppSettings key X""Call ParseAnalytics.ConfigureUri() first" 之类的异常而不是让框架代码抛出异常会更好...

标签: c# windows-phone-8 parse-platform


【解决方案1】:

我的最佳猜测是,在文档中单击并查看异常消息,您未能正确初始化 Parse SDK。

来自他们的Quickstart for Windows Phone,“新项目”,显示的第一个代码块是:

public App()
{
    // (existing project code here)
    ParseClient.Initialize("APPLICATION ID", ".NET KEY");
}

我只能假设这将初始化一些静态变量,例如将 Parse 消息发布到的 URI,而这在您的应用程序中是缺失的。

话虽如此,我坚持我之前的评论:当然,如果像这样的库抛出 ConfigurationErrorsException 或 InvalidOperationException 会更好,例如 "Cannot find AppSettings key X""先调用(初始化方法)”,而不是盲目地传递未初始化的变量,让框架代码抛出异常。

【讨论】:

  • 我对那个评论无能为力。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-06-18
  • 1970-01-01
  • 1970-01-01
  • 2023-03-24
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多