【问题标题】:Getting exception when trying to connect to parse server from Android尝试从 Android 连接到解析服务器时出现异常
【发布时间】:2016-10-30 23:03:23
【问题描述】:

在我的 Android 应用开发培训中,我刚刚开始了数据库集成。

我正在通过 Heroku 使用 Parse SDK。

多年来,我一直在努力获得一个简单的应用程序来对我的数据库进行成功的交易。

数据库确实在工作,似乎我通过我的网络浏览器跟踪 url 并从数据库中获取预期的输出来测试它。

我的问题是当我尝试使用 saveInBackground() 方法时出现异常。奇怪的是,当我记录异常的消息时,我什么也没得到。所以我决定打印出堆栈跟踪,但这对我没有多大帮助。我希望有人可以通过查看它来帮助我。

我的代码

@Override
public void onCreate() {
  super.onCreate();

  // Enable Local Datastore.
  Parse.enableLocalDatastore(this);

  // Add your initialization code here
  Parse.initialize(new Parse.Configuration.Builder(getApplicationContext())
        .applicationId("HIDDEN_APPLICATION_ID")
        .clientKey(null)
        .server("https://instawilhelm.herokuapp.com/parse/")
  .build()
  );

  ParseObject gameScore = new ParseObject("GameScore");
  gameScore.put("score", 1337);
  gameScore.put("playerName", "Sean Plott");
  gameScore.put("cheatMode", false);
  gameScore.saveInBackground(new SaveCallback() {
      public void done(ParseException e) {
          if (e == null) {
              Log.i("Parse Connection", "Save Succeeded");
          } else {
              Log.i("Parse Connection", "Save Failed");
              e.printStackTrace();
          }
      }
  });


  ParseUser.enableAutomaticUser();
  ParseACL defaultACL = new ParseACL();
  // Optionally enable public read access.
  // defaultACL.setPublicReadAccess(true);
  ParseACL.setDefaultACL(defaultACL, true);
}

我的堆栈跟踪:

10-31 00:41:34.345 26045-26045/com.parse.starter W/System.err: com.parse.ParseRequest$ParseRequestException: 
10-31 00:41:34.346 26045-26045/com.parse.starter W/System.err:     at com.parse.ParseRequest.newTemporaryException(ParseRequest.java:279)
10-31 00:41:34.346 26045-26045/com.parse.starter W/System.err:     at com.parse.ParseRESTCommand.onResponseAsync(ParseRESTCommand.java:303)
10-31 00:41:34.346 26045-26045/com.parse.starter W/System.err:     at com.parse.ParseRequest$3.then(ParseRequest.java:137)
10-31 00:41:34.347 26045-26045/com.parse.starter W/System.err:     at com.parse.ParseRequest$3.then(ParseRequest.java:133)
10-31 00:41:34.347 26045-26045/com.parse.starter W/System.err:     at bolts.Task$15.run(Task.java:917)
10-31 00:41:34.347 26045-26045/com.parse.starter W/System.err:     at bolts.BoltsExecutors$ImmediateExecutor.execute(BoltsExecutors.java:105)
10-31 00:41:34.347 26045-26045/com.parse.starter W/System.err:     at bolts.Task.completeAfterTask(Task.java:908)
10-31 00:41:34.347 26045-26045/com.parse.starter W/System.err:     at bolts.Task.continueWithTask(Task.java:715)
10-31 00:41:34.347 26045-26045/com.parse.starter W/System.err:     at bolts.Task.continueWithTask(Task.java:726)
10-31 00:41:34.348 26045-26045/com.parse.starter W/System.err:     at bolts.Task$13.then(Task.java:818)
10-31 00:41:34.348 26045-26045/com.parse.starter W/System.err:     at bolts.Task$13.then(Task.java:806)
10-31 00:41:34.348 26045-26045/com.parse.starter W/System.err:     at bolts.Task$15.run(Task.java:917)
10-31 00:41:34.348 26045-26045/com.parse.starter W/System.err:     at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
10-31 00:41:34.348 26045-26045/com.parse.starter W/System.err:     at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
10-31 00:41:34.348 26045-26045/com.parse.starter W/System.err:     at java.lang.Thread.run(Thread.java:833)

【问题讨论】:

  • 假设应用 ID 匹配,并且也没有客户端密钥,对吗?你在 heroku 的日志中看到了什么,你能在调试器中检查异常对象并发布异常是什么吗?

标签: android database exception heroku parse-platform


【解决方案1】:

尝试使用 saveEventually 而不是 saveInBackground。看到一个帖子说它对其他人有用。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2023-03-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-16
    • 1970-01-01
    • 2018-03-06
    • 2020-05-26
    相关资源
    最近更新 更多