提交 4689f304 编写于 作者: DCloud-yyl's avatar DCloud-yyl

add docs/tutorial/app-share.md

add docs/tutorial/app-share-qq.md
add docs/tutorial/app-share-weibo.md
add docs/tutorial/app-share-weixin.md
上级 3ad133b1
### 开通
- 登录[腾讯开放平台](https://connect.qq.com/index.html),打开 “应用管理” -> “移动应用” 页面
- 在页面中选择 “创建应用” -> “创建移动应用”,根据提示填写信息创建应用
- 创建成功后,在应用详情中页面可以获取 APP ID
- 在应用详情页面的 “基本信息” -> “平台信息” 中,点击“修改”可以设置iOS平台的通用链接(UniversalLink)
更多信息详见QQ官方文档 [移动应用接入概述](https://wiki.connect.qq.com/%e7%a7%bb%e5%8a%a8%e5%ba%94%e7%94%a8%e6%8e%a5%e5%85%a5%e6%a6%82%e8%bf%b0)
### 配置
打开项目的manifest.json文件,在“App模块配置”项的“Share(分享)”下,勾选“QQ分享”:
![](https://native-res.dcloud.net.cn/images/uniapp/share/qq-manifest.png)
- appid
QQ开放平台申请应用的AppID值
- UniversalLinks
iOS平台通用链接,必须与QQ开放平台配置的一致,推荐使用[一键生成iOS通用链接](https://uniapp.dcloud.io/api/plugins/universal-links.html)
**注意**
- HBuilderX中标准真机运行基座使用的是DCloud申请HBuilder应用的AppID等信息,仅用于体验QQ分享功能
- 配置参数需提交云端打包后才能生效,真机运行时请使用[自定义调试基座](https://ask.dcloud.net.cn/article/35115)
### 使用QQ分享
- uni-app项目
调用 [uni.share(OBJECT)](api/plugins/share#share) 发起分享操作,OBJECT参数中provider属性值固定为`qq`
- 5+ App项目
调用 [plus.share.getServices(successCB,errorCB)](https://www.html5plus.org/doc/zh_cn/share.html#plus.share.getServices) 获取分享服务对象 [ShareService](https://www.html5plus.org/doc/zh_cn/share.html#plus.share.ShareService), 再调用其 [send](https://www.html5plus.org/doc/zh_cn/share.html#plus.share.ShareService.send) 方法发送分享消息
#### 示例代码
- uni-app项目
``` js
uni.share({
provider: 'qq',
summary: "我正在使用HBuilderX开发uni-app,赶紧跟我一起来体验!",
success: function (res) {
console.log("success:" + JSON.stringify(res));
},
fail: function (err) {
console.log("fail:" + JSON.stringify(err));
}
});
```
- 5+ App项目
``` js
var qqShare = null;
plus.share.getServices(function(services) {
for (var i in services) {
var service = services[i];
// 获取QQ分享对象
if (service.id == 'qq') {
qqShare = service;
break;
}
}
qqShare.send( {
content: '我正在使用HBuilderX开发App,赶紧跟我一起来体验!'
}, function(){
// 分享成功
}, function(err) {
// 分享操作失败
// err.code是错误码
})
}, function(err) {
// 获取 services 失败
})
```
### 开通
- 登录[新浪微博开放平台](http://open.weibo.com/),打开 “移动应用 MOBILE” 页面
- 在页面中选择 “立即接入”,根据提示填写信息创建应用
- 创建成功后,在 “我的应用” 中点击应用,可以在应用详情页面
- 在应用详情页面的 “应用信息” -> “基本信息” 中可获取 App Key,点击编辑可设置iOS平台的通用链接(UniversalLink)
更多信息详见新浪微博官方文档 [移动应用接入](https://open.weibo.com/wiki/Connect/login)
### 配置
打开项目的manifest.json文件,在“App模块配置”项的“Share(分享)”下,勾选“新浪微博分享”:
![](https://native-res.dcloud.net.cn/images/uniapp/share/sina-manifest.png)
- appkey
新浪微博开放平台申请应用的AppKey值
- redirect_url
新浪微博开放平台申请应用中设置的回调页
- UniversalLinks
iOS平台通用链接,必须与新浪微博开放平台配置的一致,推荐使用[一键生成iOS通用链接](https://uniapp.dcloud.io/api/plugins/universal-links.html)
**注意**
- HBuilderX中标准真机运行基座使用的是DCloud申请HBuilder应用的AppID等信息,仅用于体验新浪微博分享功能
- 配置参数需提交云端打包后才能生效,真机运行时请使用[自定义调试基座](https://ask.dcloud.net.cn/article/35115)
### 使用新浪微博分享
- uni-app项目
调用 [uni.share(OBJECT)](api/plugins/share#share) 发起分享操作,OBJECT参数中provider属性值固定为`sinaweibo`
- 5+ App项目
调用 [plus.share.getServices(successCB,errorCB)](https://www.html5plus.org/doc/zh_cn/share.html#plus.share.getServices) 获取分享服务对象 [ShareService](https://www.html5plus.org/doc/zh_cn/share.html#plus.share.ShareService), 再调用其 [send](https://www.html5plus.org/doc/zh_cn/share.html#plus.share.ShareService.send) 方法发送分享消息
#### 示例代码
- uni-app项目
``` js
uni.share({
provider: 'sinaweibo',
summary: "我正在使用HBuilderX开发uni-app,赶紧跟我一起来体验!",
success: function (res) {
console.log("success:" + JSON.stringify(res));
},
fail: function (err) {
console.log("fail:" + JSON.stringify(err));
}
});
```
- 5+ App项目
``` js
var weiboShare = null;
plus.share.getServices(function(services) {
for (var i in services) {
var service = services[i];
// 获取微博分享对象
if (service.id == 'sinaweibo') {
weiboShare = service;
break;
}
}
weiboShare.send( {
content: '我正在使用HBuilderX开发App,赶紧跟我一起来体验!'
}, function(){
// 分享成功
}, function(err) {
// 分享操作失败
// err.code是错误码
})
}, function(err) {
// 获取 services 失败
})
```
### 开通
- 登录[微信开放平台](https://open.weixin.qq.com/),添加移动应用并提交审核,审核通过后可获取应用ID(AppID)
- 在应用详情中确认已获取`分享到朋友圈``分享给朋友`等接口
- 在HBuilderX中配置appid、iOS通用链接后即可打包使用微信分享功能
更多信息详见微信官方文档 [分享与收藏功能](https://developers.weixin.qq.com/doc/oplatform/Mobile_App/Share_and_Favorites/Share_and_Favorites.html)
### 配置
打开项目的manifest.json文件,在“App模块配置”项的“Share(分享)”下,勾选“微信分享”:
![](https://native-res.dcloud.net.cn/images/uniapp/share/weixin-manifest.png)
- appid
微信开放平台申请应用的AppID值
- UniversalLinks
iOS平台通用链接,必须与微信开放平台配置的一致,推荐使用[一键生成iOS通用链接](https://uniapp.dcloud.io/api/plugins/universal-links.html)
**注意**
- HBuilderX中标准真机运行基座使用的是DCloud申请HBuilder应用的AppID等信息,仅用于体验微信分享功能
- 配置参数需提交云端打包后才能生效,真机运行时请使用[自定义调试基座](https://ask.dcloud.net.cn/article/35115)
### 使用微信分享
- uni-app项目
调用 [uni.share(OBJECT)](api/plugins/share#share) 发起分享操作,OBJECT参数中provider属性值固定为`weixin`
- 5+ App项目
调用 [plus.share.getServices(successCB,errorCB)](https://www.html5plus.org/doc/zh_cn/share.html#plus.share.getServices) 获取分享服务对象 [ShareService](https://www.html5plus.org/doc/zh_cn/share.html#plus.share.ShareService), 再调用其 [send](https://www.html5plus.org/doc/zh_cn/share.html#plus.share.ShareService.send) 方法发送分享消息
#### 示例代码
- uni-app项目
``` js
uni.share({
provider: "weixin",
scene: "WXSceneSession",
type: 1,
summary: "我正在使用HBuilderX开发uni-app,赶紧跟我一起来体验!",
success: function (res) {
console.log("success:" + JSON.stringify(res));
},
fail: function (err) {
console.log("fail:" + JSON.stringify(err));
}
});
```
- 5+ App项目
``` js
var weixinShare = null;
plus.share.getServices(function(services) {
for (var i in services) {
var service = services[i];
// 获取微信分享对象
if (service.id == 'weixin') {
weixinShare = service;
break;
}
}
weixinShare.send( {
content: '我正在使用HBuilderX开发App,赶紧跟我一起来体验!'
}, function(){
// 分享成功
}, function(err) {
// 分享操作失败
// err.code是错误码
})
}, function(err) {
// 获取 services 失败
})
```
App端Share(分享)模块封装了市场上主流的三方分享SDK,提供JS API统一调用分享功能。
|项目类型|API|
|:-|:-|
|uni-app|[uni.share(OBJECT)](api/plugins/share#share)[uni.shareWithSystem(OBJECT)](api/plugins/share#sharewithsystem)|
|5+App/Wap2App|[plus.share.*](https://www.html5plus.org/doc/zh_cn/share.html)
uni-app项目中,官方提供了封装好的[uni-share](https://ext.dcloud.net.cn/plugin?id=4860)插件方便开发者使用。
使用分享功能需在项目manifest.json的“App模块配置”中勾选“Share(分享)”,并根据项目实际情况勾选使用的三方分享平台:
![](https://native-res.dcloud.net.cn/images/uniapp/share/modules.png)
> 提示:三方分享模块参数配置需提交云端打包后才能生效,真机运行调试时请使用[自定义基座](http://ask.dcloud.net.cn/article/35115)
使用分享功能基本流程:
- 向三方分享平台申请开通,有些平台(如微信分享)申请成功后会获取appid
- 在HBuilderX中配置申请的参数(如appid等),提交云端打包生成[自定义基座](http://ask.dcloud.net.cn/article/35115)
- 在App项目中调用API进行分享操作
支持的三方分享平台:
- [微信分享](tutorial/app-share-weixin)
- [QQ分享](tutorial/app-share-qq)
- [新浪微博分享](tutorial/app-share-sina)
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册