bower install campaignSDK
- 在项目中引入此 campaignSDK.js:
<script src="/https/github.com/components/campaignSDK/campaignSDK.js">
<!-- 下面是你自己的 js -->
<script src="your-js-file.js">
- 调用 campaignSDK 中的各方法:
/*
* 示例:
*/
// P4 中弹出提示
if (campaignTools.UA.inWdj) {
campaignTools.toast('success!');
}
// 订阅某订阅源账号
campaignTools.subscribe('123456', function (resp) {
console.log('订阅成功');
});
// 微信 webview 中启动微信右上角的分享给好友和朋友圈功能
if (campaignTools.UA.inWechat) {
var shareTimelineObject = {
title: '这是分享到朋友圈的标题',
link: '这是分享到朋友圈的链接',
imgUrl: 'http://www.wandoujia.com/xxx.jpg', //配图
successCallback: function () {
alert('分享到微信朋友圈成功');
}
};
var shareFriendObject = {
title: '这是分享到好友标题',
link: '这是分享到好友的链接',
desc: '这是分享给好友的简介'
imgUrl: 'http://www.wandoujia.com/xxx.jpg', //配图
successCallback: function () {
alert('分享给微信好友成功');
}
};
campaignTools.wechatWebviewShareSetup(shareTimelineObject, shareFriendObject);
}
用来判断当前设备,返回的是一个对象:
{
inWdj: true || false, // 是不是在豌豆荚 webview 中
inWechat: true || false, // 是不是在微信 webview 中
inIos: true || false, // 是不是在 iOS 中
inAndroid: true || false, // 是不是在 Android 中
inWp: true || false, // 是不是在 windows phone 中
inSymbian: true || false, // 是不是在 symbian os 中
inMac: true || false, // 是不是在 mac os 中
inWindows: true || false, // 是不是在 win os 中
inIphone: true || false, // 是不是在 iPhone 中
inIpad: true || false, // 是不是在 iPad 中
inMobile: true || false, // 是不是在手机中
inPC: true || false, // 是不是在电脑中
isRetina: true || false // 是不是在高清屏中
}
调起安卓系统级别分享。
参数说明:
- title: 分享标题
- content: 分享的内容,仅限文字
调起应用级别分享。
参数说明:
- title: 分享标题
- content: 分享内容
- imgUrl: 享图片的地址(不建议过大)
- shareUrl: 分享 URL
- appType: 'SINA_WEIBO' || 'WECHAT' || 'WECHAT_TIMELINE'
在 Androdi 外部浏览器中打开链接。
参数说明:
- url: 要打开的网址
获取用户设备的 UDID,字符串。
获取已登录的豌豆荚用户 UID,字符串。
获取已登录的豌豆荚用户头像的 url 地址,字符串。
获取已登录的豌豆荚用户头像的 url 地址,字符串。
获取已登录的豌豆荚用户昵称的字符串。
获取已登录的豌豆荚用户 auth 的字符串。
判断 P4 中当前用户是否已登录
返回 boolean: true || false
版本 >= 4.18 可用
获取用户手机号码, 字符串。 +8618518281xxx
调起 P4 内的用户个人主页
参数说明:
- uid: 用户的 UID,字符串,如 '4383987'。
判断某应用是否已经安装
返回 boolean: true || false
参数说明:
- packageName: 应用包名,字符串。
判断某应用是否可升级
返回 boolean: true || false
参数说明:
- packageName: 应用包名,字符串。
获取应用状态
返回 int:
0 -- Waiting install 等待安装
1 -- Installed 已经安装
2 -- Not exist 不存在
3 -- Uninstalling 正在卸载
4 -- Patching ? 未知
参数说明:
- packageName: 应用包名,字符串。
获取某应用版本号
返回字符串类型的版本号,如 '100'
参数说明:
- packageName: 应用包名,字符串。
获取某应用的版本名称
返回字符串类型的版本名称,如 '5.2.8'
参数说明:
- packageName: 应用包名,字符串。
调起某个应用
参数说明:
- packageName: 应用包名,字符串。
打开豌豆荚里某个应用的详情页,如果该应用得过设计奖,则会打开设计奖页面。
参数说明:
- packageName: 应用包名,字符串。
跳过设计奖直接打开应用详情页
参数说明:
- packageName: 应用包名,字符串。
打开其他应用内某页面
参数说明:
- string: 应用内搜索协议地址,如 meituanmovie://www.meituan.com/movie?id=78379&nm=后会无期
打开豌豆荚的某个视频详情页
参数说明:
- id: 视频 id
打开豌豆荚的某个电子书详情页
参数说明:
- id: 电子书 id
使用豌豆荚搜索某个关键词
参数说明:
- str: 要搜索的内容
打开豌豆荚中某个订阅源账号的页面
参数说明:
- id: 订阅源账号 id
- type: 账号类型,一般为字符串 'ACCOUNT'
打开某个订阅源账号的 P4 profile 页面 (同 25)
参数说明:
- uid: 订阅源账号 id
打开某个订阅列表
登录豌豆荚账号: 调起 P4 登录界面
让用户选择以哪种方式登录豌豆荚账号
安装某个应用
参数说明:
- app: 一个包含了目标应用的包名、下载链接、应用名称、图标 URL、应用大小(如果不确定,可设置为空字符串)的对象。
- callback: 安装完毕后的回调函数。可选。
返回: 格式:json
成功:
{'error': 0, 'message': '安装成功'}
失败:
{'error': 1, 'message': '缺少必要参数'}
示例
var app = {
'packageName': 'com.sina.weibo',
'downloadUrl': 'http://apps.wandoujia.com/redirect?signature=ba846b8&url=https%3A%2F%2Fround-lake.dustinice.workers.dev%3A443%2Fhttp%2Fapk.wandoujia.com%2F5%2F2c%2F7a3fefa5bd378db1723e86cba104e2c5.apk&pn=com.sina.weibo&md5=7a3fefa5bd378db1723e86cba104e2c5&apkid=14404328&vc=2022&size=37266945&pos=t/detail&appType=APP',
'appName': '新浪微博',
'iconUrl': 'http://img.wdjimg.com/mms/icon/v1/4/4b/89c84a36d3cdbfef226b42b073d9f4b4_256_256.png',
'size': '37266945' // 或者为空字符串 ''
};
if (campaignTools.UA.inWdj) {
campaignTools.installApp(app, function (resp) {
if (resp) {
console.log(resp);
}
});
}