Share

稿件来源: 互联网   撰稿作者: 匿名   发表日期: 2015-03-23   阅读次数: 17   查看权限: 游客查看

Share模块管理客户端的社交分享功能,提供调用终端社交软件的分享能力。通过plus.share可获取社交分享管理对象。

方法:

对象:

回调方法:

getServices

获取分享服务

void plus.share.getServices( successCB, errorCB );

说明:

在获取终端支持的分享通道列表,可用于提示用户进行分享服务器的选择。获取分享服务成功后通过successCB回调返回支持的所有服务列表,获取服务失败则通过errorCB回调返回。

参数:

  • successCB (ServicesSuccessCallback) 可选 获取分享服务列表成功时的回调函数,用于返回终端支持的分享服务列表。
  • errorCB (ShareErrorCallback) 可选 获取分享服务列表失败时的回调函数,用于返回错误信息。

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8"/>
	<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
	<title>Share Example</title>
	<script type="text/javascript">
var shares=null;
// 监听plusready事件
document.addEventListener( "plusready", function(){
	// 扩展API加载完毕,现在可以正常调用扩展API
	plus.share.getServices( function(s){
		shares = s;
	}, function(e){
		alert( "获取分享服务列表失败:"+e.message );
	} );
}, false );
	</script>
	</head>
	<body>
	</body>
</html>

ShareService

分享服务对象

interface plus.share.ShareService {
	// Attributes
	attribute DOMString id;
	attribute DOMString description;
	attribute Boolean authenticated;
	attribute DOMString accessToken;
	attribute Boolean nativeClient;
	
	// Methods
	function void authorize( successCallback, errorCallback );
	function void forbid();
	function void send( message );
}

说明:

ShareService对象用于表示分享服务,在JS中为对象,用于向系统请求分享操作。

方法:

属性:

  • id:ShareServerIdentity,只读属性,用于表示分享服务标识,如“sinaweibo”表示新浪微博、“tencentweibo”表示腾讯微博。
  • description:DOMString,只读属性,用于描述分享服务的信息,如“新浪微博”、“腾讯微博”。
  • authenticated:Boolean,只读属性,用于标识此分享是否已经授权认证过,true表示已完成授权认证;false表示未完成授权认证。
  • accessToken:DOMString,只读属性,仅在authenticated为true时有效,标识客户认证标识信息,用于发送分享信息。
  • nativeClient:Boolean,只读属性,对于某些分享服务,可直接调用本地客户端程序进行授权认证,此属性即可提供此相关信息,若没有安装本地客户端则可能调用其它方式进行分享操作,如WAP方式等。

authorize

授权认证操作

void obj.authorize( successCB, errorCB );

说明:

对指定的分享服务进行授权认证操作,在授权前可通过ShareService.authenticated属性判断是否已经授权过,通常只需要对没有进行过授权认证的服务进行授权认证操作。授权认证操作成功后通过successCB回调函数通知操作完成,操作失败则通过errorCB回调返回。

参数:

  • successCB (AuthorizeSuccessCallback) 可选 分享服务授权认证操作成功时的回调函数,用于返回分享授权操作成功信息。
  • errorCB (ShareErrorCallback) 可选 分享服务授权认证操作失败时的回调函数,用于返回错误信息。

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8"/>
	<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
	<title>Share Example</title>
	<script type="text/javascript">
var shares=null;
// 监听plusready事件
document.addEventListener( "plusready", function(){
	// 扩展API加载完毕,现在可以正常调用扩展API
	plus.share.getServices( function(s){
		shares = s;
	}, function(e){
		alert( "获取分享服务列表失败:"+e.message );
	} );
}, false );
function shareAction(){
	var s = shares[0];
	if ( !s.authenticated ) {
		s.authorize( functioin(){
			alert( "认证完成!" );
		}, function(e){
			outLine( "未进行认证" );
		} )
	}
}
	</script>
	</head>
	<body>
	</body>
</html>

forbid

取消授权认证

void obj.forbid();

说明:

对指定的分享服务取消授权认证操作,取消授权认证后,再次分享时需重新进行授权操作。

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8"/>
	<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
	<title>Share Example</title>
	<script type="text/javascript">
var shares=null;
// 监听plusready事件
document.addEventListener( "plusready", function(){
	// 扩展API加载完毕,现在可以正常调用扩展API
	plus.share.getServices( function(s){
		shares = s;
	}, function(e){
		alert( "获取分享服务列表失败:"+e.message );
	} );
}, false );
// 取消所有分享服务的
function cancelAuthorize(){
	for ( var i in shares ) {
		var s = shares[i];
		if ( s.authenticated ) {
			s.forbid();
		}
	}
}
	</script>
	</head>
	<body>
	</body>
</html>

send

发送分享

void obj.send( msg, successCB, errorCB );

说明:

  发送分享消息,分享消息的内容通过msg设置。发送成功后通过successCB回调函数通知操作完成,发送失败则通过errorCB回调返回。若分享服务没有进行授权认证或授权认证失效则触发失败回调函数。

参数:

  • msg (ShareMessage) 可选 用于设置要分享的消息内容,如文字内容,图片等信息。
  • successCB (ShareSuccessCallback) 可选 发送分享消息操作成功时的回调函数,用于返回发送分享消息操作成功信息。
  • errorCB (ShareErrorCallback) 可选 发送分享消息操作失败时的回调函数,用于返回错误信息。

返回值:

示例:

<!DOCTYPE html>
<html>
	<head>
	<meta charset="utf-8"/>
	<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=no"/>
	<title>Share Example</title>
	<script type="text/javascript">
var shares=null;
// 监听plusready事件
document.addEventListener( "plusready", function(){
	// 扩展API加载完毕,现在可以正常调用扩展API
	plus.share.getServices( function(s){
		shares = s;
	}, function(e){
		alert( "获取分享服务列表失败:"+e.message );
	} );
}, false );
/**
 * 分享操作
 * _param {plus.share.ShareService} s
 */
function shareAction(s) {
	if ( !s ) {
		return;
	}
	if ( s.authenticated ) {
		shareMessage( s );
	} else {
		s.authorize( shareMessage, function(e){
			alert( "未进行认证" );
		} )
	}
}
/**
 * 发送分享消息
 * _param {plus.share.ShareService} s
 */
function shareMessage(s){
	s.send( {content:"Hello"}, function(){
		alert( "分享成功!" );
	}, function(e){
		alert( "分享失败:"+e.message );
	} );
}
	</script>
	</head>
	<body>
	</body>
</html>

ShareServerIdentity

分享服务标识

常量:

平台支持:

平台支持:

平台支持:

"sinaweibo"

新浪微博

说明:

新浪微博

"tencentweibo"

腾讯微博

说明:

腾讯微博

"weixin"

微信

说明:

微信

ShareMessage

JSON对象,分享消息对象

interface plus.share.ShareMessage {
	attribute String content;
	attribute String[] pictures;
	attribute String href;
	attribute String title;
	attribute JSON extra;
	attribute GEOPosition geo;
}

说明:

ShareMessage对象用于表示分享消息内容,在JS中为JSON对象,用于向系统发送分享信息操作。

属性:

  • content:String,分享消息的文字内容
  • pictures:String[],分享消息中包含的图片路径,仅支持本地路径。 若分享平台仅支持提交一张图片,传入多张图片则仅提交第一张图片。 如果不能同时支持其它内容信息,优先级顺序为:pictures>content。
  • thumbs:String[],分享消息中包含的缩略图路径,仅支持本地路径。 若分享平台仅支持提交一张图片,传入多张图片则仅提交第一张图片。 如果分享平台的信息不支持缩略图,则忽略其属性值。
  • href:String,分享独立链接地址,仅支持网络地址(以http://或https://开头)。 如果不能同时支持其它内容信息,优先级顺序为:href>pictures>content。
  • title:String,目前仅Android平台的微信分享独立链接消息时支持。
  • geo:GeoPosition,分享消息中包含的用户地理信息数据
  • extra:ShareMessageExtra,分享消息扩展参数

GeoPosition

JSON对象,用户位置信息

interface plus.share.GeoPosition {
	attribute Number latitude;
	attribute Number longitude;
}

说明:

GeoPosition对象用于表示用户分享消息时的位置信息。用于标识分享操作时用户的位置信息。

属性:

  • latitude:Number,用户位置的纬度坐标信息
  • longitude:Number,用户位置的经度坐标信息

ShareMessageExtra

JSON对象,保存分享消息扩展信息

interface plus.share.ShareMessageExtra {
	attribute String scene;
}

说明:

ShareMessageExtra对象用于保存各分享平台扩展的参数,用于自定义分享功能。

属性:

  • scene:String,可取值: "WXSceneSession"分享到微信的“我的好友”; "WXSceneTimeline"分享到微信的“朋友圈”中; "WXSceneFavorite"分享到微信的“我的收藏”中。 默认值为"WXSceneSession"。

Authorize

分享授权控件对象

interface plus.share.Authorize {
	// Methods
	function void load( id );
	function void setVisible( visible );
	// Events
	function void onloaded();
	function void onauthenticated();
	function void onerror();
}

说明:

Authorize对象表示分享控件对象,用于在窗口中显示分享控件,使用此对象可自定义分享授权界面。

方法:

  • load加载分享授权页面
  • setVisible设置分享授权控件是否可见

事件:

Authorize(id,display)

创建分享授权控件对象

var obj = new plus.share.Authorize( id, display );

说明:

根据指定的id的元素创建分享控件

参数:

  • id (DOMString) 可选 分享控件在窗口的对应obj节点的id值,此id值用于定位控件位置
  • visible (Boolean) 可选

返回值:

分享控件对象

load

加载分享授权页面

void obj.load( id );

说明:

创建分享授权页面后,需要调用此方法指定分享服务标识来加载授权页面数据,此标识可使用ShareService对象的id属性。

参数:

  • id (DOMString) 可选 要加载的分享服务标识

返回值:

setVisible

设置分享授权控件是否可见

void obj.setVisible( visible );

说明:

创建分享授权页面后,调用此方法设置分享授权控件在页面中是否可见。

参数:

  • visible (Boolean) 可选 要设置分享控件是否可见,true标识可见,false表示不可见。

返回值:

onloaded

分享控件加载完成事件

void obj.onloaded = function () {
	// loaded code 
}

说明:

分享授权控件内容加载完成事件,通过调用load方法加载分享授权控件内容,当内容加载完成时触发。

onauthenticated

分享授权认证成功事件

void obj.onauthenticated= function ( service) {
	// Authenticate success code 
}

说明:

用户在分享授权控件上输入操作授权成功时触发,事件方法格式参考ShareSuccessCallback回调函数。

onerror

分享授权认证失败事件

void obj.onerror= function ( error ) {
	// Error code 
}

说明:

用户在分享授权控件上输入操作授权认证错误时触发,事件方法格式参考ShareErrorCallback回调函数。

ServicesSuccessCallback

获取分享服务成功回调

void ServicesSuccessCallback( services ) {
	// Get share services success code
}

说明:

当获取分享服务列表成功时的回调函数,用于返回终端支持的分享服务列表。

参数:

  • services (ShareService) 可选 运行环境支持的分享服务列表数组,可通过services.length获取分享服务列表的数目。

AuthorizeSuccessCallback

分享消息成功回调

void AuthorizeSuccessCallback( service ) {
	  // Authorize success code
}

说明:

分享操作成功回调函数,当分享操作成功时调用。

参数:

  • service (ShareService) 可选 认证操作成功的分享服务对象

ShareSuccessCallback

分享操作成功回调

void ShareSuccessCallback () {
	// Share success code
}

说明:

分享操作成功回调函数,当分享操作成功时调用。

ShareErrorCallback

分享操作失败回调

void ShareErrorCallback ( error ) {
	// Recognition error code
}

说明:

  当分享操作失败时的回调函数,用于返回分享相关操作失败的错误信息。

参数:

  • error (DOMException) 可选 分享操作失败错误信息,通过error.code获取错误代码

关键词: html5puls,Share   编辑时间: 2015-03-23 23:22:16

  • 感到高兴

    0

    高兴
  • 感到支持

    0

    支持
  • 感到搞笑

    0

    搞笑
  • 感到不解

    0

    不解
  • 感到谎言

    0

    谎言
  • 感到枪稿

    0

    枪稿
  • 感到震惊

    0

    震惊
  • 感到无奈

    0

    无奈
  • 感到无聊

    0

    无聊
  • 感到反对

    0

    反对
  • 感到愤怒

    0

    愤怒
0%(0)
0%(0)
上一篇:Runtime
下一篇:Speech
共有0 条评论 发言请遵守【相关规定

网友评论

会员头像
发 表同步腾讯微博    验证码:  点击更新请先登陆
  • 暂无评论
关闭模块文章图片 article Pictrue
  • 我的妈妈爸爸
  • 基于koa2+mysql+vue2.0+Element阳光内容管理系统
  • 代码覆盖率工具 Istanbul 入门教程
  • 全栈工程师的武器——MEAN
  • 9款超炫的 CSS3 复选框(Checkbox)
  • 微信开发在线翻译功能
  • CSS3那些不为人知的高级属性
  • 给easyui的datebox添加清空事件
  • flash写字效果
  • kendoUI系列教程之DropDownList下拉菜单
  • kendoUI系列教程之datetimepicker日期时间选择
  • kendoUI系列教程之datepicker日期选择
  • kendoUI系列教程之combobox下拉列表框
  • kendoUI系列教程之colorpicker
  • kendoUI系列教程之calendar日历表
  • kendoUI系列教程之autocomplete自动补齐