我使用此代码并捕获错误:
//我根据手册
完成了所有工作loginButton = (TwitterLoginButton) findViewById(R.id.login_button);
loginButton.setCallback(new Callback<TwitterSession>() {
@Override
public void success(Result<TwitterSession> result) {
Result<TwitterSession> result1 = result;
}
@Override
public void failure(TwitterException exception) {
exception.printStackTrace(); // I catch this exception
}
});
这是我的日志:
01-26 12:39:10.258 32298-32298/com.DriverNotes.AndroidMobileClient E/Twitter﹕ Invalid json: <?xml version="1.0" encoding="UTF-8"?>
<hash>
<error>Desktop applications only support the oauth_callback value 'oob'</error>
<request>/oauth/request_token</request>
</hash>
com.google.gson.JsonSyntaxException: com.google.gson.stream.MalformedJsonException: Use JsonReader.setLenient(true) to accept malformed JSON at line 1 column 8
at com.google.gson.JsonParser.parse(JsonParser.java:65)
at com.google.gson.JsonParser.parse(JsonParser.java:45)
at com.twitter.sdk.android.core.TwitterApiException.parseErrorCode(TwitterApiException.java:107)
at com.twitter.sdk.android.core.TwitterApiException.readErrorCode(TwitterApiException.java:96)
at com.twitter.sdk.android.core.TwitterApiException.<init>(TwitterApiException.java:43)
at com.twitter.sdk.android.core.TwitterApiException.convert(TwitterApiException.java:81)
at com.twitter.sdk.android.core.Callback.failure(Callback.java:28)
at retrofit.CallbackRunnable$2.run(CallbackRunnable.java:53)
at android.os.Handler.handleCallback(Handler.java:725)
at android.os.Handler.dispatchMessage(Handler.java:92)
at android.os.Looper.loop(Looper.java:137)
at android.app.ActivityThread.main(ActivityThread.java:5279)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1102)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:869)
at dalvik.system.NativeStart.main(Native Method)
Caused by: com.google.gson.stream.MalformedJsonException: Use JsonReader.setLenient(true) to accept malformed JSON at line 1 column 8
at com.google.gson.stream.JsonReader.syntaxError(JsonReader.java:1505)
at com.google.gson.stream.JsonReader.checkLenient(JsonReader.java:1386)
P.S。我希望能够提供有关该问题的足够信息
答案 0 :(得分:1)
从错误中看,您的Twitter应用程序可能需要一些额外的信息才能正常工作。看看这个:
答案 1 :(得分:1)
如果它仍然相关 - 我遇到了同样的问题,解决方法是在app web page中设置redirect_url字段。
并且你必须取消选中文本框: “启用回叫锁定(建议启用回调锁定以确保应用无法覆盖回调网址)”