Ionic实现微信、qq、微博分享

Ionic实现微信、qq、微博分享

这篇文档针对的是ionic1ionic虽然ionic版本不同,但大体的思想还是相同的。

Ionic要想实现微信、qq、微博的分享,第一步必须先申请相应的应用权限。获得相应的应用权限之后,你才能进行后续的操作。

然后,我就对获取各个应用获取权限的步骤一一进行编写。

微信

第一步:进入微信开放平台:https://open.weixin.qq.com/。进行相应的登录。你如果没有账号,可以先进行注册,然后进行相应的登录。


第二步:点击进入管理中心。下面的步骤,我以移动应用举例。点击‘移动应用’,你然后就会发现下方有一个‘创建移动应用’按钮,点击它,进入创建的编辑页面。



进入编辑页面之后,那就简单了,一步一步填下去就行了。当然填写基本信息这一步中有要注意的地方。

这个地方是上传移动应用图片的地方。你上传的图片的大小必须跟它要求的一致,否则你会发现,你会很烦的(重复死循环,上传不上去)。


然后,填写完基本信息之后,进入填写平台信息页面。页面试下方的样子。


如果你想在ios中和Android中都可以分享内容到微信上的话,你就必须两个都申请。这里我举Android的例子。勾选上Android应用,显示如下图所示的界面


上图中先讲一下应用包名,应用包名指的是项目文件下config.xmlwidget标签内的id


取得这个id后,需要通过链接:

https://github.com/mobileresearch/weibo_android_sdk/blob/master/app_signatures

.apk下载apk装到手机上,apk安装完成后,打开。打开的界面如下图所示。

 


将复制好的包名放进去,Get SignaTrue就可以生成相对应的应用签名。生成的签名会以绿色字体显示。到目前为止相对应的应用包名和应用签名,就有了。回到微信开发平台中,编写平台信息页面,将他们填进去就行。


最后一步,提交审核。之后你就等待应用审核好就行,审核没通过,只能重新编写继续申请。



QQ

使用开发者账号登录腾讯开放平台(众创空间) 点击 应用接入 / 应用管理 / 创建应用 自己按照步骤填写完成。需要注意的是:安卓应用创建完成之后,直接在该应用下,点击IOS应用,同步进行IOS应用的创建,此时他们使用的是同一个 APP ID,请不要分别,分开创建! 创建完成后提交审核。【备注,有个重要的事项需要此处说明,同一个开发者账户创建的多个应用,如果使用同一QQ账号登录不同的产品后无法识别为同一个QQ用户,此时需要通过邮件的形式申请unionid接口

 

新浪微博

微博: 大致同QQ,登录微博开放平台的后台管理系统

http://open.weibo.com/?sudaref=www.baidu.com&display=0&retcode=6102





点击立即接入:你一步一步按照要求就可以,申请成功,取得appid

相关cordova插件

· 

QQ插件: cordova-plugin-qqsdk 
安装:ionic cordova plugin add cordova-plugin-qqsdk --variable QQ_APP_ID=YOUR_QQ_APPID --save

微博插件:cordova-plugin-weibosdk 
安装 使用命令:ionic cordova plugin add cordova-plugin-weibosdk --variable WEIBO_APP_ID=你的appid --save

微信插件:cordova-plugin-wechat 
安装 使用命令:ionic cordova plugin add cordova-plugin-wechat --variable wechatappid=你的appid --save

代码编写

微信代码:

controller中编写代码

1、首先判断手机有没有安装微信插件

// 检测是否安装微信插件

 if ("undefined" === typeof Wechat) {

console.log("Wechat plugin is not installed."); 

return false; 

}

2、在判断手机有没有装微信

Wechat.isInstalled(function (installed) {

    alert("Wechat installed: " + (installed ? "Yes" : "No"));

}, function (reason) {

    alert("Failed: " + reason);

});

3、分享链接代码 

Wechat.share({

    message: {

        title: "yuhao",

        description: "This is description.",

        thumb: "www/img/mickey.png",

        media: {

            type: Wechat.Type.LINK,

            webpageUrl: "http://blog.csdn.net/yu17310133443"

        }

    },

    scene: 1   // 1是朋友圈 0是好友

}, function () {

    alert("Success");

}, function (reason) {

    alert("Failed: " + reason);

});

然后,微信分享就结束了。


微博代码

1、首先判断有没有安装微博插件

// 检测是否安装微博插件

 if ("undefined" === typeof WeiboSDK) {

console.log("WeiboSDK plugin is not installed."); 

return false; 

}

2、分享链接代码

WeiboSDK.checkClientInstalled(function() {

      var args = {};

      args.url = $scope.details.shareUrl || '';

      args.title = $scope.details.title || '';

      args.description = $scope.details.shareDesc || '';

      args.image = $scope.details.shareImg; //微博有默认图片

      WeiboSDK.shareToWeibo(function() {

alert(“success!”);       

      }, function(failReason) {

       	alert(“failure!”+ failReason);     

      }, args);

    }, function() {

         alert('您没有安装微博!'); //就确认又没安装微博

});

QQ代码

1、首先判断又没安装QQ插件 

// 检测是否安装QQ插件

 if ("undefined" === typeof QQSDK) {

console.log("QQSDK plugin is not installed."); 

return false; 

}

2、分享链接代码

QQSDK.checkClientInstalled(function() {

    var args = {};

args.scene = QQSDK.Scene.QQZone;//QQSDK.Scene.QQ,QQSDK.Scene.Favorite

    args.url = $scope.details.shareUrl || '';

    args.title = $scope.details.title || '';

    args.description = $scope.details.shareDesc || '';

    args.image = $scope.details.shareImg;

    QQSDK.shareNews(function() {

        alert(“success!”);  

      }, function(failReason) {

      alert(“failure!”+ failReason);      

      }, args);

    }, function() {

         alert('您没有安装qq!'); //就确认又没安装qq

    });

 

猜你喜欢

转载自blog.csdn.net/qq_35023116/article/details/79470871