Beispiel #1
0
  /**
   * 登录
   *
   * @since 2014-02-28
   */
  public void login() {
    if (!tencent.isSessionValid()) {
      tencent.login(
          (Activity) context,
          SCOPE,
          new BaseUIListener() {

            @Override
            protected void doComplete(JSONObject obj) {
              TencentQQToken token = new TencentQQToken();
              try {
                token.setOpenid(obj.getString("openid"));
                token.setAccess_token(obj.getString("access_token"));
                token.setExpires_in(obj.getString("expires_in"));
              } catch (JSONException e) {
                e.printStackTrace();
              }

              QQTokenKeeper.writeAccessToken(context, token);
              userInfo = new UserInfo(context, tencent.getQQToken());
              getUserInfo();
            }
          });
    } else {
      tencent.logout(context);
    }
  }
Beispiel #2
0
 private void loginoutQQ() {
   Tencent mTencent = Tencent.createInstance(ConstantS.TENCENT_APP_ID, getApplicationContext());
   if (mTencent != null && mTencent.isSessionValid()) {
     try {
       mTencent.logout(context);
     } catch (Exception e) {
       // TODO: handle exception
     }
   }
 }
Beispiel #3
0
  public void login(Context context) {

    // 第一个参数就是上面所说的申请的APPID,第二个是全局的Context上下文,这句话实现了调用QQ登录
    mTencent = Tencent.createInstance(ThirdpartyConstant.QQ_APP_ID, AppContext.getAppContext());

    /**
     * 通过这句代码,SDK实现了QQ的登录,这个方法有三个参数,第一个参数是context上下文,第二个参数SCOPO 是一个String类型的字符串,表示一些权限
     * 官方文档中的说明:应用需要获得哪些API的权限,由“,”分隔。例如:SCOPE = “get_user_info,add_t”;所有权限用“all”
     * 第三个参数,是一个事件监听器,IUiListener接口的实例,这里用的是该接口的实现类
     */
    if (!mTencent.isSessionValid()) {
      mTencent.login((Activity) context, "all", new BaseUiListener());
    }
  }