安卓:登录与Twitter使用Twitter4J [英] Android: Login with Twitter using Twitter4J
问题描述
我已经试过什么:
我已经登记在Twitter的一个应用程序,并得到了消费者的关键,并Secret.Even我得到了不同的codeS登录与twitter.These是我从曾尝试:
I already have registered an app in twitter and got Consumer Key and Secret.Even I got various codes to login with twitter.These are what I have tried from:
http://thetechnib.blogspot.com/ 2011/01 / Android的登录与 - twitter.html
[此链接是死了,你可以查看存档<一href="http://web.archive.org/web/20130121120221/http://android10.org/index.php/articleslibraries/291-twitter-integration-in-your-android-application"相对=nofollow>此处]
<一个href="http://www.android10.org/index.php/articleslibraries/291-twitter-integration-in-your-android-application" rel="nofollow">http://www.android10.org/index.php/articleslibraries/291-twitter-integration-in-your-android-application
[This link is dead, you may view an archive here]
http://www.android10.org/index.php/articleslibraries/291-twitter-integration-in-your-android-application
的问题,我有:
截至目前,上述code带我到Twitter的登录,让我登录,并有一个PIN码完成登录process.But我不知道如何使用它来获得我的应用程序working.I检查了整个code,但没有发现任何引脚相关的。
Till now,above code takes me to twitter login and let me sign in and have a PIN to complete the login process.But I have no idea how to use it to get my app working.I checked the whole code but found nothing related to pin.
其次,当我注册了twitter上我的应用程序,它要求回调URL,但因为它是写它真的不需要,我跳过指定。(连我自己都不知道什么是应该的!)
Secondly,when I registered my app on twitter,it asked for Callback URL but as it was written that its really not needed,i skipped specifying.(Even I don't know what it should be!)
因此,我在我的应用程序提供null作为CallbackURL。
And hence,I am giving null as CallbackURL in my app.
任何人都可以给我建议,我该如何使用这个密码来完成登录过程,让用户返回到我的应用程序的主要活动?难道是回调URL这是造成问题或别的东西我做错了的?
Can anyone suggest me,how can I use this PIN to complete login process and get user back to my app's main activity? Is it the callback url which is causing problem or something else I am doing wrong at?
请reply.Any帮助appriciated!谢谢你。
Please reply.Any help appriciated! Thanks.
编辑:
所建议的科学怪人,我试过code在github.com/ddewaele/AndroidTwitterSample/downloads
As suggested by Frankenstein,I tried code at github.com/ddewaele/AndroidTwitterSample/downloads
我说我的消费者的关键和消费者的秘密以及回调网址:
I added my consumer key and consumer secret along with callback 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;
但它给我这个错误:
but it gives me this error:
logcat的:
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按钮,黑色的屏幕。
Also shows me black screen when i click on TWEET button,instead of taking me to sign in screen of twitter.
妈呀,我要疯了......一直在试图由于两个日子! :(请帮助。
Omg,I am going to be crazy...have been trying since two days! :( please help.
推荐答案
这是因为你的应用程序注册为一个桌面客户端。 要覆盖回调URL,你的应用程序需要被注册为浏览器客户端。
It's because your app is registered as a desktop client. To overwrite callback URL, your app need to be registered as a browser client.
在尝试配置一个虚拟回调URL(http://example.com/或任何你想要的) https://dev.twitter.com/apps/[appid]/settings>回调URL 和你的应用程序将被认定为浏览器客户端。
Try configuring a dummy callback URL (http://example.com/ or whatever you want) at https://dev.twitter.com/apps/[appid]/settings > Callback URL and your app will be recognized as a browser client.
然后尝试@Frankenstein或@ jamn224 code。
Then try @Frankenstein or @jamn224 code.
这篇关于安卓:登录与Twitter使用Twitter4J的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!