原生Android调用uniapp项目中的方法

最近遇到了这样一个需求,和安卓对接,暴露一个方法给安卓调用,我这边是使用的uniapp+vue3开发的项目,可以打包成小程序、app,运行在浏览器,H5页面等。大概的思路是:在main.js中封装一个全局的方法。下面是在uniapp中实现的代码:

javascript 复制代码
// utils.js
export const test = (str) => {
	uni.showToast({
		title: str,
		icon: 'none'
	})
}
// main.js
// 全局注册
import App from './App.vue'
import {createSSRApp} from 'vue'
import * as util from 'utils.js'
export function createApp() {
	const app = createSSRApp(App)
	app.config.globalProperties.$util = util
	return {
		app
	}
}

// 暴露方法供调用
// index.vue
import {onMounted,getCurrentInstance} from 'vue'
const {proxy} = getCurrentInstance();
onMounted(() => {
	window.test = proxy.$util.test;
})

这样的话test方法就可以暴露给安卓调用了,欢迎有更好想法的评论区留言交流哦

相关推荐
杨荧33 分钟前
基于Python的电影评论数据分析系统 Python+Django+Vue.js
大数据·前端·vue.js·python
大聪明了1 小时前
uniapp vue3 使用 pinia
javascript·vue.js·uni-app
nyf_unknown2 小时前
(vue)将文件夹打成tar包, Git Bash(推荐)具体使用
vue.js·git·bash
EF@蛐蛐堂2 小时前
【vue3】v-model 的 “新玩法“
前端·javascript·vue.js
两个月菜鸟2 小时前
vue+微信小程序 五角星
前端·vue.js·微信小程序
来来走走5 小时前
Flutter开发 网络请求
android·flutter
Warren988 小时前
Lua 脚本在 Redis 中的应用
java·前端·网络·vue.js·redis·junit·lua
独行soc11 小时前
2025年渗透测试面试题总结-18(题目+回答)
android·python·科技·面试·职场和发展·渗透测试
雨白12 小时前
登录和授权:Cookie与Authorization Header机制详解
android
有梦想的刺儿12 小时前
uniapp手机端video标签层级过高问题
uni-app