QQ登入(5)获取空间相册,新建相册,上传图片到空间相册
获取相册列表:必须先授权登入
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)获取空间相册,新建相册,上传图片到空间相册的更多相关文章
- QQ登入(6)腾讯微博-获取微博用户信息,发送微博
1.1获取weibo用户信息 //先登入授权,可以参考QQ登入(1) Weibo mWeibo = new Weibo(this, mQQAuth.getQQToken()); mWeibo.getW ...
- iOS开发——实用篇Swift篇&QQ登入界面实现
QQ登入界面实现 我们知道在App Store中几乎所有软件都设计到账户的登入,而我们最常见的就是QQ,微信,在没有踏入程序员这条不归路之前,看到一个个的界面都感觉好高大上的样子. 在学习的过程中,自 ...
- QQ登入(1)-有客户端直接授权,没客户端web授权
准备jar文件3个: android-support-v4.jar 下载地址:http://pan.baidu.com/s/1eQmoTm6 mta-sdk-1.6.2.jar 下载地址:http:/ ...
- QQ登入(2)获取用户信息
private void initView() { mUserInfo = (TextView) findViewById(R.id.user_info); mUserLogo = (ImageVie ...
- QQ登入(3)QQ空间分享-无需登入
public void myclick2(View v){ //QZone分享, SHARE_TO_QQ_TYPE_DEFAULT 图文,SHARE_TO_QQ_TYPE_IMAGE 纯图 ,SHAR ...
- QQ登入(4)QQ分享-内容转载
///////////////////QQ分享///////////// public void myclick3(View v){ //shareType : SHARE_TO_QQ_TYPE_IM ...
- c#实现microsoft账号登入授权(OAuth 2.0)并获取个人信息
本博主要介绍microsoft 账号授权(OAuth 2.0)登入并获取用户信息的过程,因为写过google账号授权登入的过程,所以这里就简单介绍一下,google授权登入参考地址:http://ww ...
- 微信小程序登入流程
微信小程序登入流程 一.首先前端先传code去后端 wx.login({ success(res) { if (res.code) { //发起网络请求 wx.request({ url: app.g ...
- 8-python模拟登入(无验证码)
方式: 1.手动登入,获取cookie 2.使用cookielib库 和 HTTPCookieProcessor处理器 #_*_ coding: utf-8 _*_ ''' Created on 20 ...
随机推荐
- WEB ui快速构建
http://www.runoob.com/bootstrap/bootstrap-ui-editor.html 1http://pingendo.com/ 2http://www.layoutit. ...
- 自定义UIPageControl
iphone的UIPageControl控件可以显示用户huan'dong滑动到的页码.但是里面的小点的颜色时默认的白色.如果背景也是白色的hu话,你就悲剧了.于是乎上网找了一些资料,找到了改变UIP ...
- 黑马程序员——【Java基础】——Java语法基础
---------- android培训.java培训.期待与您交流! ---------- 一.关键字 1.定义和特点 定义:被Java语言赋予了特殊含义的单词. 特点:关键字中所有的字母都为小写. ...
- Unity3D ShaderLab 基础的高光实现
Unity3D ShaderLab 基础的高光实现 关于高光: 在一个物体表面的高光属性就是为了描述它是如何表现光泽.这种类型的效果在着色器的世界中通常称为视点相关效果. 之所以这样说,是因为为了实现 ...
- node实现http上传文件进度条 -我们到底能走多远系列(37)
我们到底能走多远系列(37) 扯淡: 又到了一年一度的跳槽季,相信你一定准备好了,每每跳槽,总有好多的路让你选,我们的未来也正是这一个个选择机会组合起来的结果,所以尽可能的找出自己想要的是什么再做决定 ...
- Delphi第一个入门程序——鼠标点击计数 - imsoft.cnblogs
实现的效果如下: 制作要点: 添加一个按钮Button1和一个标签Label1,并双击按钮进入编程界面在var Form1: TForm1;下面一行加上 n:integer;//定义变量. 然后在 ...
- sql server中NULL导入decimal字段时报错
sql server中NULL导入decimal字段时报错 在导入CSV文件时,如果decimal字段为null值,导致文本文件入库时失败. 错误现象 构造例子 新建一张表,包含decimal字段. ...
- Color Map的生成方法
/* Return a RGB colour value given a scalar v in the range [vmin,vmax] In this case each colour comp ...
- 工作中遇到的问题--eclipse没有方法提示
一.eclipse自身配置问题步骤:1. 打开Eclipse ,然后“window”→“Preferences”2. 选择“java”,展开,“Editor”,选择“Content Assist”.3 ...
- spark-scheduled调度算法
1.3源码是如此,后面新版本源码会尽可能的根据用户shell配置的参数进行分配 1.spareadOutApps 尽可能分配到多的机器上面execute和CPU core 2.非spareadouta ...