android 腾讯微博授权,android腾讯微博开发06-SQLite保存用户授权后的用户名和密码及其他一些信息...

(一)

Model微博用户类

package com.xgh.tencent.weibo.beans;

public class BUser {

public Integer id; //唯一标识

public String uid;

//微博用户id

public String name; //微博用户名

public String nick; //微博用户昵称

public String accessToken; //可访问微博资源的token

public String accessSecret;

//可访问微博资源的Secret

public String verifer; //验证码

public String toString(){

return

"id:"+id+",uid:"+uid+",name:"+name+",nick:"+nick

+",accessToken:"+accessToken+",accessSecret:"+accessSecret

+",verifer:"+verifer;

}

}

(二)

SQLite数据库操作

源代码:

package com.xgh.tencent.weibo.data.dao;

import java.util.ArrayList;

import java.util.List;

import android.content.ContentValues;

import android.content.Context;

import android.database.Cursor;

import android.database.sqlite.SQLiteDatabase;

import android.database.sqlite.SQLiteDatabase.CursorFactory;

import android.database.sqlite.SQLiteOpenHelper;

import android.util.Log;

import com.xgh.tencent.weibo.beans.BUser;

public class DBHelper extends SQLiteOpenHelper {

public final static String

BUSER_TABLE_NAME="b_user";

// 数据库名

public static String dbName = "xghWB.db";

// 数据库版本

public static int version = 1;

// 数据库帮助类实例

private static DBHelper instance;

// db

private SQLiteDatabase db;

private DBHelper(Context context, String name,

CursorFactory factory,

int version)

{

super(context, name, factory,

version);

}

public static DBHelper getInstance(Context

context) {

// 单例

synchronized (DBHelper.class)

{

if (instance

== null) {

instance

= new DBHelper(context, dbName, null, version);

}

return

instance;

}

}

@Override

public void onCreate(SQLiteDatabase db) {

String sql ="create table

b_user("+

"id integer primary key autoincrement,"+

"uid text unique ,"+

"name text not null,"+

"nick text not null,"+

"accessToken text not null,"+

"accessSecret text not null,"+

"verifer text not null)";

db.execSQL(sql); //执行SQL

Log.i("xgh:","table b_user created!");

}

@Override

public void onUpgrade(SQLiteDatabase db, int

oldVersion, int newVersion) {

db.execSQL("drop table if

exists b_user");

//重新建表

onCreate(db);

}

public void open() {

// 单例

synchronized (DBHelper.class)

{

if (db ==

null) {

db

= instance.getWritableDatabase();

}

}

}

public void close() {

if (db != null) {

db.close();

db =

null;

}

}

public long saveBUser(BUser user){

ContentValues cv = new

ContentValues();

cv.put("id", user.id);

cv.put("uid",user.uid); cv.put("name", user.name);

cv.put("nick",user.nick);

cv.put("accessToken", user.accessToken);

cv.put("accessSecret", user.accessSecret);

cv.put("verifer", user.verifer);

//执行SQL

open();

return db.insert(BUSER_TABLE_NAME, null, cv);

}

public List queryAllBUser(){

List users = new

ArrayList();

open(); //打开数据库

//查询

Cursor cursor = db.query(BUSER_TABLE_NAME, new

String[]{"id","uid","name","nick","accessToken","accessSecret","verifer"},

null, null, null, null, null);

if(cursor==null||!cursor.moveToFirst())

return users;

BUser user;

while(!cursor.isAfterLast()){

user = new BUser();

user.id =

cursor.getInt(cursor.getColumnIndex("id"));

user.uid =

cursor.getString(cursor.getColumnIndex("uid"));

user.name =

cursor.getString(cursor.getColumnIndex("name"));

user.nick =

cursor.getString(cursor.getColumnIndex("nick"));

user.accessToken =

cursor.getString(cursor.getColumnIndex("accessToken"));

user.accessSecret =

cursor.getString(cursor.getColumnIndex("accessSecret"));

user.verifer =

cursor.getString(cursor.getColumnIndex("verifer"));

//添加列列表

users.add(user);

//移向下一条记录

cursor.moveToNext();

}

return users;

}

public int clear(){

open(); //打开数据库

return

db.delete(BUSER_TABLE_NAME, null, null);

}

}

(三)保存授权后的用户名和密码

User_API user_API = new User_API();

String

userJson = null;

try {

//获取带有用户详细信息的JSON userJson

= user_API.info(QQContext.oauth, "json");

Log.e("xgh:userInfo",userJson);

}

catch (Exception e) {

//

TODO Auto-generated catch block

e.printStackTrace();

}

//解析用户详细信息 UData uData = JSONParser.getUDate(userJson);

//如果请求正确 if(uData.context.errcode.equals("0")&&

"0".equals(uData.context.ret)){

BUser user = new BUser();

user.name = uData.userDetail.name;

user.nick = uData.userDetail.nick;

user.uid = uData.userDetail.openid;

user.verifer = QQContext.oauth.getOauth_verifier();

user.accessToken = QQContext.oauth.getOauth_token();

user.accessSecret = QQContext.oauth.getOauth_token_secret();

//保存登录用户信息 dbHelper.saveBUser(user);

Log.i("xgh:","save user succeed!");

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值