这可能是SO上最常被问到的问题,但我仍然无法解决我的问题。 我已经检查了this,this和许多其他项目,但是问题仍然存在。
如果在用户设备上安装了twitter app,一切正常,但是如果没有,我将收到以下错误消息。
无效的json:此客户端应用程序未批准回调URL。 可以在您的应用程序中调整批准的回调URL 设定 com.google.gson.JsonSyntaxException:java.lang.IllegalStateException:预期为BEGIN_OBJECT,但为STRING 在第1行第1列的路径$
由以下原因引起:java.lang.IllegalStateException:预期为BEGIN_OBJECT,但 在第1行第1列路径$
com.twitter.sdk.android.core.TwitterApiException:HTTP请求 失败,状态:403 在com.twitter.sdk.android.core.Callback.onResponse(Callback.java:42)
我将https://my-blog.firebaseio.com/posts.json?orderBy="$key"&startAt="keyOfPost10"&limitToFirst=11
定义为回调URL,以下是我的实现。
https://www.google.com
Strings.xml
//Activity Class
Twitter.initialize(this);
button.setCallback(new Callback<TwitterSession>() {
@Override
public void success(Result<TwitterSession> result) {
TwitterSession session = TwitterCore.getInstance().getSessionManager().getActiveSession();
TwitterAuthToken authToken = session.getAuthToken();
String token = authToken.token;
String secret = authToken.secret;
login(session);
}
@Override
public void failure(TwitterException exception) {
Log.d("Failure", "failure");
}
});
成绩
<string name="com.twitter.sdk.android.CONSUMER_KEY">---</string>
<string name="com.twitter.sdk.android.CONSUMER_SECRET">---</string>
编辑
我还尝试过compile 'com.twitter.sdk.android:twitter:3.1.1'
和twittersdk://
作为回调网址
答案 0 :(得分:5)
请参阅此链接here。
我们需要在回调URL中设置twittersdk://,如下面的链接所述。
仅通过将twittersdk://设置为一个回调URL而不添加任何内容即可。
答案 1 :(得分:0)
尝试FireBase Ui auth sdk,我认为这将是最适合您的解决方案, 阅读文档https://firebase.google.com/docs/auth/android/firebaseui