gpt4 book ai didi

Android:使用 Twitter4J 登录 Twitter

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:23:04 25 4
gpt4 key购买 nike

我尝试过的:

我已经在 twitter 上注册了一个应用程序并获得了 Consumer Key 和 Secret。甚至我得到了各种代码来使用 twitter 登录。这些是我尝试过的:

http://thetechnib.blogspot.com/2011/01/android-sign-in-with-twitter.html

[此链接已失效,您可以查看存档here ]
http://www.android10.org/index.php/articleslibraries/291-twitter-integration-in-your-android-application

我遇到的问题:

到现在为止,上面的代码将我带到 Twitter 登录并让我登录并获得 PIN 码来完成登录过程。但我不知道如何使用它来让我的应用程序正常工作。我检查了整个代码但发现与 pin 无关。

其次,当我在 Twitter 上注册我的应用程序时,它要求提供回调 URL,但由于写着它真的不需要,所以我跳过了指定。(甚至我都不知道它应该是什么!)

因此,我在我的应用程序中将 null 作为 CallbackURL。

任何人都可以建议我,如何使用此 PIN 完成登录过程并让用户返回到我的应用程序的主要 Activity ?是回调 URL 导致了问题还是我做错了什么?

请回复。任何帮助都适用!谢谢。

编辑:

按照 Frankenstein 的建议,我在 github.com/ddewaele/AndroidTwitterSample/downloads 尝试了代码

我添加了我的消费者 key 和消费者 secret 以及回调 url:

public static final String OAUTH_CALLBACK_SCHEME= "x-oauthflow-twitter";
public static final String OAUTH_CALLBACK_HOST= "callback";
public static final String OAUTH_CALLBACK_URL= OAUTH_CALLBACK_SCHEME + "://" + OAUTH_CALLBACK_HOST;

但它给了我这个错误:

日志:

11-29 11:56:56.249: E/com.ecs.android.sample.twitter.OAuthRequestTokenTask(3081): Error during OAUth retrieve request token
11-29 11:56:56.249: E/com.ecs.android.sample.twitter.OAuthRequestTokenTask(3081): oauth.signpost.exception.OAuthNotAuthorizedException: Authorization failed (server replied with a 401). This can happen if the consumer key was not correct or the signatures did not match.
11-29 11:56:56.249: E/com.ecs.android.sample.twitter.OAuthRequestTokenTask(3081): at oauth.signpost.AbstractOAuthProvider.handleUnexpectedResponse(AbstractOAuthProvider.java:239)
11-29 11:56:56.249: E/com.ecs.android.sample.twitter.OAuthRequestTokenTask(3081): at oauth.signpost.AbstractOAuthProvider.retrieveToken(AbstractOAuthProvider.java:189)
11-29 11:56:56.249: E/com.ecs.android.sample.twitter.OAuthRequestTokenTask(3081): at oauth.signpost.AbstractOAuthProvider.retrieveRequestToken(AbstractOAuthProvider.java:69)
11-29 11:56:56.249: E/com.ecs.android.sample.twitter.OAuthRequestTokenTask(3081): at com.ecs.android.sample.twitter.OAuthRequestTokenTask.doInBackground(OAuthRequestTokenTask.java:55)
11-29 11:56:56.249: E/com.ecs.android.sample.twitter.OAuthRequestTokenTask(3081): at com.ecs.android.sample.twitter.OAuthRequestTokenTask.doInBackground(OAuthRequestTokenTask.java:1)
11-29 11:56:56.249: E/com.ecs.android.sample.twitter.OAuthRequestTokenTask(3081): at android.os.AsyncTask$2.call(AsyncTask.java:185)
11-29 11:56:56.249: E/com.ecs.android.sample.twitter.OAuthRequestTokenTask(3081): at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:305)
11-29 11:56:56.249: E/com.ecs.android.sample.twitter.OAuthRequestTokenTask(3081): at java.util.concurrent.FutureTask.run(FutureTask.java:137)
11-29 11:56:56.249: E/com.ecs.android.sample.twitter.OAuthRequestTokenTask(3081): at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1068)
11-29 11:56:56.249: E/com.ecs.android.sample.twitter.OAuthRequestTokenTask(3081): at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:561)
11-29 11:56:56.249: E/com.ecs.android.sample.twitter.OAuthRequestTokenTask(3081): at java.lang.Thread.run(Thread.java:1096)

当我点击 TWEET 按钮时也显示黑屏,而不是让我登录 Twitter 屏幕。

天啊,我要疯了...两天以来一直在努力! :( 请帮忙。

最佳答案

这是因为您的应用已注册为桌面客户端。要覆盖回调 URL,您的应用需要注册为浏览器客户端。

尝试配置一个虚拟回调 URL(http://example.com/或任何你想要的)在https://dev.twitter.com/apps/[appid]/settings > 回调 URL并且您的应用将被识别为浏览器客户端。

然后尝试@Frankenstein 或@jamn224 代码。

关于Android:使用 Twitter4J 登录 Twitter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8306237/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com