9

这可能是关于 SO 的最多问题,但我仍然无法解决我的问题。 我已经检查了这个这个和许多其他的,但问题仍然存在。

如果 twitter 应用程序安装在用户的设备上,一切正常,但如果它不存在,我会收到以下错误消息。

无效的 json:回调 URL 未被批准用于此客户端应用程序。批准的回调 URL 可以在您的应用程序设置中调整 com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_OBJECT but was STRING at line 1 column 1 path $

引起:java.lang.IllegalStateException:预期 BEGIN_OBJECT 但在第 1 行第 1 列路径 $

com.twitter.sdk.android.core.TwitterApiException:HTTP 请求失败,状态:com.twitter.sdk.android.core.Callback.onResponse(Callback.java:42)的 403

我定义https://www.google.com为回调 URL,以下是我的实现。

//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");
            }
        });

字符串.xml

   <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://作为twitterkit-consumer-key://回调网址

4

2 回答 2

5

请在此处参考此链接。

我们需要在回调 URL 中设置 twittersdk://,如下面的链接所述。

  1. 转到您的 twitter 应用程序设置https://apps.twitter.com/ >> 选项卡
    设置 >> 将此文本“twittersdk://”填充到您的回调 URL
    字段(我在 lib 类中找到它)
  2. 保存您的更新
  3. 再次检查您的应用程序。

它只需将 twittersdk:// 设置为一个回调 URL 即可,无需附加任何内容。

于 2018-07-24T07:54:23.633 回答
0

尝试 FireBase Ui auth sdk,我认为这将是您的最佳解决方案,请阅读文档https://firebase.google.com/docs/auth/android/firebaseui

于 2018-07-24T06:43:50.807 回答