cocos2dx lua 接微博SDK(二)--微博分享
来源:互联网 发布:电脑淘宝直播怎么看 编辑:程序博客网 时间:2024/06/14 11:39
1,在类AppActivity里加上
public static IWeiboShareAPI mWeiboShareAPI = null;,
2,在protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
后面加上
// 创建微博分享接口实例
mWeiboShareAPI = WeiboShareSDK.createWeiboAPI(this, Constants.APP_KEY);
// 注册第三方应用到微博客户端中,注册成功后该应用将显示在微博的应用列表中。
// 但该附件栏集成分享权限需要合作申请,详情请查看 Demo 提示
// NOTE:请务必提前注册,即界面初始化的时候或是应用程序初始化时,进行注册
mWeiboShareAPI.registerApp();
if (savedInstanceState != null) {
mWeiboShareAPI.handleWeiboResponse(getIntent(), this);
}
并把public class AppActivity extends Cocos2dxActivity { 修改为
public class AppActivity extends Cocos2dxActivity implements Response {
3,创建分享函数(只实现了文字+图片的分享,有无安装客户端都可)
//
public static void shareWeibo() throws FileNotFoundException{
if (isEnter == true){
@SuppressWarnings("unused")
int supportApi = mWeiboShareAPI.getWeiboAppSupportAPI();
WeiboMultiMessage weiboMessage = new WeiboMultiMessage();
weiboMessage.textObject = getTextObj(); //分享的文字
weiboMessage.imageObject = getImageObj();//分享的图片
// 2. 初始化从第三方到微博的消息请求
SendMultiMessageToWeiboRequest request = new SendMultiMessageToWeiboRequest();
// 用transaction唯一标识一个请求
request.transaction = String.valueOf(System.currentTimeMillis());
request.multiMessage = weiboMessage;
// 3. 发送请求消息到微博,唤起微博分享界面
AuthInfo authInfo = new AuthInfo(app, Constants.APP_KEY, Constants.REDIRECT_URL, Constants.SCOPE);
Oauth2AccessToken accessToken = mAccessToken;
String token = "";
if (accessToken != null) {
token = accessToken.getToken();
}
mWeiboShareAPI.sendRequest(app, request, authInfo, token, new WeiboAuthListener() {
@Override
public void onWeiboException( WeiboException arg0 ) {
}
@Override
public void onComplete( Bundle bundle ) {
// TODO Auto-generated method stub
Oauth2AccessToken newToken = Oauth2AccessToken.parseAccessToken(bundle);
}
@Override
public void onCancel() {
}
});
}
}
/**
* @see {@link Activity#onNewIntent}
*/
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
// 从当前应用唤起微博并进行分享后,返回到当前应用时,需要在此处调用该函数
// 来接收微博客户端返回的数据;执行成功,返回 true,并调用
// {@link IWeiboHandler.Response#onResponse};失败返回 false,不调用上述回调
mWeiboShareAPI.handleWeiboResponse(intent, this);
}
/**
* 创建文本消息对象。
*
* @return 文本消息对象。
*/
private static TextObject getTextObj() {
TextObject textObject = new TextObject();
textObject.text = "www.baidu.com myWeibo FenXiang success!";
return textObject;
}
/**
* 创建图片消息对象。
*
* @return 图片消息对象。
* @throws FileNotFoundException
*/
@SuppressWarnings("deprecation")
private static ImageObject getImageObj() throws FileNotFoundException {
String imgFilePath = "/data/data/org.cocos2dx.Crazy/files/muguShare1.png";
FileInputStream fis = new FileInputStream(new File(imgFilePath));//文件输入流
Bitmap bmp = BitmapFactory.decodeStream(fis);
ImageObject imageObject = new ImageObject();
BitmapDrawable bitmapDrawable = new BitmapDrawable(bmp);
imageObject.setImageObject(bitmapDrawable.getBitmap());
return imageObject;
}
@Override
public void onResponse(BaseResponse arg0) {
// TODO Auto-generated method stub
}
PS:分享需要修改AndroidManifest.xml里的权限(文档里有说明)
4,cocos2dx 直接调用shareWeibo()即可实现分享。
- cocos2dx lua 接微博SDK(二)--微博分享
- cocos2dx lua 接微博SDK(一)--微博登陆
- cocos2dx lua 接微博SDK(三)--获取用户信息,好友信息
- cocos2dx lua 接微博SDK(四)--lua与java的交互
- cocos2dx lua 安卓接付费SDK
- lua on cocos2dx 札记(二)
- cocos2dx游戏demo接入微信分享SDK
- cocos2dx接入微信sdk,分享文本和截图
- cocos2dx-lua绑定自定义c++类(二)
- [cocos2dx]事件分发机制--lua源码(二)
- 关于XCode里导入cocos2dx项目接入微信分享SDK问题!
- 【COCOS2DX-LUA 脚本开发之二】LUA语言基础
- 【COCOS2DX-LUA 脚本开发之二】LUA语言基础
- 【COCOS2DX-LUA 脚本开发之二】LUA语言基础
- 【Cocos2dx-Lua 脚本开发之二】Lua语言基础
- 【COCOS2DX-LUA 脚本开发之二】LUA语言基础
- 干货二:微信SDK-分享初探-更新中
- cocos2dx lua
- Alberl入门教程
- CheckBox复选框
- C++xml文件操作 CMarkup学习方法说明(转)
- hiho 1000: A+B
- 毕达哥拉斯三元组的解
- cocos2dx lua 接微博SDK(二)--微博分享
- fragment的初始化
- ubuntu 设置activemq开机启动
- 双11GRE计划逻辑写作之Analytical Writing Section简介
- cpu过高分析
- regsvr32 注册 ocx 时卡死,不退出
- iOS与Android的音频互通
- STL学习笔记之容器--deque(二)源码剖析
- Maven构建web项目在Eclipse中部署的几种方法