/////////////////////////////////////////////////////////////////////

获取相册列表:必须先授权登入

1.1.  String mAppid2="222222";

    private void login() {
Tencent mTencent = Tencent.createInstance(mAppid2, QzonePicturesActivity.this);
IUiListener listener = new IUiListener() { @Override
public void onCancel() {
// TODO Auto-generated method stub
} @Override
public void onComplete(Object arg0) {
// TODO Auto-generated method stub
} @Override
public void onError(UiError arg0) { }
};
mTencent.login(this, "all", listener);//登入
mQQAuth = QQAuth.createInstance(mAppid2, this);//获取授权
}

授权登入

1.2.  // 获取相册信息
Albums mAlbums = new Albums(QzonePicturesActivity.this, mQQAuth.getQQToken());
mAlbums.listAlbum(new AlbumListListener());

1.3.监听获取信息

    private class AlbumListListener implements IUiListener {

        public void onComplete(final Object response) {
JSONObject json = (JSONObject)response;
mPicsJson = json;
// 初始化UI
Log.i("mylog", "相册信息:"+mPicsJson.toString());
mAdapter = new PicGridAdapter(QzonePicturesActivity.this,mPicsJson);
mGridView.setAdapter(mAdapter);
}
@Override
public void onCancel() {
}
@Override
public void onError(UiError arg0) {
}
}

监听结果

//////////////////////////////////////////////////////////////////

新建相册:必须先授权登入

2.1(同上1.1)

2.2 添加相册信息

String albumname ="QQ登陆SDK:Add_Album测试" + System.currentTimeMillis();// 必须。相册名,不能超过30个字符。
String albumdesc = "QQ登陆SDK:Add_Album测试" + new Date();// 相册描述,不能超过200个字符。
String question = "question";// 如果priv取值为5,即相册是问答加密的,则必须包含问题和答案两个参数:
String answer = "answer";// 如果priv取值为5,即相册是问答加密的,则必须包含问题和答案两个参数:
mAlbums = new Albums(QzonePicturesActivity.this, mQQAuth.getQQToken());
mAlbums.addAlbum(albumname, albumdesc, AlbumSecurity.publicToAll, question, answer, new AddAlbumListListener());

2.3 监听结果

    private class AddAlbumListListener implements IUiListener {

        public void onComplete(final Object response) {
Toast.makeText(getApplicationContext(), response.toString(), 0).show();
}
@Override
public void onCancel() {
}
@Override
public void onError(UiError arg0) {
}
}

//////////////////////////////////////////////////////////////////

上传照片:必须先授权登入

3.1(同上1.1)

3.2 打开本地相册 选取要上传的图片

Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
intent.addCategory(Intent.CATEGORY_OPENABLE);
intent.setType("image/*");
startActivityForResult(intent, REQUEST_UPLOAD_PIC);

3.3 获取选取的图片路径,并转为绝对路径

    @Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if(requestCode == REQUEST_UPLOAD_PIC && resultCode == Activity.RESULT_OK){
ContentResolver cr = this.getContentResolver();
Cursor cursor = cr.query(data.getData(), null, null, null, null);
cursor.moveToFirst();
doUploadPic(cursor.getString(1));
}
}

3.4 上传图片

        String photodesc = "照片描述" + new Date();// 照片描述,注意照片描述不能超过200个字符。
String x = "0-360";// 照片拍摄时的地理位置的经度。请使用原始数据(纯经纬度,0-360)。
String y = "0-360";// 照片拍摄时的地理位置的纬度。请使用原始数据(纯经纬度,0-360)。
mAlbums = new Albums(QzonePicturesActivity.this, mQQAuth.getQQToken());
mAlbums.uploadPicture(uri, photodesc, null, x, y,new UpAlbumListListener());// 相册id,不填则传到默认相册

源码:链接: http://pan.baidu.com/s/1qWwJQ24

QQ登入(5)获取空间相册,新建相册,上传图片到空间相册的更多相关文章

  1. QQ登入(6)腾讯微博-获取微博用户信息,发送微博

    1.1获取weibo用户信息 //先登入授权,可以参考QQ登入(1) Weibo mWeibo = new Weibo(this, mQQAuth.getQQToken()); mWeibo.getW ...

  2. iOS开发——实用篇Swift篇&QQ登入界面实现

    QQ登入界面实现 我们知道在App Store中几乎所有软件都设计到账户的登入,而我们最常见的就是QQ,微信,在没有踏入程序员这条不归路之前,看到一个个的界面都感觉好高大上的样子. 在学习的过程中,自 ...

  3. QQ登入(1)-有客户端直接授权,没客户端web授权

    准备jar文件3个: android-support-v4.jar 下载地址:http://pan.baidu.com/s/1eQmoTm6 mta-sdk-1.6.2.jar 下载地址:http:/ ...

  4. QQ登入(2)获取用户信息

    private void initView() { mUserInfo = (TextView) findViewById(R.id.user_info); mUserLogo = (ImageVie ...

  5. QQ登入(3)QQ空间分享-无需登入

    public void myclick2(View v){ //QZone分享, SHARE_TO_QQ_TYPE_DEFAULT 图文,SHARE_TO_QQ_TYPE_IMAGE 纯图 ,SHAR ...

  6. QQ登入(4)QQ分享-内容转载

    ///////////////////QQ分享///////////// public void myclick3(View v){ //shareType : SHARE_TO_QQ_TYPE_IM ...

  7. c#实现microsoft账号登入授权(OAuth 2.0)并获取个人信息

    本博主要介绍microsoft 账号授权(OAuth 2.0)登入并获取用户信息的过程,因为写过google账号授权登入的过程,所以这里就简单介绍一下,google授权登入参考地址:http://ww ...

  8. 微信小程序登入流程

    微信小程序登入流程 一.首先前端先传code去后端 wx.login({ success(res) { if (res.code) { //发起网络请求 wx.request({ url: app.g ...

  9. 8-python模拟登入(无验证码)

    方式: 1.手动登入,获取cookie 2.使用cookielib库 和 HTTPCookieProcessor处理器 #_*_ coding: utf-8 _*_ ''' Created on 20 ...

随机推荐

  1. POJ 1185 炮兵阵地(经典的状态压缩DP)

    题意:中文题. 思路,经典的状态压缩题目. 由于列长比较小,我们可以以行为阶段用状态压缩来做. 由于攻击只占两个格,这样从行的角度看,第i行的炮兵只与前i-1和前i-2行有关系.这样如果用j,k,l分 ...

  2. ACM -二分图题目小结

    暂时只包括与最大匹配相关的问题. 求最大独立集,最小路径覆盖等等大多数题目都可以转化为求最大匹配用匈牙利算法解决. 1.最大匹配(边集) 此类问题最直接,直接用匈牙利算法即可. HDU 2063  过 ...

  3. stm32 dac 配置过程

    DAC模块的通道1来输出模拟电压,其详细设置步骤如下: 1)开启PA口时钟,设置PA4为模拟输入. STM32F103ZET6的DAC通道1是接在PA4上的,所以,我们先要使能PORTA的时钟,然后设 ...

  4. SQL Server 按某一字段分组 取 最大 (小)值所在行的数据

    SQL Server 按某一字段分组 取 最大 (小)值所在行的数据 -- 按某一字段分组 取 最大 (小)值所在行的数据 -- (爱新觉罗.毓华(十八年风雨,守得冰山雪莲花开) 2007-10-23 ...

  5. (转)Document对象内容集合

    原文:http://webcenter.hit.edu.cn/articles/2009/06-10/06144703.htm document 文挡对象 - JavaScript脚本语言描述 ——— ...

  6. SmartZoneOCR识别控件免费下载地址

    SmartZone™光学字符识别工具包,使开发人员能够进行带状区域光学字符识别,带状区域在表单处理应用程序中经常使用.本产品所包含的.NET控件以及ActiveX COM组件在内部使用两种单独的识别技 ...

  7. C# 调用导致堆栈不对称。原因可能是托管的 PInvoke 签名与非托管的目标签名不匹配

    在dllimport中加入CallingConvention参数就行了,[DllImport(PCAP_DLL, CharSet = CharSet.Auto, CallingConvention = ...

  8. 深入学习:Windows下Git入门教程(上)

    一,安装Git: 1.1Linux上安装命令: sudo apt-get install git 1.2在Windows上安装Git: 使用Windows版的msysgit,官方下载地址:http:/ ...

  9. 产生n位元的所有格雷码

    原文链接:http://blog.csdn.net/beiyeqingteng/article/details/7044471 问题:产生n位元的所有格雷码. 格雷码(Gray Code)是一个数列集 ...

  10. HDU1166-敌兵布阵(线段树)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1166 #include<cstdio> #include<string> #i ...