本文档为您介绍 10.1.68 基线下关于 H5 容器和离线包的 Android SDK 的接口详情。
公共函数
H5TitleView
getTitle
- 声明
String getTitle();
- 说明
获取主标题文本。
- 参数
无
- 返回值
String,主标题。
setTitle
- 声明
void setTitle(String title);
- 说明
设置主标题文本。
- 参数
参数 |
类型 |
说明 |
title |
String |
标题文本 |
setSubTitle
- 声明
void setSubTitle(String subTitle);
- 说明
设置副标题。
- 参数
参数 |
类型 |
说明 |
subTitle |
String |
副标题文本 |
setImgTitle
- 声明
void setImgTitle(Bitmap imgTitle);
- 说明
设置图像图标。
- 参数
参数 |
类型 |
说明 |
imgTitle |
Bitmap |
图像信息 |
setImgTitle
- 声明
void setImgTitle(Bitmap imgTitle,String contentDescription);
- 说明
设置图像图标和 contentDescription。
- 参数
参数 |
类型 |
说明 |
imgTitle |
Bitmap |
图像信息 |
contentDescription |
String |
contentDescription 的内容 |
- 声明
void showCloseButton(boolean visible);
- 说明
是否显示关闭按钮。
- 参数
参数 |
类型 |
说明 |
visible |
boolean |
true,显示关闭按钮; false,不显示关闭按钮。 |
getContentView
- 声明
View getContentView();
- 说明
容器获取标题栏 View。
- 参数
无
- 返回值
View,标题栏 View。
getContentBgView
- 声明
ColorDrawable getContentBgView();
- 说明
容器获取标题栏背景。
- 参数
无
- 返回值
ColorDrawable,标题栏背景。
getMainTitleView
- 声明
TextView getMainTitleView();
- 说明
容器获取主标题 View。
- 参数
无
- 返回值
TextView,主标题 View。
getSubTitleView
- 声明
TextView getSubTitleView();
- 说明
容器获取副标题 View。
- 参数
无
- 返回值
TextView,副标题 View。
- 声明
void showBackButton(boolean visible);
- 说明
设置是否展示返回按钮。
- 参数
参数 |
类型 |
说明 |
visible |
boolean |
true,显示返回按钮; false,不显示返回按钮。 |
showBackHome
- 声明
void showBackHome(boolean visible);
- 说明
设置首页按钮可见性。
- 参数
参数 |
类型 |
说明 |
visible |
boolean |
true,显示返回按钮; false,不显示返回按钮。 |
- 声明
void showOptionMenu(boolean visible);
- 说明
设置是否显示右上角菜单项。
- 参数
参数 |
类型 |
说明 |
visible |
boolean |
true,显示菜单; false,不显示菜单。 |
setOptionType
- 声明
void setOptionType(H5Param.OptionType type);
- 说明
设置右上角菜单项展示类型。
- 参数
参数 |
类型 |
说明 |
type |
H5Param.OptionType |
菜单展示类型 |
setOptionType
- 声明
void setOptionType(H5Param.OptionType type, int num, boolean byIndex);
- 说明
设置右上角菜单项展示类型。
- 参数
参数 |
类型 |
说明 |
type |
H5Param.OptionType |
菜单展示类型 |
num |
int |
从右往左第几个 icon,从 0 开始。 |
byIndex |
boolean |
是否只对某个菜单项设置展示类型 |
showTitleLoading
- 声明
void showTitleLoading(boolean visible);
- 说明
设置是否在标题栏上显示加载状态,可自行选择实现方式。
- 参数
参数 |
类型 |
说明 |
visible |
boolean |
是否在标题栏上显示加载状态 |
setBtIcon
- 声明
void setBtIcon(Bitmap btIcon, int index);
- 说明
设置右上角按钮图标。
- 参数
参数 |
类型 |
说明 |
btIcon |
Bitmap |
图标 |
index |
int |
从右往左第几个 icon,从 0 开始。 |
setH5Page
- 声明
void setH5Page(H5Page h5Page);
- 说明
设置容器的 H5 页面。
- 参数
参数 |
类型 |
说明 |
h5Page |
H5Page |
H5 页面 |
- 声明
void setOptionMenu(JSONObject params);
- 说明
根据 JS 传递过来的参数设置右上角菜单。
- 参数
参数 |
类型 |
说明 |
params |
JSONObject |
JS 参数 |
getDivider
- 声明
View getDivider();
- 说明
容器获取返回按钮和标题内容之间的分割线,可返回空。
- 参数
无
- 返回值
View,分割线 View。
getHdividerInTitle
- 声明
View getHdividerInTitle();
- 说明
容器获取标题栏和 Web 页面间的分割线,不可为空。
- 参数
无
- 返回值
View,分割线 View。
getPopAnchor
- 声明
View getPopAnchor();
- 说明
容器获取下拉菜单弹出位置的锚点 View。
- 参数
无
- 返回值
View,下拉菜单弹出位置的锚点 View。
resetTitleColor
- 声明
void resetTitleColor(int color);
- 说明
容器重置标题栏背景色。
- 参数
releaseViewList
- 声明
void releaseViewList();
- 说明
释放被引用的 View,容器页面销毁时触发此方法。
- 参数
无
- 返回值
无
openTranslucentStatusBarSupport
- 声明
void openTranslucentStatusBarSupport(int color);
- 说明
容器设置沉浸式标题栏颜色。
- 参数
setTitleTxtColor
- 声明
void setTitleTxtColor(int color);
- 说明
设置标题栏字体颜色。
- 参数
- 声明
View getOptionMenuContainer();
- 说明
容器获取右上角菜单 View, 必须是 ViewGroup 及子类。
- 参数
无
- 返回值
View,右上角菜单 View。
- 声明
View getOptionMenuContainer(int index);
- 说明
容器根据位置获取右上角菜单 View,必须是 ViewGroup 及子类。
- 参数
参数 |
类型 |
说明 |
index |
int |
从右向左 icon 的位置,从 0 开始。 |
setBackgroundAlphaValue
- 声明
void setBackgroundAlphaValue(int alpha);
- 说明
设置背景透明度。
- 参数
setBackgroundColor
- 声明
void setBackgroundColor(int color);
- 说明
设置背景色。
- 参数:
H5AppCenterPresetProvider
getCommonResourceAppList
- 声明
Set<String> getCommonResourceAppList();
- 说明
获取全局资源包。
- 参数
无
- 返回值
Set<String>
,全局资源包集合。
getH5PresetPkg
- 声明
H5PresetPkg getH5PresetPkg();
- 说明
获取预置资源包。
- 参数
无
- 返回值
H5PresetPkg,H5 预置资源包。
getTinyCommonApp
- 声明
String getTinyCommonApp();
- 说明
获取 tinyApp 的公告资源包的 appId。
- 参数
无
- 返回值
String,tinyApp 的公告资源包的 appId。
H5Plugin
onPrepare
- 声明
void onPrepare(H5EventFilter filter);
- 说明
预准备阶段注册 H5 插件过滤器。
- 参数
参数 |
类型 |
说明 |
filter |
H5EventFilter |
H5 插件过滤器 |
interceptEvent
- 声明
boolean interceptEvent(final H5Event event, final H5BridgeContext context);
- 说明
拦截事件。
- 参数
参数 |
类型 |
说明 |
event |
H5Event |
H5 事件 |
context |
H5BridgeContext |
上下文 |
- 返回值
boolean,若成功返回 true,否则返回 false。
handleEvent
- 声明
boolean handleEvent(final H5Event event, final H5BridgeContext context);
- 说明
是否处理事件。
- 参数
参数 |
类型 |
说明 |
event |
H5Event |
可处理的只读事件 |
context |
H5BridgeContext |
用于处理一些 JSAPI 相关事件的桥接上下文。 |
- 返回值
boolean,true 表示插件已经处理了它,否则返回 false。
MPNebula
downloadApp
- 声明
public static void downloadApp(final String appId, final MpaasNebulaDownloadCallback mpaasNebulaDownloadCallback)
- 说明
下载离线包。
- 参数
参数 |
类型 |
说明 |
appId |
String |
离线包 id |
mpaasNebulaDownloadCallback |
MpaasNebulaDownloadCallback |
下载回调 |
installApp
- 声明
public static void installApp(final String appId, final MpaasNebulaInstallCallback mpaasNebulaInstallCallback)
- 说明
安装离线包。
- 参数
参数 |
类型 |
说明 |
appId |
String |
离线包 id |
mpaasNebulaInstallCallback |
MpaasNebulaInstallCallback |
安装回调 |
loadOfflineNebula
- 声明
public static void loadOfflineNebula(String jsonFileName, MPNebulaOfflineInfo… mpNebulaOfflineInfos)
- 说明
加载预置离线包。
- 参数
参数 |
类型 |
说明 |
jsonFileName |
String |
预置离线包 json,可从控制台下载。 |
mpNebulaOfflineInfos |
MPNebulaOfflineInfo |
预置离线包信息。 |
registerH5Plugin
- 声明
public static void registerH5Plugin(String className, String bundleName, String scope, String[] events)
- 说明
注册自定义 H5 插件(JSAPI)。
- 参数
参数 |
类型 |
说明 |
className |
String |
插件类名,需要全路径(package + class)。 |
bundleName |
String |
bundle 名(bundle 名可在主 module/build/intermediates/bundle/META-INF/BUNDLE.MF 中查看)。 |
scope |
String |
范围,通常为 “page”。 |
bundleName |
String[] |
注册的事件。 |
enableAppVerification
- 声明
public static void enableAppVerification(final String publicKey)
- 说明
开启离线包验签。必须在首次打开离线包之前开启离线包验签,否则无法正确设置公钥。
- 参数
参数 |
类型 |
说明 |
publicKey |
String |
验签公钥 |
setCustomViewProvider
- 声明
public static void setCustomViewProvider(H5ViewProvider viewProvider)
- 说明
设置容器相关的自定义 view,如标题栏、菜单栏、web layout、下拉刷新 view 等。
- 参数
参数 |
类型 |
说明 |
viewProvider |
H5ViewProvider |
自定义 view provider |
getH5View
- 声明
public static View getH5View(Activity activity, Bundle param)
- 说明
获取 H5 容器的视图(view)。
- 参数
参数 |
类型 |
说明 |
activity |
Activity |
页面上下文 |
param |
Bundle |
启动参数,内部可包含 appid 或是 url。 |
getH5ViewAsync
- 声明
public static void getH5ViewAsync(Activity activity, Bundle param, H5PageReadyListener h5PageReadyListener)
- 说明
异步获取 H5 容器的视图(view)。
- 参数
参数 |
类型 |
说明 |
activity |
Activity |
页面上下文 |
param |
Bundle |
启动参数,内部可包含 appid 或是 url。 |
h5PageReadyListener |
H5PageReadyListener |
异步回调 |
AbsTitleView
resetTitle
- 声明
public abstract void resetTitle();
- 说明
重置导航栏。
- 参数
无
- 返回值
无
H5ViewProvider
全屏 H5 自定义 View 切点
createTitleView
- 声明
H5TitleView createTitleView(Context context);
- 说明
创建自定义标题栏的标题。
- 参数
参数 |
类型 |
说明 |
context |
Context |
上下文 |
- 返回值
H5TitleView,自定义标题栏的标题。
- 声明
public H5NavMenuView createNavMenu()
- 说明
创建自定义导航菜单。
- 参数
无
- 返回值
H5NavMenuView,自定义的导航菜单。
- 声明
H5PullHeaderView createPullHeaderView(Context context, ViewGroup viewGroup);
- 说明
创建自定义下拉刷新的头部样式。
- 参数
参数 |
类型 |
说明 |
context |
Context |
上下文 |
viewGroup |
ViewGroup |
ViewGroup 控件 |
- 返回值
H5PullHeaderView,自定义下拉刷新的头部。
createWebContentView
- 声明
H5WebContentView createWebContentView(Context context);
- 说明
创建 WebView 的承载布局。
- 参数
参数 |
类型 |
说明 |
context |
Context |
上下文 |
- 返回值
H5WebContentView,自定义 WebView 的承载布局。
getView
View getView();
无
setH5Page
void setH5Page(H5Page h5Page);
参数 |
类型 |
说明 |
h5Page |
H5Page |
H5 页面 |
设置选项菜单的监听事件。
参数 |
类型 |
说明 |
listener |
View.OnClickListener |
View 的监听事件 |
无
void setCloseButtonOnClickListener(View.OnClickListener listener);
设置关闭按钮的监听事件。
参数 |
类型 |
说明 |
listener |
View.OnClickListener |
View 的监听事件 |
无
void setCloseButtonOnLongClickListener(View.OnLongClickListener listener);
参数 |
类型 |
说明 |
listener |
View.OnClickListener |
View 的监听事件 |
无
H5Utils
setProvider
void setProvider(String name, Object provider);
参数 |
类型 |
说明 |
name |
String |
Provider 的名称 |
provider |
Object |
Provider 对象 |
无
onTitleChange
void onTitleChange(H5TitleView title);
参数 |
类型 |
说明 |
title |
H5TitleView |
H5 标题栏 |
H5ReplaceResourceProvider
自定义资源动态加载切点
getReplaceResourcesBundleName
- 声明
String getReplaceResourcesBundleName();
- 说明
获取标题栏资源的 bundle 名称。
- 参数
无
- 返回值
String,标题栏资源的 bundle 名称。
H5ErrorPageView
自定义网络错误页接口
enableShowErrorPage
- 声明
boolean enableShowErrorPage(H5Page h5Page, APWebView view, String errorUrl, int statusCode, String errorMsg, String subErrorMsg, Bundle extInfo, Object extObj);
- 说明
是否展示自定义错误页。
- 参数
参数 |
类型 |
说明 |
h5Page |
H5Page |
Page 对象。 |
view |
APWebView |
WebView 对象。 |
errorUrl |
String |
错误地址。 |
statusCode |
int |
错误码。 |
errorMsg |
String |
错误描述。 |
subErrorMsg |
String |
错误描述 sub。 |
extInfo |
Bundle |
扩展信息。 |
extObj |
Object |
扩展类。 |
H5BridgeContext
H5 插件返回结果给 Jsapi 请求接口类
sendBridgeResult
- 声明
boolean sendBridgeResult(JSONObject data);
- 说明
给 js 层返回结果。返回一次事件就被消费掉,如需多次使用一个 BridgeContext 返回,则需调用 sendBridgeResultWithCallbackKept。
- 参数
参数 |
类型 |
说明 |
data |
JSONObject |
返回给 js 层的数据。 |
- 返回值
boolean,若成功返回 true,否则返回 false。
sendToWeb
- 声明
void sendToWeb(String action, JSONObject param, H5CallBack callback);
- 说明
给 js 层返回结果,支持添加回调参数。
- 参数
参数 |
类型 |
说明 |
action |
String |
传递数据时的 action。 |
param |
JSONObject |
需要传递给 js 层的数据。 |
callback |
H5CallBack |
– |
sendError
- 声明
boolean sendError(H5Event event, Error code);
- 说明
发送错误信息。
- 参数
参数 |
类型 |
说明 |
event |
H5Event |
H5 事件 |
code |
Error |
错误信息 |
- 返回值
boolean,true 表示传递成功,否则为 false。
sendSuccess
- 声明
void sendSuccess();
- 说明
用于无返回值的 H5 回调。
- 参数
无
- 返回值
无
sendError
- 声明
void sendError(int error, String errorMessage);
- 说明
自定义返回错误码和返回文案。
- 参数
参数 |
类型 |
说明 |
error |
int |
返回错误码。 |
errorMessage |
String |
返回文案。 |
回调函数
errorPageCallback
- 声明
void errorPageCallback(H5Page h5Page, APWebView view, String errorUrl, int statusCode, String errorMsg, String subErrorMsg, Bundle extInfo, Object extObj)
- 说明
错误页回调。
- 参数
参数 |
类型 |
说明 |
h5Page |
H5Page |
Page 对象。 |
view |
APWebView |
WebView 对象。 |
errorUrl |
String |
错误地址。 |
statusCode |
int |
错误码。 |
errorMsg |
String |
错误描述。 |
subErrorMsg |
String |
错误描述 sub。 |
extInfo |
Bundle |
扩展信息。 |
extObj |
Object |
扩展类。 |