发布网友 发布时间:2022-04-24 18:41
共1个回答
热心网友 时间:2022-04-10 04:41
1、新建工程
2、下载sharesdk-cocos2dx-3.x版 和 android 、ios包
3、ios平台 --添加最新的sharesdk-ios
1-加入平台库
SystemConfiguration.framework ,
QuartzCore.framework ,
CoreTelephony.framework ,
libicucore.dylib ,
libz.1.2.5.dylib ,
Security.framework
libstdc++.dylib --qq和空间
libsqlite3.dylib --qq和空间
3-1配置url schemes (新浪微博如果配置,则为sso免登录)
实力: QQ05FB8B52,wx4868b35061f87885
说明:
QQ的AppID,其格式为:”QQ” + AppId的16进制(如果appId转换的16进制数不够8位则在前面补0,如转换的是:5FB8B52,则最终填入为:QQ05FB8B52 注意:转换后的字母要大写)
在微信开放平台(http://open.weixin.qq.com/ )注册应用并取得应用的AppID,然后打开下图位置,在URL Types中添加微信AppID
配置新浪微博、*的SSO(如不需要免帐号登录可跳过
登录新浪微博和*的开放平台,获取AppID 。新浪微博的url scheme的设置格式为wb+AppID,*的设置格式为fb+AppID。具体参考下图:
3-2
添加短信分享、邮件分享、打印、拷贝(如不需要可跳过)
//连接短信分享
[ShareSDK connectSMS];
//连接邮件
[ShareSDK connectMail];
//连接打印
[ShareSDK connectAirPrint];
//连接拷贝
[ShareSDK connectCopy];
3-3 ipad分享
功能接口创建一个容器对象并调用容器对象的setIPadContainer系列方法来设置iPad版显示容器。 一般而言,我们会建议使用一个比较小的、作为当前viewController 所控制的view 的subview 来作为“锚点”,来设置 container。例如一个已有的button。这样分享界面或者授权界面才能正确显示。调用接口如下:
id<ISSContainer> container = [ShareSDK container];
[container setIPadContainerWithView:sender arrowDirect:UIPopoverArrowDirectionUp];
然后将container对象传入showShareActionSheet的第一个参数中,如:
//弹出分享菜单
[ShareSDK showShareActionSheet:container
shareList:nil
content:publishContent
statusBarTips:YES
authOptions:nil
shareOptions:nil
result:^(ShareType type, SSResponseState state, id<ISSPlatformShareInfo> statusInfo, id<ICMErrorInfo> error, BOOL end) {
if (state == SSResponseStateSuccess)
{
NSLog(@"分享成功");
}
else if (state == SSResponseStateFail)
{
NSLog(@"分享失败,错误码:%d,错误描述:%@", [error errorCode], [error errorDescription]);
}
}];
4、导入跨平台包
修改:C2DXShareSDK.cpp
C2DXiOSShareSDK::open(CCString::createWithFormat("%s",appKey), useAppTrusteeship);
第二部:
AppController.mm
头文件
#import <ShareSDK/ShareSDK.h>
//微信
#import "WXApi.h"
//qq互联
#import <TencentOpenAPI/QQApiInterface.h>
#import <TencentOpenAPI/TencentOAuth.h>
在 didFinishLaunchingWithOptions 中
//导入微信
[ShareSDK importWeChatClass:[WXApi class]];
//导入qq互联
[ShareSDK importQQClass:[QQApiInterface class] tencentOAuthCls:[TencentOAuth class]];
处理handleOpenURL
- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url
{
return [ShareSDK handleOpenURL:url sourceApplication:nil annotation:nil wxDelegate:nil];
}
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
{
return [ShareSDK handleOpenURL:url sourceApplication:sourceApplication annotation:annotation wxDelegate:nil];
}