Mac下 phonegap/cordova 集成sharesdk
来源:互联网 发布:淘宝网耐克运动男鞋 编辑:程序博客网 时间:2024/05/17 21:57
1.安装phonegap 2.9.1
PhoneGap是一款基于HTML5标准的跨平台开源手机Web应用开发框架。它允许用户通过Web技术访问移动设备的本地应用、API接口及应用程序等。
PhoneGap的官方网站
官网下载zip文件,解压后,目录结构如下:
打开终端,进入lib/ios/bin 目录,执行命令
./create /Users/dale/Desktop/demo1 hello.world.test HelloWorld
命令意思是在桌面创建demo1文件夹,里面创建一个helloWorld工程,中间3段包识别名
然后再终端转换目录到桌面demo1/cordova(这里的目录根据你创建工程的目录相应变化)
执行命令: ./build
看到build success,就是成功了
然后进入demo文件夹,打开xdoer工程文件,run一下吧
2 下载shareSDK
解压,拖到helloworld工程下,作为一个子目录,引用的话要加好链接,不清楚这个拖动的要直接复制所有文件,之后,工程目录如下:
然后再class目录中找到 AppDelegate.m文件,在其中加入
#import<ShareSDK/ShareSDK.h>
在- (BOOL)application: didFinishLaunchingWithOptions:方法中调用registerApp方法来初始化SDK- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{ [ShareSDK registerApp:@"xxxx"]; //参数xxxx为ShareSDK官网中添加应用后得到的AppKey //…… return YES;}
在下载的sharesdk demo中自定义分享界面(Custom shate View…)文件夹下的 AGAppDelegat.m
文件,拷贝它的 -initializePlat函数内容,加入到[ShareSDK registerApp:@"xxxx"]后面,注意函数原有内容不要删除,结构大致如下
[ShareSDK registerApp:@"xxxx"]; /** 连接新浪微博开放平台应用以使用相关功能,此应用需要引用SinaWeiboConnection.framework http://open.weibo.com上注册新浪微博开放平台应用,并将相关信息填写到以下字段 **/ [ShareSDK connectSinaWeiboWithAppKey:@"2489905623" appSecret:@"097a54f4f4a553f3efa1669c68b5ef0d" redirectUri:@"http://open.weibo.com"]; /** 连接腾讯微博开放平台应用以使用相关功能,此应用需要引用TencentWeiboConnection.framework http://dev.t.qq.com上注册腾讯微博开放平台应用,并将相关信息填写到以下字段 如果需要实现SSO,需要导入libWeiboSDK.a,并引入WBApi.h,将WBApi类型传入接口 **/ [ShareSDK connectTencentWeiboWithAppKey:@"801307650" appSecret:@"ae36f4ee3946e1cbb98d6965b0b2ff5c" redirectUri:@"http://www.sharesdk.cn" wbApiCls:[WeiboApi class]];因为包含了一些新标示符,需要import一些头文件,下面列的一些头文件不够,排除所有的error,为了测试,我吧一些需要分享给的目标给注释了,只留下微博,微信这些,若是需要,可自行查找相关头文件
#import "WeiboApi.h"#import "WXApi.h"#import "YXApi.h"#import <TencentOpenAPI/TencentOAuth.h>#import <TencentOpenAPI/QQApiInterface.h>
新浪微博开放平台创建账号,并创建应用
[ShareSDK connectSinaWeiboWithAppKey:@“xx”
appSecret:@"xx"
redirectUri:@“http://www.baidu.com"];
appkey和appsecret都是应用的基本信息
应用高级信息,授权回调页那个网址就是redirectUri,当然要你自己设置成自己要去的网址,(默认为空)
此时,编译的话会由很多链接错误,因为还有很多动态链接库没有加进来
选择工程目录,点击test,选择building phase,在链接二进制库文件末尾点击+号
加上一些链接库,包括:
3 新建接口
#import <Foundation/Foundation.h>#import <Cordova/CDVPlugin.h>@interface Myapp : CDVPlugin -(void)shareInfo:(CDVInvokedUrlCommand*)command;@endm文件
//// Myapp.m// Test//// Created by dalewang on 14-4-26.////#import "Myapp.h"#import <ShareSDK/ShareSDK.h>@implementation Myapp-(void)shareInfo:(CDVInvokedUrlCommand*)command{ // NSString *imagePath = [[NSBundle mainBundle] pathForResource:@"http://58.216.171.202:9999/Upload/s150/2013-12-23/130322501343593929" ofType:@"png"]; // NSString* title=[command.arguments objectAtIndex:0]; NSString* content=[command.arguments objectAtIndex:1]; NSString* url=[command.arguments objectAtIndex:2]; NSString* imagePath=[command.arguments objectAtIndex:3]; // if ([[UIDevice currentDevice] userInterfaceIdiom] == UIUserInterfaceIdiomPad) { NSLog(@"ipad"); } else { NSLog(@"iphone or ipod"); //构造分享内容 id<ISSContent> publishContent = [ShareSDK content:content// defaultContent:@"分享好东西"// image:[ShareSDK imageWithPath:imagePath] title:title// url:url// description:@"分享好东西"// mediaType:SSPublishContentMediaTypeNews]; [ShareSDK showShareActionSheet:nil 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]); } }]; } }@end在index.html文件中加入调用代码
加入一段js代码,
<script> function test() { cordova.exec(null, null,"MyApp","shareInfo",["标题","分享的内容","分享的连接","图片链接"]); } </script>
然后找个标签触发test函数,就ok了
测试结果如下:
- Mac下 phonegap/cordova 集成sharesdk
- [PhoneGap(Cordova)]Mac下搭建PhoneGap开发环境
- mac 下配置phonegap(cordova)开发安卓苹果应用
- mac下配置phonegap(cordova)5.1.1开发环境
- mac下配置phonegap(cordova) xcode_5.1.1开发环境
- iOS 集成 Cordova(phoneGap ) 注意事项
- 在Mac平台下搭建WebStorm+PhoneGap/Cordova开发App应用
- mac环境下node.js和phonegap/cordova创建ios和android应用
- Android Studio下集成ShareSDK
- MAC下使用PhoneGap
- cordova|phonegap 在ios下 控制 orientation。
- PhoneGap&Cordova
- PhoneGap(Cordova)
- cordova/phoneGap
- Phonegap/Cordova项目创建与编译(集成Crosswalk)
- [PhoneGap]Mac下搭建PhoneGap开发环境
- Mac下Cordova环境搭建
- MAC下创建phonegap工程
- MFC & OpenGL:通过鼠标操作变换视角
- MFC框架类、文档类、视图类相互访问的方法
- 米公益是什么?
- 百度分享
- 近来听有人说:现在做网站都不用编写代码的
- Mac下 phonegap/cordova 集成sharesdk
- SDI和MDI获得文档和视图对象的方法
- 米公益完结项目结项反馈——“多彩世界,快乐3D”
- 米公益完结项目结项反馈——环保梦想,你我一同点亮
- 啡同小可——咖啡渣的创想
- 非营利部门趋势对营销及募款的影响
- MFC教程(4)-- 消息映射的实现(1)
- MFC教程(5)-- MFC对象的创建(2)
- 互联网促进全民公益时代的到来