使用APICloud & MobTech SDK 快速实现分享到社交平台功能

简介: 做移动端开发的同学对分享功能应该很了解了,比如很多APP都有分享到微信、微博的功能,可以分享文本、图片、链接、音乐等。本文将为大家讲解如何使用APICloud & MobTech SDK 快速实现分享到社交平台的功能。

做移动端开发的同学对分享功能应该很了解了,比如很多APP都有分享到微信、微博的功能,可以分享文本、图片、链接、音乐等。本文将为大家讲解如何使用APICloud & MobTech SDK 快速实现分享到社交平台的功能。


准备工作

1、注册MobTech账号

开发者使用本模块之前需要先到Mob官网申请开发者账号,并在账号内填写相应信息创建自己的 APP,从而获取AppKey和AppSecret。 详情参考: https://www.mob.com/wiki/detailed?wiki=306&id=172


2、创建APICloud应用

APICloud提供了两种创建应用的方式,开发者可在云端或APICloud Studio中创建应用。具体步骤可参见文档https://docs.apicloud.com/APICloud/creating-first-app

快速开始------第一阶段,添加模块

1、在 APICloud 的项目中添加 shareSDKPlus 模块,如下图:

在模块库搜索模块名 ,搜索出来后 ,点击加号添加。下图由于已经添加上了,显示已添加。

1.png

image.gif

2、仔细阅读模块文档:https://docs.apicloud.com/Client-API/Open-SDK/shareSDKPlus


3、通过阅读模块文档,我们知道还需要添加依赖模块 mobcommonlib ,这个模块也是在APICloud 模块库搜索添加。


4、Android 平台还需要添加各个对应平台的模块包,需要到 github 下载 。这样做的好处是可以根据所需加不同的模块,比如你只需分享到微信、微博平台,只需下载微信、微博对应的模块包即可。这样编译后的安装包较少。如果默认包含十多个平台,安装包会比较大。

2.jpg

image.gif

5、将下载下来的对应分享平台的模块包,上传到APICloud 自定义模块处,并添加至项目。如下图:

3.png

image.gif

添加后:

4.png

image.gif

第二阶段,配置应用key

1、在微信平台创建应用,获取微信的 appid。可参考文档: https://docs.apicloud.com/Others/Open-SDK-Integration-Guide/weChat

在 APICloud  项目的 config.xml 中配置 mob 平台的 AppKey 、AppSecret 和 微信平台的 key 、(即微信AppID)和 AppSecret ,如下:

<feature name="shareSDKPlus">
        <param name="Mob-AppKey" value="35b704c55****" />
        <param name="Mob-AppSecret" value="99ed58d9c720e418eedb5e1abed6****" />
        <param name="WeChat-AppId" value="wxedd229a2c545****" />
        <param name="WeChat-AppSecret" value="bc0d875592da9c869548b7225a5f****" />
        <param name="WeChat-WithShareTicket" value="true" />
        <param name="WeChat-BypassApproval" value="false" />
    </feature>

image.gif

第三阶段------开始编码调试

特别注意: config.xml 配置后,需先提交代码,然后再编译自定义loader。

使用自定义loader wifi 同步代码调试教程,参考以下两篇教程文档:

https://docs.apicloud.com/Dev-Guide/Custom_Loader

https://docs.apicloud.com/Dev-Tools/studio3-wifi-debug


Android 需先调用初始化接口:

var mobcommonlib = null;
    function init() {
        mobcommonlib = api.require('mobcommonlib');
        var shareApi = api.require('shareSDKPlus');
        console.log('init--------')
        shareApi.init({
        }, function (ret, err) {
            api.alert({ title: '初始化完成' });
            api.alert({ title: JSON.stringify(err) });
        });
    }

image.gif

初始化成功后,可以调用微信分享或微信登录接口:

分享接口示例:

function fnshareContent() {
        var shareApi = api.require('shareSDKPlus');
        var shareParams =
        {
            //"text": "测试的文字1111",
            "imageUrl": "http://download.sdk.mob.com/206/4f8/dfc9ea27dd8bc4abfec865c38d/800_450_156.2.jpg",
            //"type": $sharesdk.ContentType.Auto
        };
        shareApi.shareContent({
            "platform": 22,
            "shareType": $sharesdk.ContentType.Image,
            "shareParams": shareParams
        }, function (ret, err) {
            var state = ret.state;
            alert(JSON.stringify(ret))
            alert(JSON.stringify(err))
        })
    }

image.gif

登录授权接口示例:

function fnauthorize() {
        var shareApi = api.require('shareSDKPlus');
        shareApi.authorize({
            "platform": $sharesdk.PlatformID.WeChat
        }, function (ret, err) {
            var state = ret.state;
            switch (state) {
                case $sharesdk.ResponseState.Success://1
                    api.toast({
                        msg: "授权成功",
                        location: 'middle'
                    });
                    break;
                case $sharesdk.ResponseState.Fail://2
                    api.toast({
                        msg: "授权失败",
                        location: 'middle'
                    });
                    break;
                case $sharesdk.ResponseState.Cancel://3
                    api.toast({
                        msg: "取消授权",
                        location: 'middle'
                    });
                    break;
                default:
            }
        });
    }

image.gif


目录
相关文章
|
3月前
|
监控 API 开发工具
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK获取每张图像的微秒时间和FrameID功能(C#)
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK获取每张图像的微秒时间和FrameID功能(C#)
48 0
|
3月前
|
数据采集 API 开发工具
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用Force IP强制修改网口IP功能(C++)
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用Force IP强制修改网口IP功能(C++)
29 0
|
3月前
|
数据采集 API 开发工具
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用ForceIP强制修改网口IP功能(C#)
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用ForceIP强制修改网口IP功能(C#)
29 0
|
3月前
|
安全 API 开发工具
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用短曝光功能(C++)
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用短曝光功能(C++)
40 0
|
3月前
|
安全 API 开发工具
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用短曝光功能(C#)
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用短曝光功能(C#)
35 0
|
3月前
|
编解码 监控 开发工具
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK设置相机的图像剪切(ROI)功能(C++)
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK设置相机的图像剪切(ROI)功能(C++)
29 1
|
3月前
|
编解码 监控 开发工具
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用Binning像素合并功能(C#)
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用Binning像素合并功能(C#)
19 0
|
3月前
|
存储 数据管理 开发工具
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK设置相机本身的数据保存(CustomData)功能(C++)
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK设置相机本身的数据保存(CustomData)功能(C++)
48 0
|
3月前
|
存储 编解码 开发工具
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用UserSet功能保存和载入相机的各类参数(C#)
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用UserSet功能保存和载入相机的各类参数(C#)
38 0
|
3月前
|
编解码 监控 开发工具
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用Binning像素合并功能(C++)
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用Binning像素合并功能(C++)
49 0