OPPO开放平台API传包能力接入 更新资料

更新说明

更新时间更新说明
2022-06-08请求参数新增customer_contact;请求参数删除player_customer_email、player_customer_phone、player_customer_qq、ascription_type、proxy_contract_url、authorize_type、authorize_url、authorize_desc、approval_doc_number、approval_doc_type、approval_doc_start_time、approval_doc_end_time、approval_doc_url、culture_record_number、culture_record_url、operation_license_url、absolve_declare_url;请求参数summary不能多于13个字

接口功能

此接口用于更新资源相关信息,不会新增版本。

接口处理可能会比较耗时,建议客户端执行等待时间设置为10秒以上。

接口原型

-请求路由:/resource/v1/app/updm
-请求方法:POST
-请求类型:Content-Type: x-www-form-urlencoded

请求参数

参数名称参数类型是否必传适用资源类型(无说明则都适用)备注
pkg_namestring必传应用包名
version_codestring必传版本号
app_subnamestring非必须合作游戏副标题,1-10 个字符,不得包含空格等特殊字符
summarystring必传一句话简介,不多于 15 个字符,不能包含任何标点符号和空格
detail_descstring必传软件介绍,不少于 20 个字
update_descstring必传版本说明,不少于 5 个字
privacy_source_urlstring必传隐私政策网址
icon_urlstring必传图标 url,尺寸:512*512px,图片格式:png,小于 1M
pic_urlstring必传竖版截图 url,多个用英文逗号分隔,不能少于两张,上传 3-5 张截图,支持 jpg、png 格式。 截图尺寸要求:1080*1920,单张图片不能超过 1M
landscape_pic_urlstring非必传横版截图 url,多个用英文逗号分隔,上传 3-5 张截图,支持 jpg、png 格式。 截图尺寸要求:1915*1080,单张图片不能超过 1M
video_urlstring非必传游戏宣传视频地址,小于 30MB,支持格式:MP4
video_url_materialVideoInfo[]非必传视频扩展信息,请求时需转换成json格式,格式参考VideoInfo
test_descstring必传测试附加说明,最多输入 400 个字符
electronic_cert_urlstring非必传电子版权证书,上传 PDF 格式文件,不能超过 20MB
copyright_urlstring必传应用、合作应用软件版权证明
icp_urlstring非必传应用、合作应用ICP 备案网址或备案号
special_urlstring非必传应用、合作应用特殊类证书,支持 jpg、png 格式的图片,每张图片大小不超过 1M
special_file_urlstring非必传应用、合作应用特殊类证书压缩包,支持 rar、zip 格式的文件,大小不能超过 30M
video_pic_urlstring非必传合作游戏游戏宣传视频横屏封面图,尺寸:1080*594px,图片格式:jpg/png,小于 1M
cover_urlCoverURLInfo必传合作游戏游戏空间封面图,请求时需转换成json格式,结构参考 CoverURLInfo
record_identification_codestring非必传合作游戏备案识别码,有版号时必填,10 位数字
record_identification_imagestring非必传合作游戏渠道绑定截图,有版号时必填,jpg/png 格式的图片,大小不超过 1M
other_cetificate_urlstring非必传合作游戏其他补充资质,支持 zip 格式,大小不超过 30M
business_usernamestring必传商务联系人姓名
business_emailemail必传商务联系人邮箱
business_mobilestring必传商务联系人电话
business_qqstring非必传合作游戏商务联系人 QQ
business_positionstring非必传合作游戏商务联系人职务
business_addressstring非必传合作游戏商务联系人办公地址
customer_contactstring,json字符串必传合作游戏客服联系方式,示例:[{“contact_method”:“7”,“contact_info”:“点击客服头像Kate”,“working_hours”:“00:01-00:07”,“weekend_hours”:“00:23-01:14”}],

contact_method:联系方式,1-客服电话,2-客服邮箱,3-客服QQ号,4-客服QQ公众号,5-客服微信号,6-客服微信公众号,7-游戏内联系客服路径

contact_info:客服联系信息
working_hours:工作服务时间
weekend_hours:周末&节假日服务时间

VideoInfo

-可从文件上传接口获取

字段类型说明
urlstring视频地址
md5string视频MD5值
sizeint视频文件大小
widthint视频尺寸:宽
heightint视频尺寸:高
fpsint视频帧率
durationint视频时长
definitionint视频码率

CoverURLInfo

字段类型说明
hmap横版封面,包含一个图片 url 字段,尺寸:939*507px,图片格式:jpg/png,小于 1M
vmap竖版封面,包含一个图片 url 字段,尺寸:756*1080px,图片格式:jpg/png,小于 1M

结构示例:

{
    "v":{
        "url":"http://******4494fa0b.jpg"
    },
    "h":{
        "url":"http://******80b90afc.jpg"
    }
}

请求响应

响应说明

字段类型说明
errnoint错误码,为 0 表示请求正常
dataUpdBody响应体,结构参考 UpdBody

UpdBody

字段类型说明
successboolen请求成功时返回,必为 true
messagestring响应信息,请求失败时会返回错误信息说明
logidint请求ID

响应示例

成功示例

{
    "errno":0,
    "data":{
        "success":true,
        "message":""
    }
}

失败示例

{
    "errno":800002,
    "data":{
        "message":"包名不能为空",
        "logid":3906849174
    }
}

OPPO开放平台API传包能力接入 发布版本

更新说明

更新时间更新说明
2022-06-08请求参数新增age_level、adaptive_equipment、adaptive_type、customer_contact;
请求参数删除player_customer_email、player_customer_phone、player_customer_qq;
请求参数summary不能多于13个字符

接口功能

此接口用于补充完善资源相关信息,会新增版本,为异步处理任务,可调用 获取任务状态 接口查询任务处理结果。

接口处理可能会比较耗时,建议客户端执行等待时间设置为10秒以上。

接口原型

-请求路由:/resource/v1/app/upd
-请求方法:POST
-请求类型:Content-Type: x-www-form-urlencoded

请求参数

参数名称参数类型是否必传适用资源类型(无说明则都适用)说明
pkg_namestring必传应用包名
version_codestring必传版本号
apk_urlApkInfo[]必传apk 包信息,请求时需转换成json格式,CPU 多包传多个,结构参考 ApkInfo
app_namestring必传应用名称
app_subnamestring非必传合作游戏副标题,1-10 个字符,不得包含空格等特殊字符
second_category_idint必传二级分类 ID,详情参照对照表
third_category_idint必传三级分类 ID,详情参照对照表
summarystring必传一句话简介,不多于 13 个字符,不能包含任何标点符号和空格
detail_descstring必传软件介绍,不少于 20 个字
update_descstring必传版本说明,不少于 5 个字
privacy_source_urlstring必传隐私政策网址
icon_urlstring必传图标 url,尺寸:512*512px,图片格式:png,小于 1M
pic_urlstring必传竖版截图 url,多个用英文逗号分隔,不能少于两张,上传 3-5 张截图,支持 jpg、png 格式。截图尺寸要求:1080*1920,单张图片不能超过 1M
landscape_pic_urlstring非必传横版截图 url,多个用英文逗号分隔,上传 3-5 张截图,支持 jpg、png 格式。截图尺寸要求:1915*1080,单张图片不能超过 1M
video_urlstring非必传游戏宣传视频地址,小于 30MB,支持格式:MP4
video_url_materialVideoInfo[]非必传视频扩展信息,请求时需转换成json格式,格式参考VideoInfo
online_typeint必传发布类型,1-审核立即发布;2-定时发布
sche_online_timedatetime非必传定时发布时间,online_type=2 时必填,不能早于当前时间
test_descstring必传测试附加说明,最多输入 400 个字符
electronic_cert_urlstring非必传电子版权证书,上传 PDF 格式文件,不能超过 20MB
copyright_urlstring必传应用、合作应用软件版权证明
icp_urlstring非必传应用、合作应用ICP 备案网址或备案号
special_urlstring非必传应用、合作应用特殊类证书,支持 jpg、png 格式的图片,每张图片大小不超过 1M
special_file_urlstring非必传应用、合作应用特殊类证书压缩包,支持 rar、zip 格式的文件,大小不能超过 30M
game_typeint必传合作游戏游戏类型,1-单机;2-网游;3-棋牌;5-超休闲
video_pic_urlstring非必传合作游戏游戏宣传视频横屏封面图,尺寸:1080*594px,图片格式:jpg/png,小于 1M
cover_urlCoverURLInfo必传合作游戏游戏空间封面图,请求时需转换成json格式,结构参考 CoverURLInfo
ascription_typeint必传合作游戏游戏归属权,1-自研;2-代理
proxy_contract_urlstring必传合作游戏授权合同或协议/代理授权合同或协议 ascription_type=2 时必填,jpg/png 格式的图片,不超过 1M
authorize_typeint必传合作游戏软件著作权登记类型,1-著作权证书
authorize_urlstring必传合作游戏软件著作权登记证,jpg/png 格式的图片,不超过 1M
authorize_descstring必传合作游戏软件著作权登记号
approval_doc_numberstring必传合作游戏游戏版号编号
approval_doc_typeint必传合作游戏版号有效期类型,1-永久有效;2-固定游戏期
approval_doc_start_timedatetime必传合作游戏版号有效期开始时间,approval_doc_type=2 时必填
approval_doc_end_timedatetime必传合作游戏版号有效期结束时间,approval_doc_type=2 时必填
approval_doc_urlstring必传合作游戏游戏版号证书,jpg/png 格式的图片,不超过 1M
record_identification_codestring非必传合作游戏备案识别码,有版号时必填,10 位数字
record_identification_imagestring非必传合作游戏渠道绑定截图,有版号时必填,jpg/png 格式的图片,大小不超过 1M
culture_record_numberstring非必传合作游戏文化部备案文件编号
culture_record_urlstring非必传合作游戏文化部备案文件,jpg/png 格式的图片,不超过 1M
operation_license_urlstring非必传合作游戏网络文化经营许可证,jpg/png 格式的图片,不超过 1M
absolve_declare_urlstring非必传合作游戏免责声明,jpg/png 格式的图片,不超过 1M
other_cetificate_urlstring非必传合作游戏其他补充资质,支持 zip 格式,大小不超过 30M
business_usernamestring必传商务联系人姓名
business_emailemail必传商务联系人邮箱
business_mobilestring必传商务联系人电话
business_qqstring非必传合作游戏商务联系人 QQ
business_positionstring非必传合作游戏商务联系人职务
business_addressstring非必传合作游戏商务联系人办公地址
age_levelint必传普通应用、合作应用、合作游戏APP年龄分级,示例:3
adaptive_equipmentint必传普通应用、合作应用、合作游戏平板适配,4-手机,5-平板,6-手机和平板
adaptive_typeint非必传普通应用、合作应用、合作游戏适配方式,1-平行视窗,2-横竖屏自适应适配
customer_contactstring,json字符串必传合作游戏客服联系方式,示例:
[{“contact_method”:“7”,“contact_info”:“点击客服头像Kate”,“working_hours”:“00:01-00:07”,“weekend_hours”:“00:23-01:14”}],
contact_method:

联系方式,1-客服电话,2-客服邮箱,3-客服QQ号,4-客服QQ公众号,5-客服微信号,6-客服微信公众号,7-游戏内联系客服路径

contact_info:客服联系信息
working_hours:工作服务时间
weekend_hours:周末&节假日服务时间

ApkInfo

字段类型说明
urlstringapk 包地址
md5stringapk 包 md5 值
cpu_codeint多包平台,64 位 CPU 包为 64,32 位 CPU 包为 32,非多包应用为 0

VideoInfo

-可从文件上传接口获取

字段类型说明
urlstring视频地址
md5string视频MD5值
sizeint视频文件大小
widthint视频尺寸:宽
heightint视频尺寸:高
fpsint视频帧率
durationint视频时长
definitionint视频码率

CoverURLInfo

字段类型说明
hmap横版封面,包含一个图片 url 字段,尺寸:939*507px,图片格式:JPG/PNG,小于 1M
vmap竖版封面,包含一个图片 url 字段,尺寸:756*1080px,图片格式:JPG/PNG,小于 1M

结构示例:

{
    "v":{
        "url":"http://******4494fa0b.jpg"
    },
    "h":{
        "url":"http://******80b90afc.jpg"
    }
}

请求响应

响应说明

字段类型说明
errnoint错误码,为 0 表示请求正常
dataUpdBody响应体,结构参考 UpdBody

UpdBody

字段类型说明
successboolen请求成功时返回,必为 true
messagestring响应信息,请求失败时会返回错误信息说明
logidint请求ID

响应示例

成功示例

{
    "errno":0,
    "data":{
        "success":true,
        "message":""
    }
}

失败示例

{
    "errno":800002,
    "data":{
        "message":"包名不能为空",
        "logid":3906849174
    }
}

OPPO开放平台API传包能力接入

OPPO开放平台API传包能力接入

能力介绍

通过接入API传包能力,您可以在内部系统实现一键发布应用、更新版本、更新资料、查询应用最新详情等,无需每次前往OPPO开放平台管理中心页面进行操作,能够节省人力,提高上架效率。
接入前建议您详细阅读帮助文档,按照流程和说明接入,如有疑问可以咨询在线客服。

注意:目前API传包能力面向普通应用、合作应用、合作游戏的开发者开放。

接入流程

API 调用方法详解

API调用是基于HTTP协议的。

调用流程:请求获取Access Token接口 -> 存储token(48小时有效) -> 拼接参数进行签名 -> 发起HTTP请求 -> 得到HTTP响应

调用注意事项:

所有的请求及响应数据编码均为utf-8格式;URL里的所有参数名和参数值都需进行URL编码。如果请求的Content-Type为application/x-www-form-urlencoded,则HTTP请求体里的所有参数值也做URL编码;如果是multipart/form-data格式,每个表单字段的参数值无需编码,但每个表单字段的charset部分需要指定为utf-8。

无特殊说明时,一般请求的 Content-type 为 application/x-www-form-urlencoded

接口域名

正式环境:https://oop-openapi-cn.heytapmobi.com

获取Access Token

首先需要登录OPPO开放平台,获取客户端ID和密钥(若为团队帐号,需使用管理员帐号登录)。

具体路径:OPPO开放平台→管理中心→应用服务平台→API密钥管理→创建客户端→获取客户端ID、密钥。

调用业务接口前需先获取授权token (access token),用于后续参数签名,开发者需要进行妥善保存。

Access token的有效期为48小时,超过有效期后需重新获取;在token过期前可重新调用接口获取新的access token(48小时有效),旧的access token将在5分钟内过期。

接口请求

-请求路由:/developer/v1/token
-请求方法:GET
-请求参数:

获取access token接口参数为:

参数名称参数类型是否必须参数描述
client_idstringOPPO开放平台申请分配的client_id,18位字符串
client_secretstringOPPO开放平台申请分配的client_secret,与client_id配对,64位字符串

通过发起HTTP Get请求,在URL中携带client_id与client_secret参数,可获取一次性access token。

  • 接口响应:
{
    "errno": 0,
    "data": {
        "access_token": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJleHAiOjE2MTU1MzE2NDYsInN1YiI6Ik9QUE8tT09QLU9QRU5BUEkiLCJuYmYiOjE2MTUzNTg4NDYsImF1ZCI6Im9wcG8tb29wIiwiaWF0IjoxNjE1MzU4ODQ2LCJqdGkiOiJ4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4eHh4Iiwic3RhdHVzIjoxLCJkYXRhIjp7ImNsaWVudF9pZCI6IjEqKioqKioqKioqKioqKioqKjAifX0.fNsW1gp7EIDRGw4-aHKCMJGIsRLO_FuR1BOcGAUwq7c",
        "expire_in": 1615531646
    }
}
  • 响应说明:
参数名称参数类型参数描述
access_tokenstring返回的续期access token,48小时有效
expire_inintUnix时间戳,token将于此时过期

公共参数

除获取授权token外,调用任何一个API都必须传入的参数:

参数名称参数类型是否必须参数描述
access_tokenstring鉴权接口返回的限期access_token
timestampstring时间戳(秒级)示例:1609401600,允许客户端请求最大时间误差为15分钟
api_signstringAPI输入参数签名结果,签名算法参照下面的介绍

签名方法

API签名计算规则为涉及的所有请求参数(包含get参数和POST参数,例如请求参数k1=v1,参数k2=v2)

step 1:请求参数(除api_sign外的公共参数+业务参数)按照ASCII升序排序

step 2:请求参数使用&拼接字符串,值为null的参数不参与签名,拼接成k1=v1&k2=v2

step 3:对step3得到的字符串进行HmacSHA256计算,计算时使用的密钥key为获取access token时与client_id配对的client_secret

step 4:将hash计算结果转换为小写16进制,得到签名sign。

签名代码示例:点击下载签名demo

OPPO Sign获取指引

什么是 OPPO Sign

OPPO Sign是应用的签名摘要信息通过OPPO的加密算法生成的MD5字符串,主要用于接入OPPO帐号、游戏SDK时候做应用身份校验。

什么场景需要 OPPO Sign

同时符合如下两个条件的应用需要填写OPPO Sign
1、需要接入帐号SDK或者游戏SDK。
2、未发布的应用(上传应用APK后我们会自动根据前面信息计算出对应的OPPO Sign信息,因此只需要未发布的应用填写OPPO Sign)。

如何获取OPPO Sign

您可以选择在PC端(Windows)或者手机端(Android)去获取安装包的签名摘要信息。

Windows 获取指引

1)下载OPPOSign.zip

2)解压文件,然后在电脑上运行OPPO Sign程序;

3)按照操作指引拖入APK文件;

4)获取到OPPO Sign,复制文本。

手机端获取指引

1)在手机上安装所需要获取OPPO Sign的应用;
2)在手机上安装获取签名工具
3)打开获取签名工具,输入所需获取OPPO Sign应用的包名,点击“获取签名信息”。

OPPO开放平台边下边玩接入指引

OPPO开放平台边下边玩接入指引

什么是“边下边玩”

边下边玩是一种由OPPO软件商店提供的能力,它可以通过对软件包体进行分析,得到运行必要的模块与非必要模块。在用户安装的时候,会先传输必要的模块,当必要模块传输完成后,用户就可以启动应用进行使用,非必要模块会在用户使用的过程中逐块传输,以实现一边下载一边玩的能力。

如何接入“边下边玩”能力

“边下边玩”能力的功能完全由OPPO实现。作为开发者,您无需进行任何额外的开发,仅需提供一个V4签名即可(部分开发者无需提供,见下文)。

申请加入公测

当前边下边玩能力处于内测阶段,并未面向所有开发者和所有用户开放,如果您想要参与内测,请向我们提出申请。由于并非所有应用都会有良好的边下边玩表现(这与应用的实现方式密切相关),我们会选拔出表现相对较好的应用发布线上进行内测。


申请方式:
应用请发送邮件至:g_lyyunying@oppo.com,
游戏请发送邮件至:g_game_bd@oppo.com。
邮件正文如下:
1)应用名称:
2)应用包名:
3)应用ID:
4)开发者名称:
5)您是否愿意配合OPPO一起优化边下边玩功能:
6)您的应用(最新版本)是否符合以下条件:

条件是否满足
应用安装后不做大量资源解压缩(小于包体大小30%)是/否
应用安装后不做大量资源校验(小于包体大小30%)是/否
应用安装后不需要额外下载较大资源包是/否
应用拥有比较固定的使用流程(比如关卡游戏)是/否
如果是游戏,是否为单机游戏(应用无需填写)是/否

如果您的应用符合以下条件,我们十分建议您申请开通能力,因为您的应用更有可能在边下边玩中表现的更好:

1)应用安装后不做大量资源解压缩(小于包体大小30%);
2)应用安装后不做大量资源校验(小于包体大小30%);
3)应用安装后不需要额外下载较大资源包;
4)应用拥有比较固定的使用流程(比如关卡游戏)。
5)如果应用是游戏,则单机游戏可能会拥有更好的体验。

这些并不是强制项,如果您的应用无法满足以上多个条件,但您依旧想使用边下边玩技术,您依然可以向我们发送申请,我们会进行评估,并与您持续沟通。

上传应用的V4签名

如果您的申请已通过,但没有上传入口,则说明您的应用无需上传签名即可拥有边下边玩能力。

当您的测试申请被批准后,在OPPO开放平台的应用资料更新页面就会出现V4签名的上传入口。

上传您的V4签名(点击查看如何给应用签V4签名),通过检验后提交即可。

当前有部分合作游戏无需上传V4签名,仅需加入内测名单即可,其他类型的应用则需要上传V4签名。

等待应用审核上架

当您的应用审核上架通过后,OPPO软件商店会对您的应用进行分析预测。分析结束后,用户在安装该应用的过程中就可以体验到边下边玩能力了。

“边下边玩”能力支持范围

终端软件商店版本:>= 9.0.75
终端Android版本:>= Android S
支持终端:目前仅支持手机

为什么我的应用“边下边玩”体验不佳?

这说明您的应用基础块依赖较多,用户需要下载较大比例才可以进入游戏。您可以尝试按照以下方向进行优化更新:
1)避免安装启动后的大量资源解压缩
2)避免安装包内置的资源digest校验
3)按需加载文件,规避首次启动后短时间内的大量文件使用

如果您有其他疑问,请联系我们

为什么我开启了“边下边玩”,用户端却无法体验?

这可能是由于以下原因:
1)用户端未在设置中开启边下边玩能力。
2)您的应用包仍在分析分块中。
3)您的应用在边下边玩的系统测试中表现一般,未达到下发标准。
4)为了保证数据完整性和系统稳定性,我们只允许用户终端在同一时刻存在一个边下边玩应用。
5)用户的终端版本不符合要求或者未被选中为内测用户。

OPPO开放平台素材AB算法推荐

OPPO开放平台素材AB算法推荐

素材AB算法推荐

能力说明

开发者上传的素材,支持算法进行千人千面推荐,根据效果智能决定展示量级;只需要开发者上传素材,后续直接交给算法,无需过多操作,不需要人工频繁基于效果调整实验计划,或设置最终素材。

建议配置方法:建立算法推荐任务,并上传素材后,设置【无限天数】,把基于效果调整素材的能力交给算法。

新旧能力对比

流程现状新能力上线后
素材AB(非算法推荐)单个素材流量:随机分流
最终素材决策:测试完成后,需要人工基于数据选出效果最好的素材,设置为默认素材
保持一致
素材AB(算法推荐)/单个素材流量 & 最终素材决策:
算法进行个性化推荐,且根据效果智能决定展示量级。 素材ab
整体流量占比配置非算法推荐+默认素材=100%流量非算法推荐+算法推荐+默认素材=100%流量

配置流程

进入ABTest功能页面

找到开放平台内【应用详情】页面,下拉找到【素材ABTest】入口并进入,选择【上架期间素材ABTest】。

新建算法推荐测试任务

添加新素材AB任务

在【上架期间素材ABTest】页面内,点击【添加新素材AB任务】。

注:非算法推荐 & 算法推荐测试组,分别只能运行一组。如需要新建任务,需要先把原任务结束掉。

时间 & 流量设置

填写任务基本信息后点击下一步,要填写的信息包括:
· 素材名称
· 测试类型 (选择“算法测试类型”)
· 测试天数 (可选择无限天数,因算法会智能根据素材效果,分配展示量级,无需开发者手动查看效果后,进行上下线;也可选择有限天数)
· 测试流量范围
算法推荐测试组,整体流量范围可在0%到100%中调整,并且算法推荐+非算法推荐的整体流量,不可超过100%。

示例:
非算法推荐流量设置为40%,算法推荐流量设置为40%,剩下20%流量默认展示主素材。
非算法推荐流量设置为40%,算法推荐流量设置为60%,则无剩余流量展示主素材。

素材设置

算法推荐测试组中,开发者可创建不同素材,进入算法推荐环节。具体操作说明如下:
· 添加方案:点击【添加方案】,将新建一套方案。
· 素材复制:点击页面右侧【复制】按钮,可复制出一套新素材,其中内容仍与主素材保持一致。做多组实验的时候,开发者可复制多套素材,并针对单独内容进行更换,无需重复多次上传。
· 数量限制:除主素材外,算法推荐测试任务,最多可创建8套素材,与此前的非算法推荐素材ab功能保持一致。
· 名称 & 流量编辑:进入方案页面,仍可针对素材套餐名称、流量范围进行编辑。
· 提交审核:创建完毕之后,点击提交审核。

结束测试

素材通过审核上线后,如需要中止实验,可在测试方案详情页内,选择完成测试,并结束测试。

数据回收

点击任务内右侧【数据】入口,或进入【生态服务-应用服务-应用分析-运营分析-素材ABTest】页面,均可看到不同任务的数据效果,指标包括:
icon点击率、icon转化率、详情页转化率,后续将添加上icon曝光次数、详情页曝光次数,便于开发者观测到算法分配给不同素材的展示量级,以及量化整体效率。

OPPO开放平台应用素材 AB test 功能介绍

OPPO开放平台应用素材 AB test 功能介绍

产品简介

素材ABtest即产品素材测试,简单来说,就是为一款产品提供多套素材测试,通过给不同用户展示不同素材,收集各套素材的日志数据,帮助开发者选择最优的产品曝光素材。

素材ABtest功能,面向所有应用开发者开放,开发者申请需满足在OPPO应用分发广告业务连续投放一星期以上,符合此条件的开发者可联系营销顾问或对应的客户运营(点击查看联系方式)邮件申请开通该功能入口的权限。开通此权限以后,需保持连续投放2周以上,如果在此期间停投则关闭权限。

使用场景

素材ABtest适用于有优化详情页素材转化效果需求的广告主,为他们提供多套详情页素材测试,通过给不同用户展示不同素材,收集各套素材的日志数据,帮助开发者选择最优的产品曝光素材。

申请权限

1) 邮件申请:

邮件中需包含应用全称、应用ID、应用包名、应用当前包体状态、企业名称信息,收件人为对应的营销顾问或客户运营(点击查看联系方式),邮件格式内容如下:

邮件标题:应用素材ABtest权限申请-应用名称-企业名称
邮件正文:
应用全称:
应用ID:
应用包名:
应用当前包体状态:
企业名称:

2) 权限开通:
邮件发送之后,一般2-3个工作日会进行审核,通过后权限即自动生效。

操作指引

操作路径(只有权限开通后,才会展示操作入口)

备注:应用当前包体处于“上线”状态,素材ABtest路径入口是开放状态,当包体状态处于审核/资料更新等状态下时,测试素材会跟包体冲突,会暂时屏蔽“素材ABtest”入口,所以找不到入口时,请先检查应用当前状态。

测试流程

流程说明:
1)开放平台上传素材,含应用ICON、一句话描述、五图、详情页背景图,设置测试时间,素材任务提交,进行送审;
2)审核通过之后,第二天零点自动上架开始测试,次日出数据;
3)测试结束之后,可以选择数据最优的素材替换为线上素材,自动替换后一键生效,毋须重新审核;

操作指引

3.1、第一部分:素材ABtest测试

3.1.1、测试内容

应用ICON、一句话描述(仅游戏特有)、详情页五图、详情页背景图

3.1.2、出图说明:

1)应用icon:尺寸:512512px,图片格式:PNG,小于1M;
2)应用详情页展示截图:3-5张截图,支持JPG、PNG格式。截图尺寸要求:1080
1920,单张图片不能超过1M。去除截图中的顶部状态栏的通知图标,图片中不得使用其他品牌的手机作为边框或宣传图;
3)详情页背景图:尺寸:1080x1476px,图片格式:jpg,小于500K。具体规范如下图所示:

3.1.3、上传路径

素材ABtest入口上传

1)素材ABtest测试,是按照素材任务套餐上传,见下图:

注意:APP当前测试任务套餐状态未结束时,不能添加新套餐;

2)创建套餐:需要输入素材任务名称和测试天数,见下表:

注意:套餐名称限制字数为10(含符号),测试天数可选择1-5天;

3)添加新素材:每个测试任务最多添加5套素材

素材设计参考上面的“出图说明”,上传完毕可以生成预览图,预览效果如下:

预览环境检查上传素材是否满足要求:

注意:

· 预览和保存,因涉及的素材较多,可能会有几秒钟延迟,请理解;

· 定制背景图,只支持合作游戏和应用合作,普通应用请选择“头图-banner”、无背景图/头图选择“无”;

· 测试任务提交审核,任务列表会显示当前任务状态,审核状态素材不支持修改

· 素材生效:审核通过之后,次日凌晨自动上线生效;

3.2、第二部分:查看数据&素材替换

1)素材生效,次日可以查看数据,测试完成,可查看完整数据;

2)根据当前测试素材,可以选择最优素材替换为线上生效素材,当前测试结果不理想,没有需要替换的素材,需要终止任务,才能开始下一次任务测试;

注意:素材ABtest设置的主素材有效期为90天,90天结束后素材会自动下架,自动回滚到更换前的主素材。

OPPO开放平台APP多包上传教程

OPPO开放平台APP多包上传教程

业务介绍

1、能力介绍:多包发布能力可实现为应用发布多个不同的APK,每个APK针对不同的设备CPU架构下发。
2、包体介绍:每个APK都是完整、独立的应用版本,且需共享相同的软件名称、使用相同的发布密钥进行签名。

典型应用场景

支持不同的CPU架构,分别为32位、64位。通过在不同架构设备上提供不同版本,可实现减小包体体积,一般对低端机提供32位版本,对主流机型提供64位版本优化内存使用问题。适用于对不同设备提供差异化功能的开发者。

上传多包流程

1)登录OPPO开放平台开发者帐号,进入管理中心→应用服务平台→移动应用列表→应用详情页,点击“多CPU包能力”。


2)仔细阅读操作须知,然后点击“使用多CPU包上传能力”,弹框中点击“确定”。

3)进入发布应用或版本升级页面,按照提示分别上传32位和64位APK包。

4)如需从多包上传转换为普通包上传,请进入应用详情页→多CPU包能力→使用普通包上传能力。后续转换能力需要联系在线客服并由人工审核,请慎重操作

使用限制

1)软件包名和签名必须一致;

2)支持拆分维度:CPU架构;

3)多包应用的软件包作为整体发布,所有包审核通过才通过;

4)新版本上架后,上一版本所有软件包下架;

5)新增或更新多包时,32位包版本号≤64位包版本号。

FAQ

1)什么是32/64位兼容安装包?
A:32/64位兼容安装包指既能支持32位手机系统又同时支持64位手机系统的安装包。

2)同时上传32/64位安装包需要注意什么?

A:同时上传32位、64位安装包需要在多包入口进行上传,且需要保障32位、64位安装包包名、签名一致,同时32位包版本号≤64位包版本号,软件商店会对两个包体独立进行审核。具体操作详见多包上传流程。

3)适配后,用户在软件商店搜索是否会出现2个同样的应用?

A:双包上传后,用户不会在软件商店搜索到2个同样的应用,商店对每个APK会针对不同的设备CPU架构进行下发,即32位应用下发32位CPU架构设备,64位应用下发64位CPU架构设备。

4)若应用仅支持64位包,如何操作?

A:若为第一次在软件商店上传该应用,则暂不支持64位包;若非第一次在软件商店上传该应用,则走多包上传入口,仅传64位包即可。为保障用户体验,建议提供32位CPU架构用户可使用的包。

5)若使用多包后,后续不想用多包能力进行上传了怎么操作?

A:在多包上传界面有申请转普通包上传的入口,第一次申请无需审核,可秒转普通包上传;第二次及以后申请变为多包上传需走申请,申请通过后方可再变换上传方式。

oppo应用商店分阶段发布APP

oppo应用商店分阶段发布APP

能力介绍

在应用发布新版本时,你可以采用分阶段发布的方式对新版本进行分阶段更新,先向一定比例的用户发布更新的版本,快速获取用户对新版本的反馈意见,验证产品功能的稳定性,降低全量发布可能出现的风险及影响范围。

操作说明

使用分阶段发布能力

您的APP当前上架版本为全网发布时,可提交新版本并设置分阶段发布(即分阶段发布只适用于应用程序更新
)。

路径:OPPO开放平台→管理中心→应用服务平台→移动应用列表→版本升级

创建分阶段发布版本

在“版本升级”页上传包体并填写版本信息。

发布类型:选择“分阶段发布”;

生效时间:阶段一起始时间需选择当前时间的24小时后,整个分阶段发布周期(从阶段一的起始时间到最后一个阶段的结束时间)不超过30天。达到最后一个阶段的结束时间时,分阶段发布将自动转为全网发布,当前在架的正式版本将下架;

发布百分比:支持填写大于0且小于100的整数或小数,下一阶段的发布百分比必须大于上一阶段的发布百分比;

默认至少填写一个发布阶段,如需添加更多阶段,可点击“添加更多阶段”,上限为10个;

分阶段发布说明:可填写备注信息,仅供开发者自行参考。

完善其他信息后,点击“提交审核”,提交成功后,该版本的审核状态将更新为“审核中”。

管理分阶段发布版本

审核期间,在应用详情页可以对分阶段发布版本查看详情、催审、撤销审核。

审核通过后,软件商店将按设置的生效时间和发布百分比分发该版本,正式版本和分阶段发布版本将同时在架。开发者可以在应用详情页更新资料、查看和更新发布设置。

在“发布设置”页面,可查看分阶段版本的发布状态、发布设置、历史操作记录、发布说明等,并进行更新分阶段发布、暂停分阶段发布、恢复分阶段发布、取消分阶段发布操作。

更新分阶段发布

点击“更新分阶段发布”按钮,对于未到生效时间的发布阶段,支持修改生效时间、发布百分比。对于已到生效时间的阶段,不支持修改生效时间、发布百分比。支持修改分阶段发布说明。生效时间、发布百分比、发布说明的填写要求和创建分阶段发布时相同。

点击“确定”后,软件商店将按更新后发布设置去分发该版本

暂停分阶段发布

分阶段发布生效后,点击“暂停分阶段发布”按钮,在弹窗中点击“确定”,分阶段发布版本将在软件商店暂时下架。

恢复分阶段发布

分阶段发布暂停期间,点击“恢复分阶段发布”按钮,在弹窗中点击“确定”,该分阶段发布将在软件商店恢复上架,按照设置的生效时间和发布百分比继续分发。如当前时间已经晚于最后一个阶段的结束时间,不可恢复分阶段发布。

取消分阶段发布

分阶段发布未生效和已生效期间,点击“取消分阶段”按钮,在弹窗中点击“确定”,可以取消分阶段发布,取消后,该版本将在软件商店下架。

提交新版本

当APP的各版本都审核完成时,点击正式版本操作栏的“版本升级”按钮,“发布类型”选择全网发布或分阶段发布,可更新正式版本或分阶段发布版本。提交审核后,当前在架的分阶段发布版本将下架。

常见FAQ

1)该能力面向的开放对象是哪些?

普通应用、合作应用、合作游戏,且当前有对全网用户可见的在架版本。

2)设置的比例代表什么含义?

以设置10%为例,代表在软件商店内有10%的活跃用户可以看到你的新版本。

3)该包是否会影响到正常版本的分发?

使用该能力后,新包和旧包同时保持上架,新包仅分发给设置的比例所命中用户群。

4)如果使用分阶段发布的新包有问题,想上传新的包去覆盖怎么操作?

只要保证新包版本号大于上一次的包即可。

OPPO应用商店应用自更新赋能接入

OPPO应用商店应用自更新赋能接入

背景

在目前的应用自更新场景中,大部分为应用先在后台下载新版本的APK,然后调用系统安装器进行安装,安装成功率较低,进而影响应用的版本升级成功率。

产品能力

OPPO软件商店目前应用自更新赋能,提供的能力点为:
a. 提供接口供申请方调用,用于获取其在OPPO软件商店上架的全量版本号。
b. 申请方在自升级场景下,可通过market协议拉起软件商店内全量的应用详情页,以此实现全量版本的升级。market协议格式为:market://details?id=应用包名&v_code = xxxx
c. 可申请跳转软件商店应用详情页后,在用户点击下载后跳转软件商店详情页即开始更新。

业务接入应用自更新赋能后的前端交互

a.合作方式一

应用内提示新版本更新,用户点击更新后跳转至OPPO软件商店内全量版本的应用详情页,立即开始更新。

b.合作方式二

应用提示新版本更新,点击更新后跳转至OPPO软件商店内全量版本的应用详情页,用户点击更新后开始下载并自动安装。

用户操作路径对比

OPPO开放平台更新APP操作指南

OPPO开放平台更新APP操作指南

应用更新流程

1)登录开发者帐号,在管理中心应用管理页面,点击“移动应用列表”—点击“版本升级”

2)进入应用更新页面,点击“上传”,上传需更新的安装包,并填写相关软件信息后,点击“继续”

3)升级版本Code值/内部版本号一定要比上一个版本高,否则会出现提示无法更新、提示版本低、解析apk失败等情况;若Code值/内部版本号和上一版本一样,请移步“同版本更新流程”,Code值/内部版本号不能低于上一个版本。

4)确认ICON、详情图、APP资质信息无误后,点击“提交审核”即可;

我们通常会在1-3个工作日内完成应用的更新审核。如超过3个工作日还未有审核结果,可点击页面右侧的在线客服进行催审。

如何在OPPO应用商店发布一个应用

如何在OPPO应用商店发布一个应用。

在上传您的应用之前,请您先阅读我们的审核规范,只有符合审核规范的应用才会被收录。

1)在开放平台成功注册为开发者后,便可以进行应用发布,在OPPO开放平台,点击首页选择-管理中心-应用服务平台-创建应用。

2)确认应用的类型以及填写应用的名称和包名。

3)填写应用的基本资料,点击“上传”按钮,选择您要上传的应用apk文件 ,上传后将自动解析包名,以及应用名称。

4)APK上传完成后,在下方进行应用资料编辑(*号标识为必填)

*软件分类:选择符合应用主功能的分类;

*一句话简介:简要的说明应用的功能和特点;

*软件介绍:详细说明应用的主功能,以及应用的操作步骤;

*版本说明:应用当前版本的更新说明,例如:修复若干bug,优化应用ui界面等;

*隐私权限说明:应用需要获取系统的权限,例如:拍照权限,通讯录使用权限;

5)上传应用的icon与截图

*icon:要求与安装包中图标一致。尺寸:512*512px,图片格式:PNG,小于1M

*截图:请上传3-5张截图(尺寸大小保持一致、横屏或竖屏保持一致),支持JPG、PNG格式。截图尺寸要求:1080*1920,单张图片小于1M。请去除截图中的顶部状态栏的通知图标,图片中不得使用其他品牌的手机作为边框或宣传图;

6)上传版权证明资料及附加测试说明

软件版权证明: 请上传软著扫描件,如果无软著请上传1-3个其他市场后台上架截图供审核人员参考(特殊类应用必须上传软著,特别类资质标准请点击链接

*特殊类证书:如应用为特殊行业,需上传特殊类证书,例如:金融类、直播类

*附加测试说明:填写应用测试中遗留的问题,及手机测试配置的说明与提供相关的测试帐号

7) 填写APP商务联系人,填写联系方式,方便我们与贵司联系,填写完毕点击-提交审核。

成功提交审核后,OPPO软件商店测试人员将在1-3个工作日对您的应用进行审核,如超过3个工作日还未有审核结果,可点击页面右侧的在线客服进行催审。

OPPO应用商店介绍 OPPO软件商店介绍

OPPO应用商店介绍 OPPO软件商店介绍

简介

软件商店是官方、正版、安全的APP下载渠道,拥有海量资源,所有资源都通过机器检测、人工亲测,为用户提供安全可靠的应用、游戏资源下载及管理功能。

安心下 放心用
为开发者提供优质服务,成为开发者必选和新产品独家首发的平台。
为用户提供安全、优质的内容,成为用户首选的软件商店。

优势

强大的分发能力
国内最大的移动分发渠道之一,以 oppo 亿级用户为基础,提供强大的平台分发能力。

公开的生态资源
创建健康公平的应用生态,帮助开发者将优质内容提供给用户,帮助用户发现优质内容。

便捷的开发者服务
全面开放账号、支付、数据分析等产品服务,并配置强大的人工审核团队,确保资源快速上线。

liveness 活体人脸检测 B APP开发接入人脸检测能力 APP人脸识别开发

用做网页的技术做APP
一门提供标准化的jsbridge-mini.js库,您只需要在页面引用执行JS即可实现各种原生APP、原生PC的功能能力。

==================APP端==================
【APP端】(安卓版&苹果版)目前提供200+原生功能,2000+JS映射接口,用做网站的技术即可实现各种原生APP能力、APP demo地址https://www.yimenapp.com/doc/demo.cshtml下载教程:
♦ JS-SDK 引用方式:
♦ 普通网页 script 方式加载:下载最新版,请在页面上调用 jsBridge 接口之前引用 jsbridge-mini.js 库;
♦ js module 方式引用:npm install ym-jsbridge 具体请参考 npm package
一门APP开发平台通用JS

liveness 活体人脸检测 B APP开发接入人脸检测能力 APP人脸识别开发

核心代码示例,详情参阅demo

jsBridge.bdface.liveness({
  timeout: 15,   //检测超时时间(秒,超时未检测到人脸则返回失败),不低于5秒,默认15秒
  motion: [      //要求的活体验证动作,任意组合
    0, //眨眼
    1, //张嘴
    //4, //左右摇头(新版已不支持此动作)
    5, //抬头
    6  //低头
  ],
  random: true  //动作是否乱序随机,默认 false
}, function(faces) {
  if (faces && faces.length) {
    show(faces);
  } else {
    alert("失败");
  }
});

A标签执行JS示例代码

<a href="javascript:void(0)" onclick="zhixing()">执行</a> 
<!-- 写入一个A标签href值为"javascript:void(0)",定义点击事件onclick;-->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- 在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接;-->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.bdface.liveness({
  timeout: 15,   //检测超时时间(秒,超时未检测到人脸则返回失败),不低于5秒,默认15秒
  motion: [      //要求的活体验证动作,任意组合
    0, //眨眼
    1, //张嘴
    //4, //左右摇头(新版已不支持此动作)
    5, //抬头
    6  //低头
  ],
  random: true  //动作是否乱序随机,默认 false
}, function(faces) {
  if (faces && faces.length) {
    show(faces);
  } else {
    alert("失败");
  }
});

}
</script>
<!--执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可;-->

按钮执行JS示例代码

<button onclick="zhixing()" >执行</button>
<!-- //写一个按钮,定义点击执行事件; -->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- //在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接; -->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.bdface.liveness({
  timeout: 15,   //检测超时时间(秒,超时未检测到人脸则返回失败),不低于5秒,默认15秒
  motion: [      //要求的活体验证动作,任意组合
    0, //眨眼
    1, //张嘴
    //4, //左右摇头(新版已不支持此动作)
    5, //抬头
    6  //低头
  ],
  random: true  //动作是否乱序随机,默认 false
}, function(faces) {
  if (faces && faces.length) {
    show(faces);
  } else {
    alert("失败");
  }
});

}
</script>
<!-- //执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可; -->

liveness 活体人脸检测 A APP开发实现活体人脸检测 APP人脸识别

用做网页的技术做APP
一门提供标准化的jsbridge-mini.js库,您只需要在页面引用执行JS即可实现各种原生APP、原生PC的功能能力。

==================APP端==================
【APP端】(安卓版&苹果版)目前提供200+原生功能,2000+JS映射接口,用做网站的技术即可实现各种原生APP能力、APP demo地址https://www.yimenapp.com/doc/demo.cshtml下载教程:
♦ JS-SDK 引用方式:
♦ 普通网页 script 方式加载:下载最新版,请在页面上调用 jsBridge 接口之前引用 jsbridge-mini.js 库;
♦ js module 方式引用:npm install ym-jsbridge 具体请参考 npm package
一门APP开发平台通用JS

liveness 活体人脸检测 A APP开发实现活体人脸检测 APP人脸识别

要求做眨眼、张嘴、摇头等活动验证动作,返回抓拍照图片的 Base64 编码。

核心代码示例,详情参阅demo

jsBridge.bdface.liveness({
  timeout: 15,    //检测超时时间(秒,超时未检测到人脸则返回失败),不低于5秒,默认15秒
  sound  : true,  //是否启用声音提示,默认 true
  motion : [      //要求的活体验证动作,任意组合
    0, //眨眼
    1, //张嘴
    2, //向左转头
    3, //向右转头
    //4, //左右摇头(新版已不支持此动作)
    5, //抬头
    6  //低头
  ],
  random: false  //动作是否乱序随机,默认 false
}, function(faces) {
  if (faces && faces.length) {
    show(faces);
  } else {
    alert("失败");
  }
});

A标签执行JS示例代码

<a href="javascript:void(0)" onclick="zhixing()">执行</a> 
<!-- 写入一个A标签href值为"javascript:void(0)",定义点击事件onclick;-->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- 在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接;-->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.bdface.liveness({
  timeout: 15,    //检测超时时间(秒,超时未检测到人脸则返回失败),不低于5秒,默认15秒
  sound  : true,  //是否启用声音提示,默认 true
  motion : [      //要求的活体验证动作,任意组合
    0, //眨眼
    1, //张嘴
    2, //向左转头
    3, //向右转头
    //4, //左右摇头(新版已不支持此动作)
    5, //抬头
    6  //低头
  ],
  random: false  //动作是否乱序随机,默认 false
}, function(faces) {
  if (faces && faces.length) {
    show(faces);
  } else {
    alert("失败");
  }
});

}
</script>
<!--执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可;-->

按钮执行JS示例代码

<button onclick="zhixing()" >执行</button>
<!-- //写一个按钮,定义点击执行事件; -->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- //在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接; -->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.bdface.liveness({
  timeout: 15,    //检测超时时间(秒,超时未检测到人脸则返回失败),不低于5秒,默认15秒
  sound  : true,  //是否启用声音提示,默认 true
  motion : [      //要求的活体验证动作,任意组合
    0, //眨眼
    1, //张嘴
    2, //向左转头
    3, //向右转头
    //4, //左右摇头(新版已不支持此动作)
    5, //抬头
    6  //低头
  ],
  random: false  //动作是否乱序随机,默认 false
}, function(faces) {
  if (faces && faces.length) {
    show(faces);
  } else {
    alert("失败");
  }
});

}
</script>
<!-- //执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可; -->

detect 一般人脸检测 APP开发实现人脸检测

用做网页的技术做APP
一门提供标准化的jsbridge-mini.js库,您只需要在页面引用执行JS即可实现各种原生APP、原生PC的功能能力。

==================APP端==================
【APP端】(安卓版&苹果版)目前提供200+原生功能,2000+JS映射接口,用做网站的技术即可实现各种原生APP能力、APP demo地址https://www.yimenapp.com/doc/demo.cshtml下载教程:
♦ JS-SDK 引用方式:
♦ 普通网页 script 方式加载:下载最新版,请在页面上调用 jsBridge 接口之前引用 jsbridge-mini.js 库;
♦ js module 方式引用:npm install ym-jsbridge 具体请参考 npm package
一门APP开发平台通用JS

无活体动作验证,返回抓拍照图片的 Base64 编码。

detect 一般人脸检测 APP开发实现人脸检测

核心代码示例,详情参阅demo

jsBridge.bdface.detect({
  timeout: 15,        //检测超时时间(秒,超时未检测到人脸则返回失败),不低于5秒,默认15秒
  sound  : false,     //是否启用声音提示,默认 true
  bgColor: '#FFFFFF'  //背景色(HTML颜色,#RRGGBB)
}, function(faces) {
  if (faces && faces.length) {
    show(faces);
  } else {
    alert("失败");
  }
});

A标签执行JS示例代码

<a href="javascript:void(0)" onclick="zhixing()">执行</a> 
<!-- 写入一个A标签href值为"javascript:void(0)",定义点击事件onclick;-->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- 在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接;-->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.bdface.detect({
  timeout: 15,        //检测超时时间(秒,超时未检测到人脸则返回失败),不低于5秒,默认15秒
  sound  : false,     //是否启用声音提示,默认 true
  bgColor: '#FFFFFF'  //背景色(HTML颜色,#RRGGBB)
}, function(faces) {
  if (faces && faces.length) {
    show(faces);
  } else {
    alert("失败");
  }
});

}
</script>
<!--执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可;-->

按钮执行JS示例代码

<button onclick="zhixing()" >执行</button>
<!-- //写一个按钮,定义点击执行事件; -->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- //在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接; -->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.bdface.detect({
  timeout: 15,        //检测超时时间(秒,超时未检测到人脸则返回失败),不低于5秒,默认15秒
  sound  : false,     //是否启用声音提示,默认 true
  bgColor: '#FFFFFF'  //背景色(HTML颜色,#RRGGBB)
}, function(faces) {
  if (faces && faces.length) {
    show(faces);
  } else {
    alert("失败");
  }
});

}
</script>
<!-- //执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可; -->

detect 一般人脸检测 APP开发实现人脸检测功能 APP人脸检测能力

用做网页的技术做APP
一门提供标准化的jsbridge-mini.js库,您只需要在页面引用执行JS即可实现各种原生APP、原生PC的功能能力。

==================APP端==================
【APP端】(安卓版&苹果版)目前提供200+原生功能,2000+JS映射接口,用做网站的技术即可实现各种原生APP能力、APP demo地址https://www.yimenapp.com/doc/demo.cshtml下载教程:
♦ JS-SDK 引用方式:
♦ 普通网页 script 方式加载:下载最新版,请在页面上调用 jsBridge 接口之前引用 jsbridge-mini.js 库;
♦ js module 方式引用:npm install ym-jsbridge 具体请参考 npm package
一门APP开发平台通用JS

detect 一般人脸检测 APP开发实现人脸检测功能 APP人脸检测能力

无活体动作验证,返回抓拍照图片的 Base64 编码。

核心代码示例,详情参阅demo

jsBridge.bdface.detect({
  timeout: 15,       //检测超时时间(秒,超时未检测到人脸则返回失败),不低于5秒,默认15秒
  sound  : true,     //是否启用声音提示,默认 true
  bgColor: '#FFFFFF' //背景色(HTML颜色,#RRGGBB)
}, function(faces) {
  if (faces && faces.length) {
    show(faces);
  } else {
    alert("失败");
  }
});

A标签执行JS示例代码

<a href="javascript:void(0)" onclick="zhixing()">执行</a> 
<!-- 写入一个A标签href值为"javascript:void(0)",定义点击事件onclick;-->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- 在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接;-->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.bdface.detect({
  timeout: 15,       //检测超时时间(秒,超时未检测到人脸则返回失败),不低于5秒,默认15秒
  sound  : true,     //是否启用声音提示,默认 true
  bgColor: '#FFFFFF' //背景色(HTML颜色,#RRGGBB)
}, function(faces) {
  if (faces && faces.length) {
    show(faces);
  } else {
    alert("失败");
  }
});

}
</script>
<!--执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可;-->

按钮执行JS示例代码

<button onclick="zhixing()" >执行</button>
<!-- //写一个按钮,定义点击执行事件; -->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- //在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接; -->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.bdface.detect({
  timeout: 15,       //检测超时时间(秒,超时未检测到人脸则返回失败),不低于5秒,默认15秒
  sound  : true,     //是否启用声音提示,默认 true
  bgColor: '#FFFFFF' //背景色(HTML颜色,#RRGGBB)
}, function(faces) {
  if (faces && faces.length) {
    show(faces);
  } else {
    alert("失败");
  }
});

}
</script>
<!-- //执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可; -->

custom iOCR 自定义模板文字识别 APP开发实现文字识别功能

用做网页的技术做APP
一门提供标准化的jsbridge-mini.js库,您只需要在页面引用执行JS即可实现各种原生APP、原生PC的功能能力。

==================APP端==================
【APP端】(安卓版&苹果版)目前提供200+原生功能,2000+JS映射接口,用做网站的技术即可实现各种原生APP能力、APP demo地址https://www.yimenapp.com/doc/demo.cshtml下载教程:
♦ JS-SDK 引用方式:
♦ 普通网页 script 方式加载:下载最新版,请在页面上调用 jsBridge 接口之前引用 jsbridge-mini.js 库;
♦ js module 方式引用:npm install ym-jsbridge 具体请参考 npm package
一门APP开发平台通用JS

custom iOCR 自定义模板文字识别 APP开发实现文字识别功能

核心代码示例,详情参阅demo

jsBridge.bdocr.custom({
  //模板ID,https://ai.baidu.com/iocr#/templatelist
  templateSign: "xxxxxxxxxxxxxx",
  //分类器ID(AI训练),https://ai.baidu.com/iocr#/classifierlist
  classifierId: 0
}, function(result){
  showResult(result);
});

A标签执行JS示例代码

<a href="javascript:void(0)" onclick="zhixing()">执行</a> 
<!-- 写入一个A标签href值为"javascript:void(0)",定义点击事件onclick;-->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- 在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接;-->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.bdocr.custom({
  //模板ID,https://ai.baidu.com/iocr#/templatelist
  templateSign: "xxxxxxxxxxxxxx",
  //分类器ID(AI训练),https://ai.baidu.com/iocr#/classifierlist
  classifierId: 0
}, function(result){
  showResult(result);
});

}
</script>
<!--执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可;-->

按钮执行JS示例代码

<button onclick="zhixing()" >执行</button>
<!-- //写一个按钮,定义点击执行事件; -->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- //在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接; -->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.bdocr.custom({
  //模板ID,https://ai.baidu.com/iocr#/templatelist
  templateSign: "xxxxxxxxxxxxxx",
  //分类器ID(AI训练),https://ai.baidu.com/iocr#/classifierlist
  classifierId: 0
}, function(result){
  showResult(result);
});

}
</script>
<!-- //执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可; -->

handWriting 手写 APP开发手写文字识别能力 手写文字识别功能开发

用做网页的技术做APP
一门提供标准化的jsbridge-mini.js库,您只需要在页面引用执行JS即可实现各种原生APP、原生PC的功能能力。

==================APP端==================
【APP端】(安卓版&苹果版)目前提供200+原生功能,2000+JS映射接口,用做网站的技术即可实现各种原生APP能力、APP demo地址https://www.yimenapp.com/doc/demo.cshtml下载教程:
♦ JS-SDK 引用方式:
♦ 普通网页 script 方式加载:下载最新版,请在页面上调用 jsBridge 接口之前引用 jsbridge-mini.js 库;
♦ js module 方式引用:npm install ym-jsbridge 具体请参考 npm package
一门APP开发平台通用JS

handWriting 手写 APP开发手写文字识别能力 手写文字识别功能开发

核心代码示例,详情参阅demo

jsBridge.bdocr.handWriting(function(result){
  showResult(result);
});

A标签执行JS示例代码

<a href="javascript:void(0)" onclick="zhixing()">执行</a> 
<!-- 写入一个A标签href值为"javascript:void(0)",定义点击事件onclick;-->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- 在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接;-->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.bdocr.handWriting(function(result){
  showResult(result);
});

}
</script>
<!--执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可;-->

按钮执行JS示例代码

<button onclick="zhixing()" >执行</button>
<!-- //写一个按钮,定义点击执行事件; -->
<script src="您的服务器URL/jsbridge-mini.js"></script>
<!-- //在您的服务器引入一门JS地址,请下载jsbridge-mini.js上传您自己的服务器获取链接; -->
<script type="text/javascript">
function zhixing() {


<!--这里可以直接复制JS核心代码到此{}括号内-->
jsBridge.bdocr.handWriting(function(result){
  showResult(result);
});

}
</script>
<!-- //执行核心代码;
//如果需要进入页面就执行,去掉点击事件即可; -->