/** * 登录 * * @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); } }
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 } } }
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()); } }