我刚开始使用Android应用程序开发培训进行数据库集成。
我通过Heroku使用Parse SDK。
我已经挣扎了很长时间才能获得一个简单的应用程序来成功地与我的数据库进行交易。
数据库肯定在工作,似乎我通过网络浏览器跟踪网址并从数据库中获取预期输出来测试它。
我的问题是当我尝试使用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)
答案 0 :(得分:0)
尝试使用saveEventually而不是saveInBackground。看到一篇帖子说它适用于其他人。