Ionic 分享功能(微博 微信 QQ)
1.安装插件
cordova plugin add cordova-plugin-wechat --variable wechatappid=你申请微信appid
cordova plugin add cordova-plugin-qqsdk --variable QQ_APP_ID=你申请QQ的appid
cordova plugin add cordova-plugin-weibosdk --variable WEIBO_APP_ID=你申请微博的appid
2 js代码
$scope.goshare=function() { $scope.myPopup = $ionicPopup.show({ //这里简单列一下 //template: '', templateUrl:'templates/home/share.html', title: '分享文章', scope: $scope, buttons: [ { text: '取消' }] }); $scope.myPopup.then(function(res) { }); } $scope.offshare= function (tp) { var params = { scene: 1 }; params.message = { title: "[TEST] send-photo-local" , description: "[TEST]Sending from test application", mediaTagName: "TEST-TAG-001", messageExt: "send-photo-local", messageAction: "<action>dotalist</action>", media: {} }; params.message.title = $scope.details.title; params.message.description = $scope.details.title; params.message.thumb = "www/img/logo.png"; params.message.media.type = Wechat.Type.LINK; params.message.media.webpageUrl = $scope.details.ShareUrl; switch(tp){ case 0://微博 WeiboSDK.checkClientInstalled(function () { var args = {}; args.url = $scope.details.ShareUrl; args.title = $scope.details.title; args.description = $scope.details.title; args.image = 'http://dzlyinhe.com/images/logo_1.png'; WeiboSDK.shareToWeibo(function () { //alert('share success'); $scope.myPopup.close(); }, function (failReason) { /* $ionicLoading.show({ noBackdrop: false, template: failReason, duration: 1500 });*/ }, args); }, function () { $ionicLoading.show({ noBackdrop: false, template: "请安装微博客户端", duration: 1500 }); }); break; case 1://会话 params.scene=0; Wechat.isInstalled(function (installed) { if(installed){ Wechat.share(params , function () { //alert("Success"); $scope.myPopup.close(); }, function (reason) { //alert("Failed: " + reason); /* $ionicLoading.show({ noBackdrop: false, template: reason, duration: 1500 });*/ }); }else{ $ionicLoading.show({ noBackdrop: false, template: "请安装微信客户端", duration: 1500 }); } }, function (reason) { // alert("Failed: " + reason); }); break; case 2: params.scene=1; Wechat.isInstalled(function (installed) { if(installed){ Wechat.share(params , function () { //alert("Success"); $scope.myPopup.close(); }, function (reason) { //alert("Failed: " + reason); /* $ionicLoading.show({ noBackdrop: false, template: reason, duration: 1500 });*/ }); }else{ $ionicLoading.show({ noBackdrop: false, template: "请安装微信客户端", duration: 1500 }); } }, function (reason) { // alert("Failed: " + reason); }); break; case 3: params.scene=2; Wechat.isInstalled(function (installed) { if(installed){ Wechat.share(params , function () { //alert("Success"); $scope.myPopup.close(); }, function (reason) { //alert("Failed: " + reason); /* $ionicLoading.show({ noBackdrop: false, template: reason, duration: 1500 });*/ }); }else{ $ionicLoading.show({ noBackdrop: false, template: "请安装微信客户端", duration: 1500 }); } }, function (reason) { // alert("Failed: " + reason); }); break; case 4://qq好友 var args = {}; args.client = QQSDK.ClientType.QQ;//QQSDK.ClientType.QQ,QQSDK.ClientType.TIM; QQSDK.checkClientInstalled(function () { args.scene = QQSDK.Scene.QQ;//QQSDK.Scene.QQZone,QQSDK.Scene.Favorite args.url = $scope.details.ShareUrl; args.title = $scope.details.title; args.description = $scope.details.title; args.image = 'http://dzlyinhe.com/images/logo_1.png'; QQSDK.shareNews(function () { $scope.myPopup.close(); }, function (failReason) { }, args); }, function () { $ionicLoading.show({ noBackdrop: false, template: "请安装QQ客户端", duration: 1500 }); }, args); break; case 5: var args = {}; args.client = QQSDK.ClientType.QQ;//QQSDK.ClientType.QQ,QQSDK.ClientType.TIM; args.scene =QQSDK.Scene.QQZone ;//QQSDK.Scene.QQ QQSDK.Scene.QQZone,QQSDK.Scene.Favorite args.url = $scope.details.ShareUrl; args.title = $scope.details.title; args.description = $scope.details.title; args.image = 'http://dzlyinhe.com/images/logo_1.png'; QQSDK.checkClientInstalled(function () { QQSDK.shareNews(function () { $scope.myPopup.close(); }, function (failReason) { }, args); }, function () { $ionicLoading.show({ noBackdrop: false, template: "请安装QQ客户端", duration: 1500 }); }, args); break; } }
3.templates/home/share.html
<div class="row" style="font-size: 12px;"> <div class="col" ng-click="offshare(0)"><img src="img/weibo.png" class="shareimg" /><br/>新浪微博</div> <div class="col" ng-click="offshare(1)"><img src="img/wechat.png" class="shareimg" /><br/>微信好友</div> <div class="col" ng-click="offshare(2)"><img src="img/wechat_moment.png" class="shareimg"/><br/>微信朋友圈</div> </div> <div class="row" style="font-size: 12px;"> <div class="col" ng-click="offshare(3)"><img src="img/wechat_fav.png" class="shareimg" /><br/>微信收藏</div> <div class="col" ng-click="offshare(4)"><img src="img/qq.png" class="shareimg" /><br/>QQ好友</div> <div class="col" ng-click="offshare(5)"><img src="img/qzone.png" class="shareimg"/><br/>QQ空间</div> </div>
4.实例图片