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.实例图片
Ionic 分享功能(微博 微信 QQ)的更多相关文章
- Web 项目中分享到微博、QQ空间等分享功能
Web 项目中分享到微博.QQ空间等分享功能 网上有很多的模板以及代码,但是有很多都不能分享内容,简单的测试了下: 以新浪微博为例,文本框中的内容是title属性,下面的链接是url属性,如果你的链接 ...
- MUI 分享功能(微信、QQ 、朋友圈)
配置文件:manifest.json plus ->plugins 下边 "share": {/*配置应用使用分享功能,参考http://ask.dcloud.net.cn/ ...
- h5 网页版的微博微信QQ登录
一:微博 1,先说微博吧,首先你的去http://open.weibo.com/wiki/先注册账号,通过验证审核.然后的创建网页应用.微博审核不通过的原因就是域名和网站地址,一定要按实际写的.一定要 ...
- 网页分享到微博、QQ、QQ空间、微信
<ul id="content-share-list" class="bdsharebuttonbox bdshare-button-style0-16" ...
- 常用分享功能.超级简单,qq 微信 新浪微博分享
<div id="share"> <a href="javascript:void(0)" share-type="qzone&qu ...
- share.js一键分享到微博、QQ空间、QQ好友、微信、腾讯微博、豆瓣、Facebook、Twitter、Linkedin、Google+、点点等
官网上面 https://github.com/overtrue/share.js非常详细的介绍了share.js他的使用 使用方式有:第一:使用 npm npm install social-sha ...
- Android--打开指定程序(微博/微信/QQ等)
Intent intent = new Intent(); ComponentName cmp = new ComponentName("com.sina.weibo"," ...
- 利用UIActivityController调用ios系统自带的分享功能,实现微信发布多图的功能
通过一番查找以后找到一个类UIActivityController,可以调用系统的social.framework中的分享接口.看下面的图就知道了,这个还是挺常见的 微信发布多图 借鉴了CSDN上的一 ...
- cordova 插件 调用iOS社交化分享(ShareSDK:微信QQ分享)
1.github上已有的插件:https://github.com/nwpuhmz/ShareSDKPlugin 2.安装插件 cordova plugin add https://github.co ...
随机推荐
- selenium python bindings 写测试用例
这章总结selenium在UI测试方面的用法 import unittest from selenium import webdriver from selenium.webdriver.common ...
- python笔记三
# 数据读写不一定是文件,也可以在内存中读写 # StringIO就是在内存中读写str from io import StringIO f = StringIO() # 要把str写入StringI ...
- Linux 后台运行python .sh等程序,以及查看和关闭后台运行程序操作
1.运行.sh文件 直接用./sh 文件就可以运行,但是如果想后台运行,即使关闭当前的终端也可以运行的话,需要nohup命令和&命令. (1)&命令 功能:加在一个命令的最后,可以把这 ...
- scull 中的设备注册
在内部, scull 使用一个 struct scull_dev 类型的结构表示每个设备. 这个结构定义为: struct scull_dev { struct scull_qset *data; ...
- JS规则 我与你同在(逻辑与操作符)数学中的“b大于a,b小于c”是“a<b<c”,那么在JavaScript中可以用&&表示
我与你同在(逻辑与操作符) 数学里面的"a>b",在JavaScript中还表示为a>b:数学中的"b大于a,b小于c"是"a<b& ...
- Easy Excel导出
@GetMapping(value = "/down2") public void down2(HttpServletResponse response) throws Excep ...
- Johnson–Lindenstrauss 定理-Johnson–Lindenstrauss lemma
Johnson–Lindenstrauss 定理是这样的:一个一百万维空间里的随便一万个点,一定可以几乎被装进一个几十维的子空间里! 严格说来是这样:在 M 维空间中的 N 个点,几乎总是被包含在一个 ...
- LR回放webservice脚本报错------------mmdrv.exe应用程序错误(未解决)
1.录制完成webservice脚本如下: 2.回放脚本,报错: 3.网上查看了一些解决办法,但都是没有起到作用.
- 图论最短路径算法——Dijkstra
说实在的,这算法很简单,很简单,很简单--因为它是贪心的,而且码量也小,常数比起SPFA也小. 主要思想 先初始化,dis[起点]=0,其它皆为无限大. 还要有一个bz数组,bz[i]表示i是否确定为 ...
- l洛谷 NOIP提高组模拟赛 Day2
传送门 ## T1 区间修改+单点查询.差分树状数组. #include<iostream> #include<cstdio> #include<cstring> ...