您的位置:首页 > 移动开发 > 微信开发

Ionic 分享功能(微博 微信 QQ)

2017-10-11 17:50 531 查看
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.实例图片



内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: