各位大侠,本人是搞android的菜鸟,现在准备做一个新浪微博的登陆的授权,我想达到一次授权后下次不用再授权了,直接可以进入微博界面,不用每次都授权,具体调用什么方法?最好有个小例子?谢谢了~
我使用的下面的方法,但是每次都要授权。
public void onClick(View v) {
if (v == mLogin) {
Weibo weibo = Weibo.getInstance();
weibo.setupConsumerConfig(CONSUMER_KEY, CONSUMER_SECRET);
// Oauth2.0
// 隐式授权认证方式
weibo.setRedirectUrl("http://weibo.com/u/1703532004");// 此处回调页内容应该替换为与appkey对应的应用回调页
// 对应的应用回调页可在开发者登陆新浪微博开发平台之后,
// 进入我的应用--应用详情--应用信息--高级信息--授权设置--应用回调页进行设置和查看,
// 应用回调页不可为空
weibo.authorize(AuthorizeActivity.this,
new AuthDialogListener());
 try {
 // Oauth2.0 认证方式
 Weibo.setSERVER("https://api.weibo.com/2/");
 Oauth2AccessToken at =
 weibo.getOauth2AccessToken(AuthorizeActivity.this,
 Weibo.getAppKey(), Weibo.getAppSecret(), username,
 password);
 // xauth认证方式
 /*
 * Weibo.setSERVER("http://api.t.sina.com.cn/");
 * AccessToken at =
 * weibo.getXauthAccessToken(TextActivity.this,
 * Weibo.APP_KEY, Weibo.APP_SECRET, "", "");
 * mToken.setText(at.getToken());
 */
 RequestToken requestToken =
 weibo.getRequestToken(AuthorizeActivity.this,
 Weibo.getAppKey(), Weibo.getAppSecret(),
 AuthorizeActivity.URL_ACTIVITY_CALLBACK);
 Uri uri =
 Uri.parse(AuthorizeActivity.URL_ACTIVITY_CALLBACK);
 startActivity(new Intent(Intent.ACTION_VIEW, uri));

 } catch (WeiboException e) {
 e.printStackTrace();
 } 

解决方案 »

  1.   

    Token放到数据库中不会过期么?我的也提示记住密码,但是下次还会弹出授权页,是我调用的方法不对么?
      

  2.   

    我把token存入数据库中后,重启手机,读取数据时还是报auth fliad!搞不懂。晕啊!太笨了,哈哈
      

  3.   

    Weibo weibo = Weibo.getInstance();
    weibo.setupConsumerConfig(CONSUMER_KEY, CONSUMER_SECRET);
        // Oauth2.0
    // 隐式授权认证方式
    // 对应的应用回调页可在开发者登陆新浪微博开发平台之后,
    // 进入我的应用--应用详情--应用信息--高级信息--授权设置--应用回调页进行设置和查看,
    // 应用回调页不可为空
    weibo.setRedirectUrl("http://weibo.com/u/1703532004");// 此处回调页内容应该替换为与appkey对应的应用回调页
    weibo.authorize(AuthorizeActivity.this.getParent(),new AuthDialogListener());
      

  4.   

    它每次都有进入 com.weibo.net.WeiboDialog
    如果没授权就弹出授权页如果授权了就闪一下很卡,可以不进入就授权成功么?