标签:android twitter scribe accountmanager android-account
如何在twitter中使用android AccountManager进行授权?
AccountManager am = AccountManager.get(this);
Account[] accts = am.getAccountsByType(TWITTER_ACCOUNT_TYPE);
if(accts.length > 0) {
Account acct = accts[0];
am.getAuthToken(acct, "com.twitter.android.oauth.token"/*what goes here*/, null, this, new AccountManagerCallback<Bundle>() {
@Override
public void run(AccountManagerFuture<Bundle> arg0) {
try {
Bundle b = arg0.getResult();
Log.e("TrendDroid", "THIS AUTHTOKEN: " + b.getString(AccountManager.KEY_AUTHTOKEN));
} catch (Exception e) {
Log.e("TrendDroid", "EXCEPTION@AUTHTOKEN");
}
}}, null);
}
现在我得到了com.twitter.android.oauth.token和com.twitter.android.oauth.token.secret.但下一步是什么?我如何使用它来授权?
我使用scribe api,我试着像这样使用它:
service.signRequest(new Token(token, secret), request);
但它不起作用.我还尝试了另一种不起作用的方法.
有很多这样的问题:
https://dev.twitter.com/discussions/4875
https://groups.google.com/forum/?fromgroups#!topic/twitter-development-talk/1tWEx–5h9w%5B1-25%5D
http://osdir.com/ml/twitter4j/2011-06/msg00128.html
Android: How to Twitter oAuth Through Account Manager
Twitter Authentication through Android’s AccountManager classes
Using account manager to get OAuth token
没有人给出具体的答案
解决方法:
Android的AccountManager返回的com.twitter.android.oauth.token和com.twitter.android.oauth.token.secret凭据仅使用Twitter的官方消费者密钥和密钥进行身份验证. AFAIK他们对第三方开发人员实际上并没有用.
关于Twitter,我只是说他们在那里,如果Twitter通过应用程序更新改变它们,他们将为没有该应用程序更新的每个用户打破OAuth.
标签:android,twitter,scribe,accountmanager,android-account 来源: https://codeday.me/bug/20190709/1414113.html
本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享; 2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关; 3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关; 4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除; 5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。