开发者社区
社区提问意见反馈
开发者钉组织
扫描二维码
加入支付宝开发者钉组织
开始使用
ampe
ampe 介绍
ampe 入驻
产品管理
硬件接入
适配规则
扩展能力接入
开发指南
运营能力接入
api 列表
常见问题
多端开发
鸿蒙
插件
安全
openid 开发指南
扩展能力
开发 > 指南 > ampe >  > client sdk 接入
收藏
订阅更新
我的文档
设置
初始化激活
初始化 ampe 环境,并进行主题配置和设备配置。分为以下2步:
说明:建议在 application oncreate 中调用,也可自行选择时机调用;需在其它 api 调用之前初始化,在 client 生命周期内调用一次即可。
1. attachapplicationcontext
设置 application context:
java
复制代码
aromeinit.attachapplicationcontext(context);
2. aromeinit.initandactivate
初始化配置并激活设备(也可以独立调用 aromeinit.initactivaterequest 分别进行初始化和激活)。
请确保在调用前设备信息已在开放平台注册成功,设备激活后才能使用 ampe 服务。
说明:ampe >= 10.3.37.x 版本支持,直接完成初始化和激活。
java
复制代码
//initoptions配置示例,如不需特殊配置,可不传
bundle themeconfig = new bundle();
//横竖屏分屏配置示例,可按需配置
bundle portrait = new bundle();
portrait.putint("showtype", 2);
portrait.putint("launchwidth", 750);
themeconfig.putbundle("portrait", portrait);
bundle landscape = new bundle();
landscape.putint("showtype", 123);
landscape.putint("launchwidth", 375);
themeconfig.putbundle("landscape", landscape);

//freeform模式配置示例,可按需配置
themeconfig.putboolean("enablefloatwindow", true);
themeconfig.putintarray("windowbounds", rect);
themeconfig.putstringarraylist("floatwindowblacklist", blacklist);

//按参数构建initoptions
aromeinitoptions options = new aromeinitoptions.builder()
.deviceconfig(deviceconfig)
//全局主题参数配置,aromelaunchrequest中的themeconfig是局部配置,影响范围为这一次启动小程序
//局部配置优先级高于全局配置
.themeconfig(themeconfig)
.build();

//构建设备信息
aromeactivaterequest activaterequest = new aromeactivaterequest();
activaterequest.deviceid = "your_deviceid";
activaterequest.hostappid = "your_host_app_id";
activaterequest.productid = 123456;//your productid
activaterequest.signature = "your signature";

//initandactivate
aromeinit.initandactivate(options, activaterequest, new aromeinit.callback() {
@override
public void postinit(boolean success, int code, string msg) {
调用参数
参数名称
类型
是否必填
作用
initoptions
aromeinitoptions

初始化配置,包含全局主题配置等,详见:
activaterequest
aromeactivaterequest

设备信息配置,设备激活所需
callback
callback

结果监听,回调信息包含错误码、错误信息等

aromeactivaterequest
参数
类型
是否必传
说明
productid
long

产品 id,开放平台分配的 productid
deviceid
string

设备 id,设备唯一性;该 id 需在开放平台注册过。
signature
string

签名文件,通过 productid、deviceid 使用密钥工具进行  生成
hostappid
string

移动应用 appid
isfinishactivityonbackground
boolean

激活前是否选择小程序压后台杀死所有activity。默认 false 不杀死(可选)
aromeinitoptions
参数
类型
是否必传
说明
loginmode
int

0 手动登入登出
1 悬浮球头像露出,用户可登出
hardwarename
string

硬件名称,通过 getsysteminfo 的 device 字段透出,可以区别开移动端的 app 字段。让开发者有能力从硬件维度做适配兼容。
deviceconfig
bundle

设备信息配置,bundle 类型
themeconfig
bundle

主题参数配置,bundle 类型
deviceconfig
参数
类型
说明
packagename
string
用于接收广播的应用包名
imagerotationangle
int
控制 my.chooseimage 的旋转角度
themeconfig
参数名称
类型
作用
hidestatusbar
boolean
小程序是否隐藏状态栏,默认 false,即不隐藏状态栏
hidenavigationbar
boolean
小程序是否隐藏导航栏,默认 false,即不隐藏导航栏
hideoptionmenu
boolean
小程序是否隐藏胶囊按钮,默认 false,即不隐藏胶囊按钮
initoptionparams.theme_config_bg_color
string,16 进制色值,如#ffff00
面板主色a,见横屏模式图示
initoptionparams.theme_config_panel_bg_color
string,16 进制色值,如#ffff00
面板辅色b,见横屏模式图示
initoptionparams.theme_config_title_color
string,16 进制色值,如#ffff00
标题色a,见横屏模式图示
initoptionparams.theme_config_sub_title_color
string,16 进制色值,如#ffff00
辅助色c,见横屏模式图示
initoptionparams.theme_config_accent_title_color
string,16 进制色值,如#ffff00
强调色b,见横屏模式图示
enablefloatwindow
boolean
true:activity 以自由窗口模式(freeform mode)启动
windowbounds
int[]
enablefloatwindow=true 时,用来设置窗口在屏幕坐标中的大小和位置,单位像素,可参考 .setlaunchbounds
示例:{0, 0, 1000, 1000}
floatwindowblacklist
arraylist
freeform mode 黑名单 appid 列表;黑名单内的小程序不使用 freeform mode;
enablefloatwindow=true 时生效,搭配实现更佳展示效果。
示例:mthemeconfig.putstringarraylist("floatwindowblacklist", strings)
portrait
bundle
竖屏下分屏和小程序主题宽度配置:showtype和launchwidth,具体含义见下表。
默认配置示例:
"portrait": {
"showtype": 2,
"launchwidth": 750
}
无竖屏时可不配置,和默认配置一致时也可不配置。
landscape
bundle
横屏下分屏和小程序主题宽度配置:showtype和launchwidth,具体含义见下表。
默认配置示例:
"landscape": {
"showtype": 123,
"launchwidth": 375
}
无横屏时可不配置,和默认配置一致时也可不配置。
screenorientation
string
可选值:"portrait"/"landscape"
,如需固定屏幕方向,可设置对应screenorientation,默认不设置,支持横竖屏旋转
portrait & landscape 参数
参数名称
类型
作用
showtype
int
横屏模式,默认值 123
123:左中右三屏显示,包含最近列表 小程序主体 运营页
12:左 中,包含最近列表 小程序主体
23:中 右,包含小程序主体 运营页
2:中,只显示小程序主体
竖屏模式,默认值 2
12:左 中,包含最近列表 小程序主体
21:中 左, 包含小程序主体 最近列表
2:中,只显示小程序主体
launchwidth
int
小程序主体显示宽度(可选),  取值范围[0,750];默认值 750, 此时小程序主体宽度与屏幕宽度一致;375 则为半屏宽度,等比类推;开发者可根据需要自行传入设置。
themeconfig图示
横屏模式 showtype=123

横屏模式
showtype=23 showtype=12 showtype=2

竖屏模式
showtype=12 showtype=21 showtype=2

若独立调用初始化 aromeinit.init,可参考以下代码:
说明:ampe>=10.3.37.x 版本建议使用 aromeinit.initandactivate。
api说明
建议:api 不要在主线程调用,否则可能在服务未初始化完成前抛出异常。
如果必须要在主线程调用,务必保证调用前检查 aromeinit.isserviceonline 返回 true。
1.1 激活
client 生命周期内调用一次即可。
请确保在调用前设备信息已在开放平台注册成功,设备激活后才能使用 ampe 服务。
说明:ampe>=10.3.37.x 版本建议使用 aromeinit.initandactivate。
java 示例代码
kotlin 示例代码
请求参数
参数
类型
是否必传
说明
productid
long

产品 id,开放平台分配的 productid
deviceid
string

设备 id,设备唯一性;该 id 需在开放平台注册过。
signature
string

签名文件,通过productid、deviceid使用密钥工具进行  生成
hostappid
string

移动应用 appid
isfinishactivityonbackground
boolean

激活前是否选择小程序压后台杀死所有 activity,默认false不杀死(可选)
结果参数
参数
说明
success
true / false
code
状态码
message
状态信息
错误码说明
2001
服务端激活失败
2.1 登录
拉起二维码登录页面进行登录授权。一般打开小程序时会进行登录,接入方也可按需调用。
java 示例代码
kotlin 示例代码
请求参数
暂无
结果参数
参数
说明
success
true / false
code
状态码
message
状态信息
2.2 登出
java 示例代码
kotlin 示例代码
请求参数
暂无
结果参数
参数
说明
success
true / false
code
状态码
message
状态信息
3.1 启动
根据 appid 启动小程序。其它启动方式可查看启动子服务和启动情景智能服务。
java示例代码
kotlin 示例代码
请求参数
参数名称
类型
是否必传
作用
appid
string

要启动的小程序 appid(必选)
page
string

指定小程序页面(可选)
query
string

指定小程序 query 参数(可选)
themeconfig
bundle

主题配置参数(配合 initoptions 初始化时的 themeconfig,具体子参数见下方参数定义)
closeallapp
boolean

启动前是否关闭所有正在运行的小程序,默认 false 不关闭(可选);建议关闭,减少性能消耗
extensionlist
arraylist

硬件能力注册,可替代 aromeextendbridgerequest;只有注册硬件能力 aromeserviceinvoker.registerbridgeextension才能收到回调。
themeconfig 参数
参数名称
类型
作用
savetorecent
boolean
launchapp 启动的小程序是否保存到“最近使用”,默认值 true 保存到最近使用列表
titlebartype
string
控制小程序顶部标题栏的显示样式,不传参为默认样式,目前只支持一种传参:
"car":车载模式,本次小程序启动的标题栏,关闭按钮居左
portrait
bundle
同 initoptions 中 portrait 配置
landscape
bundle
同 initoptions 中l andscape 配置
displayid
int
指定屏幕 displayid;无指定诉求可不填
结果参数
参数
说明
success
true / false
code
状态码
message
状态信息
错误码说明
2013
移动应用未绑定该小程序
该应用未在开放平台绑定对应小程序
3.2 退出
退出指定 appid 小程序或退出所有小程序。
java 示例代码
kotlin 示例代码
请求参数
参数
说明
appid
小程序 appid;
为空则退出所有小程序
结果参数
参数
说明
success
true / false
code
状态码
message
状态信息
错误码说明
1050
未找到运行中的小程序
3.3 预加载
在空闲或适合的时机先预加载小程序,后续启动小程序时可加快启动速度。
java 示例代码
kotlin 示例代码
请求参数
参数
说明
appid
小程序 appid
loadtomemory
是否加载到内存
结果参数
参数
说明
success
true / false
code
状态码
message
状态信息
错误码说明
1060
未找到小程序信息,无法预加载
3.4 批量预加载
java 示例代码
kotlin 示例代码
请求参数
参数
说明
appids
包含所有预加载的小程序appid set,最多10个
结果参数
参数
说明
success
true / false
code
状态码
message
状态信息
错误码说明
1060
批量预加载失败
3.5 小程序运行状态
java 示例代码
kotlin 示例代码
请求参数
参数
说明
appid
小程序 appid
结果参数
参数
说明
success
true / false
code
状态码
message
状态信息
isrunning
小程序是否正在运行 true/false
isforeground
小程序是否在前台 true/false
3.6 获取用户登录信息
java 示例代码
kotlin 示例代码
请求参数

结果参数
参数
说明
success
true / false
code
状态码
message
状态信息,包含 islogin, usernick, useravatar,userkey,userroute等信息
用户状态信息说明
参数名称
说明
islogin
是否已登录
usernick
登录的用户昵称
useravatar
登录的用户头像
userkey
用户唯一标识,对应情景智能服务的下发字段 user_identity,方便比对用户信息,以及硬件设备本地的账户管理。
userroute
用户路由标识,情景智能服务 openapi 专用
3.7 拉取打开调试包
拉取小程序调试包,可进行调试包验证。
java 示例代码
kotlin 示例代码
请求参数
参数
说明
appid
小程序 appid
结果参数
参数
说明
success
true / false
code
状态码
message
状态信息
deployversion
调试包版本号
错误码说明
2000
拉取调试包失败,错误信息见message
3.8 上传日志
上传客户端日志便于问题排查,接入方可在系统合适页面增加上传日志入口,便于线上问题反馈和排查。
java 示例代码
kotlin 示例代码
请求参数
参数
说明
mstartdate
日志开始时间,与 menddate 成对出现。可不传入,则上传最近一天内的日志。支持的日志格式:
"yyyy-mm-dd","yyyy-mm-dd-hh","yyyy-mm-dd hh:mm:ss","yyyy-mm-dd hh:mm:ss:sss"
menddate
日志结束时间
结果参数
参数
说明
success
true / false
code
状态码
message
状态信息
错误码说明
1000
远端调用出错,参考具体报错信息
3.9 启动子服务
子服务介绍详情,参见
java 示例代码
kotlin 示例代码
请求参数
参数
类型
是否必传
说明
miniservicecode
string

子服务码,由开放平台服务端下发
query
string

指定小程序 query 参数(可选)
themeconfig
bundle

主题配置参数(配合 initoptions 初始化时的 themeconfig,具体子参数见 3.1 启动 > themeconfig 参数
closeallapp
boolean

启动前是否关闭所有正在运行的小程序,默认 false 不关闭(可选);建议关闭,减少性能消耗
extensionlist
arraylist

硬件能力注册,可替代 aromeextendbridgerequest;只有注册硬件能力 aromeserviceinvoker.registerbridgeextension 才能收到回调。
结果参数
参数
说明
success
true / false
code
状态码
message
状态信息
3.10 启动情景智能服务
有别于子服务,情景智能服务是用户维度的服务推荐,而子服务是小程序维度的服务推荐,详情参见
java 示例代码
kotlin 示例代码
请求参数
参数
类型
是否必传
说明
mservicecode
string

情景智能服务码,由开放平台服务端下发
museridentity
string

关联的用户唯一标识
query
string

指定小程序 query 参数(可选)
themeconfig
bundle

主题配置参数(配合 initoptions 初始化时的 themeconfig,具体子参数见 3.1 启动 > themeconfig 参数
closeallapp
boolean

启动前是否关闭所有正在运行的小程序,默认 false 不关闭(可选);建议关闭,减少性能消耗
extensionlist
arraylist

硬件能力注册,可替代 aromeextendbridgerequest;只有注册硬件能力 aromeserviceinvoker.registerbridgeextension 才能收到回调。
结果参数
参数
说明
success
true / false
code
状态码
message
状态信息
硬件能力扩展
允许小程序调用第三方 app 提供的硬件能力,如小程序播放车机提供的音乐能力;或设备发送通知给到小程序,如车机通知小程序当前电(油)量低。
1.1 注册能力
硬件能力注册提供 2 种方式,建议使用方式 1。
方式 1:
启动小程序时通过 extensionlist 参数注册,见启动示例。
方式 2: 通过 aromeextendbridgerequest 注册需要扩展的能力;ampe service apk 生命周期内必须注册一次。
或者在启动小程序时通过 extensionlist 参数注册,不需额外调用 aromeextendbridgerequest
请求参数
参数
说明
extensionlist
能力扩展列表
结果参数
参数
说明
success
true / false
code
状态码
message
状态信息
例(扩展了 helloampe 和 playmusic 两个 api):
java 示例代码
kotlin 示例代码
1.2 实现能力
实现注册的能力,当小程序调用对应能力时,会回调 oncalled 方法,并携带 action 即对应 api 名称与 params 即对应调用参数,只需要完成对应的扩展能力,并通过 bridgecallback 参数回调即可,如果不需要额外参数回调给小程序可以直接传入 null 。
java 示例代码
kotlin 示例代码
2.1 发送事件
硬件设备发送事件给小程序,如通知小程序当前电(油)量低等。
java 示例代码
kotlin 示例代码
3.1 小程序调用能力
需要在 1.1注册能力 的 api 名称前增加 "ampe",来调用到真正实现的能力(如上例中的 helloampe ):
3.2 小程序监听事件
小程序监听硬件设备发送的事件。
通用状态码
码值
说明
0
成功
1
本地调用异常
2
本地校验失败
1000
远程调用异常
1001
invoketoken 失效,需要激活
1002
调用者身份非法
1003
参数非法
1004
处理超时(30s)
激活
码值
错误信息
说明
凯发app官方网站的解决方案
2001
invalid_params
参数无效
需要确认调用参数是否和文档格式一致,参考:
2002
device_not_exist
设备不存在
需要在开放平台添加对应设备信息,可联系 ampe 开放平台对接人员。
2003
host_app_not_related
移动应用未关联设备产品
联系 ampe 开放平台对接人员。
2004
no_mini_app_binded
小程序未绑定
联系 ampe 开放平台对接人员。
2005
invoke_app_not_related
未关联调用应用
联系 ampe 开放平台对接人员。
2006
check_sign_fail
验签失败
需确认加签参数是否正确,参考:
2007
device_uniq_id_duplicate
设备的 uniqid 重复
同一设备使用了不同的 deviceid,需保证同一个设备唯一的 deviceid。
启动小程序
码值
错误信息
说明
凯发app官方网站的解决方案
2001
invalid_params
参数无效
需要确认调用参数是否和文档格式一致。
2011
ampe_mobile_app_not_exist
移动应用( hostappid )不存在
联系 ampe 开放平台对接人员。
2012
ampe_mobile_app_not_online
移动应用( hostappid )未上线
联系 ampe 开放平台对接人员。
2013
ampe_mini_app_not_binded
移动应用( hostappid )未绑定该小程序
联系 ampe 开放平台对接人员。
2014
mini_app_not_support_ampe
ampe 不支持该小程序
ampe 不支持该小程序,详询对接人员。
2015
ampe_exp_token_not_exist
token 不存在
需要重新激活处理。
内容没有解决您的问题?您还可以前往 或 寻求帮助
凯发k8官方网娱乐官方 copyright © 支付宝(杭州)信息技术有限公司  | icp证浙b2-20160559
该文档对你是否有帮助?
当前页面目录
网站地图