Skip to content

混合开发 - JssdkApi

介绍

这里介绍tmuiJssdk.js 的api方法

平台兼容

只能在uniapp-x中配合x-webview-u组件使用。

文件相关下载

所有文件在代码仓库tmuijssdk

使用

请务必下载jssdk.js并引入到你的网页中,需要在头引入。

html中js开发: 下载 tmuiJssdk.js引用到你的web页面中。 引入后你页面中会有一个全局的方法对象tmuiJssdk可以直接调用。

html
<html>
<head>
	<script src="tmuiJssdk1.0.0.js"></script>
</head>
<body></body>
</html>

vue ts 中开发:

ts
import "./libs/tmuiJssdk1.0.0.min.js"

如果你是使用tmui3.2 web vue组件开发,则不需要引入,内置了,导入组件即可开用。

引入后全局会有相关方法暴露出来 你只要执行相关方法接口即可,方法大部分与uniapp同名方法api参数相同的使用习惯。

ts
//退出应用
tmuiJssdk.exit()

TS类型配置

如果你是js,不需要配置下面的类型。

如果你是直接使用tmui3.2 web vue不需要配置,已经配置好,可以直接使用,在编辑器中已经有类型提示了。如果你是单独的ts开发环境需要自行配置如下:

创建一个interface.ts文件内容如下:

ts
// 此类型文件请在仓库中下载在demo中src/components/tmui-enhanced.d.ts
import type { TMUIJSSDKEnhanced } from "./tmui-enhanced.d.ts"
/*
 * Copyright (c) 2026. tmzdy by @https://tmui.design
 */
type TMUIAPPTHEME = {
		'--status-bar-height': number,
		'--window-bottom': number,
		'--window-top': number,
		'--window-height': number,
		'--window-width': number,
		'--screen-height': number,
		'--screen-width': number,
		'--screen-pixelRatio': number,
		'--tmui-primary': string,
		'--tmui-dark': 'dark' | 'light'
	}

declare global {
	interface Window {
		tmuiApp: {
			/** 清除缓存并强制刷新,对于需要更新页面内容时非常有用 */
			clearCache: () => string;
			/** 系统提示 */
			toast:(title:string)=>void;
			refresh:()=>void;
			navback:()=>void;
			forward:()=>void;
			postMessage:(msg:string)=>void;
		};
		tmuiAppTheme: TMUIAPPTHEME
	}
	
	/** UNIAPPX 宿主开放API接口 */
	var tmuiApp: {
		/** 清除缓存并强制刷新,对于需要更新页面内容时非常有用 */
		clearCache: () => string;
		/** 系统提示 */
		toast:(title:string)=>void;
		refresh:()=>void;
		navback:()=>void;
		forward:()=>void;
		postMessage:(msg:string)=>void;
	
	};
	/** TMUI JSSDK 可以直接调用UNIAPPX 相关API */
	var tmuiJssdk: TMUIJSSDKEnhanced;
	/** 宿主tmui4x套件的app主题js变量 */
	// @ts-ignore
	var tmuiAppTheme: TMUIAPPTHEME = {} ;
	
}
export { }

API目录

以下所有方法在ts/js中tmuiJssdk.方法API名称()调用

下面中的方法:callMethod 是双向通信方法,见栏目:WEB开发 教程

分类方法名称说明
生命周期相关pageLoad获取宿主应用加载的页面路径查看信息
beforeUnmounted宿主webview被卸载前触发
pageShow宿主页面被显示时触发
pageHide宿主页面被隐藏时触发
loadwebview加载完成后触发
页面导航相关switchTab跳转到tabBar页面,并关闭其他所有非tabBar页面
reLaunch关闭所有页面,打开到应用内的某个页面
navigateTo保留当前页面,跳转到应用内的某个页面
navigateBack关闭当前页面,返回上一页面或多级页面
redirectTo关闭当前页面,跳转到应用内的某个页面
界面交互相关showToast显示消息提示框
showLoading显示加载提示框
hideLoading隐藏加载提示框
showModal显示模态弹窗
exit退出应用
setPageStyle设置页面样式
getPageStyle获取当前页面样式
getPage获取当前页面信息
媒体相关chooseImage从本地相册选择图片或使用相机拍照
previewImage预览图片
saveImageToPhotosAlbum保存图片到系统相册
getImageInfo获取图片信息
compressImage压缩图片
chooseVideo拍摄视频或从手机相册中选视频
saveVideoToPhotosAlbum保存视频到系统相册
getVideoInfo获取视频信息
getClipboardData获得系统剪贴板的内容
setClipboardData设置系统剪贴板的内容
openUrl打开网址
compressVideo压缩视频
chooseMedia拍摄或从手机相册中选择图片或视频
chooseFile从本地选择文件
openDocument打开文档
数据缓存相关setStorage将数据存储在本地缓存中指定的key中
setStorageSync同步将数据存储在本地缓存中指定的key中
getStorage从本地缓存中异步获取指定key对应的内容
getStorageSync同步从本地缓存中获取指定key对应的内容
removeStorage从本地缓存中异步移除指定key
removeStorageSync同步从本地缓存中移除指定key
设备相关getAppBaseInfo获取应用基础信息
getSystemInfoSync同步获取系统信息
getDeviceInfo获取设备信息
getSystemInfo异步获取系统信息
getWindowInfo获取窗口信息
getWebviewInfo获取当前WebView信息
getAppAuthorizeSetting获取应用授权设置
getSystemSetting获取系统设置
openAppAuthorizeSetting调起客户端APP授权界面
installApk安装APK文件
scanCode扫描二维码
hideKeyboard隐藏软键盘
onKeyboardHeightChange监听键盘高度变化
offKeyboardHeightChange取消监听键盘高度变化
makePhoneCall拨打电话
getNetworkType获取网络类型
网络相关downloadFile下载文件
uploadFile上传文件
位置相关getLocation获取当前的地理位置
onLocationChange监听实时地理位置变化事件
offLocationChange取消监听实时地理位置变化
onLocationChangeError监听实时地理位置变化事件错误
offLocationChangeError取消监听实时地理位置变化事件错误
startLocationUpdate开启前台定位
stopLocationUpdate关闭前台定位
startLocationUpdateBackground开启后台定位
支付相关requestPayment发起支付
分享相关shareWithSystem调用系统分享
事件相关$emit触发自定义事件
$on监听自定义事件
$off移除监听事件
其他相关getUserAgent获取代理字符串
getConfig它会返回你在组件x-webvew-u上定义的属性数据webConfig
callMethodWEB开发教程 ;执行组件x-webvew-u上定义的方法callMethod并返回app中执行的结果,这里双向通信方法见栏目:web开发 具体使用教程

API详细介绍

以下所有方法在ts/js中tmuiJssdk.方法API名称()调用

生命周期相关

pageLoad

ts
tmuiJssdk.pageLoad(callback: (opts?: Record<string, any>) => void): void;
  • 描述:获取宿主应用加载的页面路径查看信息,和uniapp中的onLoad(opts)类似。不是webview加载完成,是宿主的页面onLoad
  • 参数
    • callback: 回调函数,接收页面参数opts

beforeUnmounted

ts
tmuiJssdk.beforeUnmounted(callback: Function): void;
  • 描述:宿主webview被卸载前触发,此时执行的逻辑不可以异步,否则会被直接销毁
  • 参数
    • callback: 回调函数

pageShow

ts
tmuiJssdk.pageShow(callback: Function): void;
  • 描述:宿主页面被显示时触发(可能会被反复触发,比如app被放到后台,再显示等)
  • 参数
    • callback: 回调函数

pageHide

ts
tmuiJssdk.pageHide(callback: Function): void;
  • 描述:宿主页面被隐藏时触发(可能会被反复触发,比如app被放到后台等)
  • 参数
    • callback: 回调函数

load

ts
tmuiJssdk.load(callback: Function): void;
  • 描述:webview加载完成后触发,指当前webview页面加载完所有资源后触发,类似window.onLoad但更精准
  • 参数
    • callback: 回调函数

页面导航相关

switchTab

ts
tmuiJssdk.switchTab(params: {
  url: string;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:跳转到tabBar页面,并关闭其他所有非tabBar页面
  • 参数
    • params: 导航参数对象
      • url: 目标页面路径
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

reLaunch

ts
tmuiJssdk.reLaunch(params: {
  url: string;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:关闭所有页面,打开到应用内的某个页面
  • 参数
    • params: 导航参数对象
      • url: 目标页面路径
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调
ts
tmuiJssdk.navigateTo(params: {
  url: string;
  animationType?: string;
  animationDuration?: number;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:保留当前页面,跳转到应用内的某个页面
  • 参数
    • params: 导航参数对象
      • url: 目标页面路径
      • animationType: 窗口显示的动画类型
      • animationDuration: 窗口显示动画的持续时间,单位ms
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调
ts
tmuiJssdk.navigateBack(params?: {
  delta?: number;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:关闭当前页面,返回上一页面或多级页面
  • 参数
    • params: 导航参数对象(可选)
      • delta: 返回的页面数,如果delta大于现有页面数,则返回到首页
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

redirectTo

ts
tmuiJssdk.redirectTo(params: {
  url: string;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:关闭当前页面,跳转到应用内的某个页面
  • 参数
    • params: 导航参数对象
      • url: 目标页面路径
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

界面交互相关

showToast

ts
tmuiJssdk.showToast(params: {
  title: string;
  icon?: 'success' | 'loading' | 'none' | 'error' | string;
  image?: string;
  duration?: number;
  mask?: boolean;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:显示消息提示框
  • 参数
    • params: 提示参数对象
      • title: 提示内容
      • icon: 图标,可选值为'success'|'loading'|'none'|'error'或其他自定义值
      • image: 自定义图标的本地路径
      • duration: 提示的持续时间,单位ms
      • mask: 是否显示透明蒙层,防止触摸穿透
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

showLoading

ts
tmuiJssdk.showLoading(params?: {
  title?: string;
  mask?: boolean;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:显示加载提示框
  • 参数
    • params: 加载参数对象(可选)
      • title: 提示内容
      • mask: 是否显示透明蒙层,防止触摸穿透
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

hideLoading

ts
tmuiJssdk.hideLoading(params?: {
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:隐藏加载提示框
  • 参数
    • params: 回调参数对象(可选)
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

showModal

ts
tmuiJssdk.showModal(params: {
  title?: string;
  content?: string;
  showCancel?: boolean;
  cancelText?: string;
  cancelColor?: string;
  confirmText?: string;
  confirmColor?: string;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:显示模态弹窗
  • 参数
    • params: 模态框参数对象
      • title: 标题
      • content: 内容
      • showCancel: 是否显示取消按钮
      • cancelText: 取消按钮文字
      • cancelColor: 取消按钮文字颜色
      • confirmText: 确定按钮文字
      • confirmColor: 确定按钮文字颜色
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

exit

ts
tmuiJssdk.exit(params?: {
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:退出应用
  • 参数
    • params: 退出参数对象(可选)
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

setPageStyle

ts
tmuiJssdk.setPageStyle(params: {
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:设置页面样式
  • 参数
    • params: 样式参数对象
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

getPageStyle

ts
tmuiJssdk.getPageStyle(params?: {
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:获取当前页面样式
  • 参数
    • params: 样式参数对象(可选)
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

getPage

ts
tmuiJssdk.getPage(params?: {
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:获取当前页面信息
  • 参数
    • params: 参数对象(可选)
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

媒体相关

chooseImage

ts
tmuiJssdk.chooseImage(params?: {
  count?: number;
  sizeType?: Array<'original' | 'compressed'>;
  sourceType?: Array<'album' | 'camera'>;
  crop?: {
    quality?: number;
    width?: number;
    height?: number;
    resize?: boolean;
  };
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:从本地相册选择图片或使用相机拍照
  • 参数
    • params: 选择图片参数对象(可选)
      • count: 最多可以选择的图片张数
      • sizeType: 所选图片的尺寸,可选值为'original'(原图)|'compressed'(压缩图)
      • sourceType: 选择图片的来源,可选值为'album'(相册)|'camera'(相机)
      • crop: 裁剪参数(部分平台支持)
        • quality: 图片质量
        • width: 裁剪宽度
        • height: 裁剪高度
        • resize: 是否调整大小
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

previewImage

ts
tmuiJssdk.previewImage(params: {
  urls: string[];
  current?: string | number;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:预览图片
  • 参数
    • params: 预览参数对象
      • urls: 需要预览的图片链接列表
      • current: 当前显示图片的链接或索引
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

saveImageToPhotosAlbum

ts
tmuiJssdk.saveImageToPhotosAlbum(params: {
  filePath: string;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:保存图片到系统相册
  • 参数
    • params: 图片路径参数对象
      • filePath: 图片文件路径
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

getImageInfo

ts
tmuiJssdk.getImageInfo(params: {
  src: string;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): Promise<any>;
  • 描述:获取图片信息,返回图片的宽高、类型等信息
  • 参数
    • params: 图片路径参数对象
      • src: 图片路径
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调
  • 返回值:Promise对象,解析为图片信息

compressImage

ts
tmuiJssdk.compressImage(params: {
  src: string;
  quality?: number;
  rotate?: number;
  compressedWidth?: number;
  compressedHeight?: number;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:压缩图片
  • 参数
    • params: 压缩参数对象
      • src: 图片路径
      • quality: 压缩质量,0-1之间
      • rotate: 旋转角度
      • compressedWidth: 压缩后图片的宽度
      • compressedHeight: 压缩后图片的高度
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

chooseVideo

ts
tmuiJssdk.chooseVideo(params?: {
  pageOrientation?: "auto" | "portrait" | "landscape";
  sourceType?: Array<'album' | 'camera'>;
  compressed?: boolean;
  maxDuration?: number;
  camera?: 'front' | 'back';
  extension?: string[];
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:拍摄视频或从手机相册中选视频
  • 参数
    • params: 选择视频参数对象(可选)
      • pageOrientation: 视频拍摄方向,可选值为'auto'(自动)|'portrait'(竖屏)|'landscape'(横屏)
      • sourceType: 视频选择来源,可选值为'album'(相册)|'camera'(相机)
      • compressed: 是否压缩视频
      • maxDuration: 视频最大时长,单位秒
      • camera: 摄像头类型,可选值为'front'(前置)|'back'(后置)
      • extension: 视频文件扩展名
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

saveVideoToPhotosAlbum

ts
tmuiJssdk.saveVideoToPhotosAlbum(params: {
  filePath: string;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:保存视频到系统相册
  • 参数
    • params: 视频路径参数对象
      • filePath: 视频文件路径
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

getVideoInfo

ts
tmuiJssdk.getVideoInfo(params: {
  src: string;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): Promise<any>;
  • 描述:获取视频信息,返回视频的时长、尺寸等信息
  • 参数
    • params: 视频路径参数对象
      • src: 视频路径
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调
  • 返回值:Promise对象,解析为视频信息

getClipboardData

ts
tmuiJssdk.getClipboardData(params?: {
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:获得系统剪贴板的内容
  • 参数
    • params: 参数对象(可选)
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

setClipboardData

ts
tmuiJssdk.setClipboardData(params: {
  data: string;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:设置系统剪贴板的内容
  • 参数
    • params: 参数对象
      • data: 要设置的内容
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

openUrl

ts
tmuiJssdk.openUrl(params: {
  url: string;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:打开网址
  • 参数
    • params: 参数对象,必须包含url字段
      • url: 要打开的网址
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

compressVideo

ts
tmuiJssdk.compressVideo(params: {
  src: string;
  quality?: 'low' | 'medium' | 'high' | number | string;
  bitrate?: number;
  fps?: number;
  resolution?: number;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:压缩视频
  • 参数
    • params: 压缩参数对象
      • src: 视频路径
      • quality: 压缩质量,可选值为'low'(低)|'medium'(中)|'high'(高)或数字
      • bitrate: 视频比特率
      • fps: 视频帧率
      • resolution: 分辨率,取值0-1之间
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

chooseMedia

ts
tmuiJssdk.chooseMedia(params?: {
  count?: number;
  pageOrientation?: "auto" | "portrait" | "landscape";
  mediaType?: Array<'image' | 'video' | 'mix'>;
  sourceType?: Array<'album' | 'camera'>;
  maxDuration?: number;
  sizeType?: Array<'original' | 'compressed'>;
  camera?: 'front' | 'back';
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:拍摄或从手机相册中选择图片或视频
  • 参数
    • params: 选择媒体参数对象(可选)
      • count: 最多可以选择的文件个数
      • pageOrientation: 拍摄方向,可选值为'auto'(自动)|'portrait'(竖屏)|'landscape'(横屏)
      • mediaType: 媒体类型,可选值为'image'(图片)|'video'(视频)|'mix'(混合)
      • sourceType: 媒体来源,可选值为'album'(相册)|'camera'(相机)
      • maxDuration: 视频最大时长,单位秒
      • sizeType: 图片尺寸,可选值为'original'(原图)|'compressed'(压缩图)
      • camera: 摄像头类型,可选值为'front'(前置)|'back'(后置)
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

chooseFile

ts
tmuiJssdk.chooseFile(params?: {
  count?: number;
  type?: 'all' | 'image' | 'video' | 'audio' | 'file';
  sizeType?: Array<'original' | 'compressed'>;
  extension?: string[];
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:从本地选择文件
  • 参数
    • params: 选择文件参数对象(可选)
      • count: 最多可以选择的文件个数
      • type: 选择文件类型,可选值为'all'(所有)|'image'(图片)|'video'(视频)|'audio'(音频)|'file'(文件)
      • sizeType: 文件尺寸,可选值为'original'(原图)|'compressed'(压缩图)
      • extension: 扩展名过滤
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

openDocument

ts
tmuiJssdk.openDocument(params: {
  filePath: string;
  fileType?: string;
  showMenu?: boolean;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:打开文档
  • 参数
    • params: 文档路径参数对象
      • filePath: 文档文件路径
      • fileType: 文件类型
      • showMenu: 是否显示菜单
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

数据缓存相关

setStorage

ts
tmuiJssdk.setStorage(params: {
  key: string;
  data: any;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:将数据存储在本地缓存中指定的key中
  • 参数
    • params: 存储参数对象
      • key: 本地缓存中的指定的key
      • data: 需要存储的内容
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

setStorageSync

ts
tmuiJssdk.setStorageSync(key: string, value: any): void;
  • 描述:同步将数据存储在本地缓存中指定的key中
  • 参数
    • key: 本地缓存中的指定的key
    • value: 需要存储的内容

getStorage

ts
tmuiJssdk.getStorage(params: {
  key: string;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:从本地缓存中异步获取指定key对应的内容
  • 参数
    • params: 获取参数对象
      • key: 本地缓存中的指定的key
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

getStorageSync

ts
tmuiJssdk.getStorageSync(key: string): Promise<any>;
  • 描述:同步从本地缓存中获取指定key对应的内容
  • 参数
    • key: 本地缓存中的指定的key
  • 返回值:Promise对象,解析为对应键名的数据

removeStorage

ts
tmuiJssdk.removeStorage(params: {
  key: string;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:从本地缓存中异步移除指定key
  • 参数
    • params: 移除参数对象
      • key: 本地缓存中的指定的key
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

removeStorageSync

ts
tmuiJssdk.removeStorageSync(key: string): Promise<void>;
  • 描述:同步从本地缓存中移除指定key
  • 参数
    • key: 本地缓存中的指定的key
  • 返回值:Promise对象

设备相关

getAppBaseInfo

ts
tmuiJssdk.getAppBaseInfo(params?: {
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): Promise<any>;
  • 描述:获取应用基础信息
  • 参数
    • params: 回调参数对象(可选)
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调
  • 返回值:Promise对象,解析为应用的基础信息

getSystemInfoSync

ts
tmuiJssdk.getSystemInfoSync(params?: {
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): Promise<any>;
  • 描述:同步获取系统信息
  • 参数
    • params: 回调参数对象(可选)
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调
  • 返回值:Promise对象,解析为系统的详细信息

getDeviceInfo

ts
tmuiJssdk.getDeviceInfo(params?: {
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): Promise<any>;
  • 描述:获取设备信息
  • 参数
    • params: 回调参数对象(可选)
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调
  • 返回值:Promise对象,解析为设备信息

getSystemInfo

ts
tmuiJssdk.getSystemInfo(params?: {
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): Promise<any>;
  • 描述:异步获取系统信息
  • 参数
    • params: 回调参数对象(可选)
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调
  • 返回值:Promise对象,解析为系统的详细信息

getWindowInfo

ts
tmuiJssdk.getWindowInfo(params?: {
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): Promise<any>;
  • 描述:获取窗口信息
  • 参数
    • params: 回调参数对象(可选)
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调
  • 返回值:Promise对象,解析为窗口的尺寸、位置等信息

getWebviewInfo

ts
tmuiJssdk.getWebviewInfo(params?: {
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): Promise<any>;
  • 描述:获取当前WebView信息
  • 参数
    • params: 回调参数对象(可选)
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调
  • 返回值:Promise对象,解析为WebView的相关信息

getAppAuthorizeSetting

ts
tmuiJssdk.getAppAuthorizeSetting(): Promise<any>;
  • 描述:获取应用授权设置
  • 返回值:Promise对象,解析为应用的各项授权状态

getSystemSetting

ts
tmuiJssdk.getSystemSetting(): Promise<any>;
  • 描述:获取系统设置
  • 返回值:Promise对象,解析为系统的各项设置信息

openAppAuthorizeSetting

ts
tmuiJssdk.openAppAuthorizeSetting(): Promise<any>;
  • 描述:调起客户端APP授权界面
  • 返回值:Promise对象

installApk

ts
tmuiJssdk.installApk(params: {
  filePath: string;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:安装APK文件
  • 参数
    • params: APK文件路径参数对象
      • filePath: APK文件路径
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

scanCode

ts
tmuiJssdk.scanCode(params: {
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:扫描二维码
  • 参数
    • params: 参数对象
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

hideKeyboard

ts
tmuiJssdk.hideKeyboard(): Promise<any>;
  • 描述:隐藏软键盘
  • 返回值:Promise对象

onKeyboardHeightChange

ts
tmuiJssdk.onKeyboardHeightChange(callback: (res: { height: number; duration?: number }) => void): Promise<any>;
  • 描述:监听键盘高度变化
  • 参数
    • callback: 回调函数,接收键盘高度信息
      • res.height: 键盘高度
      • res.duration: 动画持续时间
  • 返回值:Promise对象

offKeyboardHeightChange

ts
tmuiJssdk.offKeyboardHeightChange(callback?: (res: { height: number; duration?: number }) => void): Promise<any>;
  • 描述:取消监听键盘高度变化
  • 参数
    • callback: 回调函数(可选)
  • 返回值:Promise对象

makePhoneCall

ts
tmuiJssdk.makePhoneCall(params: {
  phoneNumber: string;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:拨打电话
  • 参数
    • params: 电话号码参数对象
      • phoneNumber: 电话号码
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

getNetworkType

ts
tmuiJssdk.getNetworkType(params?: {
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): Promise<any>;
  • 描述:获取网络类型
  • 参数
    • params: 回调参数对象(可选)
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调
  • 返回值:Promise对象,解析为网络类型信息

网络相关

downloadFile

ts
tmuiJssdk.downloadFile(params: {
  url: string;
  header?: Record<string, string>;
  timeout?: number;
  filePath?: string;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:下载文件
  • 参数
    • params: 下载参数对象
      • url: 下载地址
      • header: 请求头
      • timeout: 超时时间,单位ms
      • filePath: 指定文件下载后存储的路径(部分平台支持)
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

uploadFile

ts
tmuiJssdk.uploadFile(params: {
  url: string;
  filePath: string;
  name: string;
  header?: Record<string, string>;
  formData?: Record<string, any>;
  timeout?: number;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:上传文件
  • 参数
    • params: 上传参数对象
      • url: 上传地址
      • filePath: 文件路径
      • name: 文件对应的key,开发者在服务器端通过这个key可以获取文件二进制内容
      • header: 请求头
      • formData: HTTP请求中其他额外的form data
      • timeout: 超时时间,单位ms
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

位置相关

getLocation

ts
tmuiJssdk.getLocation(params?: {
  type?: 'wgs84' | 'gcj02' | string;
  altitude?: boolean;
  isHighAccuracy?: boolean;
  highAccuracyExpireTime?: number;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:获取当前的地理位置
  • 参数
    • params: 定位参数对象(可选)
      • type: 坐标类型,可选值为'wgs84'(GPS坐标)|'gcj02'(国测局加密坐标)
      • altitude: 是否需要高度信息
      • isHighAccuracy: 是否使用高精度定位
      • highAccuracyExpireTime: 高精度定位超时时间,单位ms
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

onLocationChange

ts
tmuiJssdk.onLocationChange(callback: (res: any) => void): Promise<any>;
  • 描述:监听实时地理位置变化事件
  • 参数
    • callback: 回调函数,接收位置信息res
  • 返回值:Promise对象

offLocationChange

ts
tmuiJssdk.offLocationChange(callback?: (res: any) => void): Promise<any>;
  • 描述:取消监听实时地理位置变化
  • 参数
    • callback: 回调函数(可选)
  • 返回值:Promise对象

onLocationChangeError

ts
tmuiJssdk.onLocationChangeError(callback: (res: any) => void): Promise<any>;
  • 描述:监听实时地理位置变化事件错误
  • 参数
    • callback: 回调函数,接收错误信息res
  • 返回值:Promise对象

offLocationChangeError

ts
tmuiJssdk.offLocationChangeError(callback?: (res: any) => void): Promise<any>;
  • 描述:取消监听实时地理位置变化事件错误
  • 参数
    • callback: 回调函数(可选)
  • 返回值:Promise对象

startLocationUpdate

ts
tmuiJssdk.startLocationUpdate(params?: {
  type?: 'gcj02' | 'wgs84' | string;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:开启前台定位
  • 参数
    • params: 回调参数对象(可选)
      • type: 坐标类型,可选值为'gcj02'(国测局加密坐标)|'wgs84'(GPS坐标)
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

stopLocationUpdate

ts
tmuiJssdk.stopLocationUpdate(params?: {
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:关闭前台定位
  • 参数
    • params: 回调参数对象(可选)
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

startLocationUpdateBackground

ts
tmuiJssdk.startLocationUpdateBackground(params?: {
  type?: 'gcj02' | 'wgs84' | string;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:开启后台定位
  • 参数
    • params: 回调参数对象(可选)
      • type: 坐标类型,可选值为'gcj02'(国测局加密坐标)|'wgs84'(GPS坐标)
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

支付相关

requestPayment

ts
tmuiJssdk.requestPayment(params: {
  provider?: string;
  orderInfo?: string;
  timeStamp?: string;
  nonceStr?: string;
  package?: string;
  signType?: string;
  paySign?: string;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:发起支付
  • 参数
    • params: 支付参数对象
      • provider: 支付提供商
      • orderInfo: 支付签名/订单信息(不同provider字段不同)
      • timeStamp: 时间戳
      • nonceStr: 随机字符串
      • package: 订单包
      • signType: 签名类型
      • paySign: 支付签名
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

分享相关

shareWithSystem

ts
tmuiJssdk.shareWithSystem(params: {
  type?: 'text' | 'image' | 'video' | 'file' | string;
  summary?: string;
  href?: string;
  imageUrl?: string;
  filePath?: string;
  success?: (...args: any[]) => any;
  fail?: (...args: any[]) => any;
  complete?: (...args: any[]) => any;
  [key: string]: any;
}): void;
  • 描述:调用系统分享
  • 参数
    • params: 分享参数对象
      • type: 分享类型,宿主不同可能支持值不同,可选值为'text'(文本)|'image'(图片)|'video'(视频)|'file'(文件)
      • summary: 分享标题/摘要
      • href: 链接地址
      • imageUrl: 图片地址(如分享图片)
      • filePath: 文件路径(如分享文件)
      • success: 成功回调
      • fail: 失败回调
      • complete: 完成回调

事件相关

$emit

ts
tmuiJssdk.$emit(eventName: string, data?: Record<string, any>): Promise<void>;
  • 描述:触发自定义事件(用于宿主与web之间的事件总线同官方的uni.$emit)
  • 参数
    • eventName: 事件名称
    • data: 事件数据(可选)
  • 返回值:Promise对象

$on

ts
tmuiJssdk.$on(eventName: string, callBack: (data?: Record<string, any>) => void): Promise<any>;
  • 描述:监听自定义事件(用于宿主与web之间的事件总线同官方的uni.$on)
  • 注意:必须在$on返回的参数上调用$off移除监听事件,否则会导致内存泄漏
  • 参数
    • eventName: 事件名称
    • callBack: 事件回调函数,接收事件数据data
  • 返回值:Promise对象

$off

ts
tmuiJssdk.$off(params: any): Promise<void>;
  • 描述:移除监听事件
  • 参数
    • params: 必须是$on返回的参数
  • 返回值:Promise对象

其他相关

getUserAgent

ts
tmuiJssdk.getUserAgent(): Promise<string>;
  • 描述:获取代理字符串
  • 返回值:Promise对象,解析为代理字符串

getConfig

ts
tmuiJssdk.getConfig(): Promise<Record<string, any>>;
  • 描述:返回你在组件x-webvew-u上定义的属性数据webConfig
  • 返回值:Promise对象

callMethod

ts
tmuiJssdk.callMethod(): Promise<any|null>;
  • 描述:执行你在组件x-webvew-u上定义的属性函数方法callMethod
  • 返回值:Promise对象
最近更新