我在我的应用程序中将Parse与Heroku一起使用。但是我遇到了错误,com.parse.ParseRequest$ParseRequestException: bad json response
。
我做了很多研究,发现有些人遇到server(url)
格式的问题,他们需要在/
之后添加/parse
。但是我在代码中写了正确的URL格式。
这是我的下面的代码:
Parse.initialize(new
Parse.Configuration.Builder(getApplicationContext())
.applicationId("APP_ID")
.clientKey(null)
.server("https://abc-xyz.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) { // the error is always 'bad JSON response' here
Log.i("Parse", "Save Succeeded");
} else {
Log.i("Parse", "Save Failed");
}
}
});
此外,只是给您另一个更新,
我遇到了同样的错误。我使用的是编译'com.parse:parse-android:1.13.0'
,但我将其更改为编译'com.parse:parse-android:1.12.0'
,因此,它在'cannot resolve symbol'
上给出了server(url).build()
。
另外,如果我使用的是compile 'com.parse:parse-android:1.10.0'
,则会遇到相同的错误,即
'cannot resolve symbol'
中的Configuration
,在上面的代码中。
这是我的build.gradle文件:
apply plugin: 'com.android.application'
android {
compileSdkVersion rootProject.ext.compileSdkVersion
defaultConfig {
applicationId "com.parse.starter"
minSdkVersion rootProject.ext.minSdkVersion
targetSdkVersion rootProject.ext.targetSdkVersion
versionCode 1
versionName "1.0"
}
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
buildToolsVersion '25.0.0'
}
dependencies {
compile 'com.android.support:appcompat-v7:22.2.0'
compile 'com.parse.bolts:bolts-tasks:1.4.0'
compile 'com.parse:parse-android:1.13.0'
}
有人可以为此提供一些解决方案。
谢谢。
答案 0 :(得分:0)
我认为您的错误是由于错误的clientKey
和applicationId
引起的。