分享

JS快速集成指南 | Mob文档中心

 看见就非常 2015-03-17

JS快速集成指南

通用集成步骤

下载ShareSDK for JS 组件

打开Github下载JSSample项目。将JSApi/ShareSDK.js拷贝到Web页面可以访问的路径(现在不支持浏览器打开的web应用,只支持App内置的Web页面,这个web页可以自己在本地也就是项目里创建html文件,这个html文件也可以网上得到)。

导入ShareSDK.js脚本

在Web页中加入ShareSDK.js脚本。如:

1
<script language="javascript" type="text/javascript" src="ShareSDK.js"></script>

初始化SDK

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
<!DOCTYPE html>
<html>
<head>
    <title>ShareSDK for JS Sample</title>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
    <script language="javascript" type="text/javascript" src="ShareSDK.js"></script>
    <script language="javascript" type="text/javascript">
        function init()
        {
            $sharesdk.open("iosv1101", true);
}
</script>
</head>
<body onload="init()" style="text-align: center"></body></html>

可以在页面onload事件中调用open方法进行SDK初始化。代码如下:

1
2
3
4
5
6
7
8
9
10
function init()
{
        $sharesdk.open("iosv1101", true);
        var sinaConf = {};
        sinaConf["app_key"] = "568898243";
        sinaConf["app_secret"] = "38a4f8204cc784f81f9f0daaf31e02e3";
        sinaConf["redirect_uri"] = "http://www.";
        $sharesdk.setPlatformConfig($sharesdk.platformID.SinaWeibo, sinaConf);
}
由于Android平台推荐使用shareSDK.xml文件配置应用信息。此文件可以在jsdemo中找到,将其放入您安卓项目的assets目录下即可。
js xml配置

分享内容

先构造分享内容结构,代码如下:

1
2
3
4
5
var params = {"text" : "测试的文字",
"imageUrl" : "http://img0./img/image/shouye/tangwei.jpg",
"title" : "测试的标题","titleUrl" : "http://","description" : "测试的描述",
"site" : "ShareSDK","siteUrl" : "http://",
"type" : $sharesdk.contentType.Text};

然后将内容传入分享接口

  • 弹出分享菜单
1
$sharesdk.shareContent($sharesdk.platformID.SinaWeibo, params, function (platform, state, shareInfo, error) {alert("state = " + state + "\nshareInfo = " + shareInfo + "\nerror = " + error);});
  • 弹出分享编辑界面
1
$sharesdk.showShareView($sharesdk.platformID.SinaWeibo, params, function (platform, state, shareInfo, error) {alert("state = " + state + "\nshareInfo = " + shareInfo + "\nerror = " + error);});
  • 直接分享
1
2
3
4
5
$sharesdk.shareContent($sharesdk.platformID.SinaWeibo, params, function (platform, state, shareInfo, error) {
alert("state = " + state + "\nshareInfo = " + shareInfo + "\nerror = " + error);
});
  • 一键分享
1
2
3
4
5
$sharesdk.oneKeyShareContent([$sharesdk.platformID.SinaWeibo, $sharesdk.platformID.TencentWeibo], params, function (platform, state, shareInfo, error) {
alert("state = " + state + "\nshareInfo = " + shareInfo + "\nerror = " + error);
});
关于具体的分享参数名称,请参考“不同平台分享内容的详细说明”章节的说明。

用户授权

调用ShareSDK中的authorize方法可进行用户授权。代码如下:

1
2
3
4
5
$sharesdk.authorize($sharesdk.platformID.SinaWeibo, function (platform, state, error){
alert("state = " + state + "\nerror = " + error);
});

获取用户资料

调用ShareSDK中的getUserInfo来获取授权用户的信息。代码如下:

1
2
3
4
5
$sharesdk.getUserInfo($sharesdk.platformID.SinaWeibo, function (platform, state, user, error) {
alert("state = " + state + "\nuser = " + user + "\nerror = " + error);
});
iOS部分集成步骤(不发布iOS版本可略过此部分)

导入JS桥接的iOS版本组件

打开下载的JS包里的iOS/ShareSDKForJS/ShareSDKForJS.xcodeproj项目工程,选择ShareSDKForJS静态库运行Xcode,如图:

700px-js_doc_001.png

运行成功之后,请大家打开文件找到Build文件夹,然后进入文件中找到build/Products/Debug-iphonesimulato /libShareSDKForJS.a文件以及找到build/Products/Debug-iphonesimulator/usr/local /include/ShareSDKJSBridge.h这个文件,再将libShareSDKForJS.a和ShareSDKJSBridge.h这 2个文件导入到你的项目里,如图

700px-js_doc_002.png

注意:(如果在分享中弹不出分享的菜单,如果大家的ShareSDK.js文件是本地的,要把这个加到Build Phases里面的Copy Bundle Resources选项)

下载iOS版本ShareSDK,并导入到工程中。

登录ShareSDK的官方网站下载并解压最新版本的SDK。如果您还尚未下载,请 点击这里下载 或者访问 http:///Download 。解压后如图所示:

700px-js_doc_003

将ShareSDK导入工程中,并添加相应的依赖库。此步骤可以参考:《iOS快速集成指南》中的第一、第二步。执行完成后,如下图所示:

700px-js_doc_004.png

为UIWebView添加消息捕获

先导入ShareSDKJSBridge.h头文件。

1
#import "ShareSDKJSBridge.h"

然后给UIWebView设置一个委托对象,如:

1
webView.delegate = self;

注意:webView是UIWebView的对象实例。

最后实现shouldStartLoadWithRequest委托方法,并在方法中加入JSBridge的captureRequest方法,代码如下:

1
2
3
4
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
return ![[ShareSDKJSBridge sharedBridge] captureRequest:request webView:webView];
}

添加完毕后就可以对工程进行运行测试。

 

Android部分集成步骤(不发布Android版本可略过此部分)

导入的步骤如下:

1、参考”安卓快速集成文档“章节的说明,导入ShareSDK for Android的jar库和图片、文字资源。

2、复制github上的jsdemo项目中”cn.sharesdk.js”包中的源代码复制到你的项目中。QQ截图20150304142013

3、在您WebView加载页面地址之前。调用ShareSDKUtils.prepare(webview, webviewClient);

请注意,ShareSDKUtils.prepare方法要在WebView.setWebViewClient(WebViewClinet);之后调用,而且此后不能再调用setWebViewClient方法,否则ShareSDK的初始化操作可能失败。

下面的代码来自github上的demo:

1
2
3
4
5
6
7
8
9
10
11
12
public class MainActivity extends Activity {
       protected void onCreate(Bundle savedInstanceState) {
               super.onCreate(savedInstanceState);
               WebView wvBody = new WebView(this);
               WebViewClient wvClient = new WebViewClient();
               wvBody.setWebViewClient(wvClient);
               wvBody.setWebChromeClient(new WebChromeClient() {
                   public boolean onJsAlert(WebView view, String url, String message,
                            JsResult result) {
                        return super.onJsAlert(view, url, message, result);
                }
    });

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多