当前位置: 首页 > wzjs >正文

青海设计网站企业网站的推广形式有

青海设计网站,企业网站的推广形式有,做ps赚钱网站,河南建设工程信息网 高级职称 赵静飞 证书参考 uniapp 官网配置好 android 原生工程,在 HBuildX 中奖 uniapp 项目生产本地打包资源,将打包好的资源文件放在原生工程的 src->assets->apps 目录下。 新建一个类Testmodule 基层自 UniModule 类,建议使用的官网离线包,…

参考 uniapp 官网配置好 android 原生工程,在 HBuildX 中奖 uniapp 项目生产本地打包资源,将打包好的资源文件放在原生工程的 src->assets->apps 目录下。

在这里插入图片描述

新建一个类Testmodule 基层自 UniModule 类,建议使用的官网离线包,此类已经存在,此类相当于是 uniapp 和原生插件的桥梁。所有需要交互的人口,交互都可以写在这里。

uniapp 调用原生插件方法

public class TestModule extends UniModule {/*** 打开视频带看相机*/@UniJSMethod(uiThread = true)public void gotoVideoCamera() {if (mUniSDKInstance != null && mUniSDKInstance.getContext() instanceof Activity) {Intent intent = new Intent(mUniSDKInstance.getContext(), TakeVideoActivity.class);mUniSDKInstance.getContext().startActivity(intent);}}
}

@UniJSMethod 标识的方法表示支持 uniapp 调用,括号中的 uiThread 参数用来表示这个方法是运行在UI线程还是子线程中,一般有 UI 交互的运行在 UI 线程中,比如页面跳转, 存在耗时操作的,比如接口调用或者耗时操作可以标识为线程中。mUniSDKInstance是 UnModule 中的属性,可以用来获取上下文,上下文在 app 开发中还是比较重要的。

uniapp 调用原生方法回调返回值

使用UniJSCallback回调函数来将参数回调给 uniapp,UniJSCallback有两个方法,分别是invoke和invokeAndKeepAlive,

  • invoke调用javascript回调方法,此方法将在调用后被销毁。
  • invokeAndKeepAlive 调用javascript回调方法并保持回调活动以备以后使用。
   /*** 跳转到选择带看视频页面*/@UniJSMethod(uiThread = true)public void gotoSelectVideo(String cookie, UniJSCallback callback) {if (mUniSDKInstance != null && mUniSDKInstance.getContext() instanceof Activity) {videoCallback = callback;SPUtils.getInstance().put("Cookie", cookie);Intent intent = new Intent(mUniSDKInstance.getContext(), VideosActivity.class);intent.putExtra("isSelect", true);((Activity) mUniSDKInstance.getContext()).startActivityForResult(intent, REQUEST_VIDEO);}}@Overridepublic void onActivityResult(int requestCode, int resultCode, Intent data) {if (requestCode == REQUEST_VIDEO) {//视频带看相册回调数据,返回包含视频id和视频链接的数据实体String videoJson = data.getStringExtra("videoBean");if (videoCallback != null) {videoCallback.invoke(videoJson);}} }

如果需要从 uniapp 跳转到原生插件的某个页面,并且返回 uniapp 的时候带上参数传递给 uniapp,可以和和 android 中页面传递参数一样,使用startActivityForResult,并在 onActivityResult 中接收要传递的参数,调用UniJSCallback回调函数将数据传递给 uniapp。

还有一种情况就是,如果从 uniapp 跳转到原生插件某个页面后,点击原生页面的某个按钮就需要将数据传递给 uniapp 中,这个时候,可以在原生类中定义一个静态方法,当点击原生按钮时,调用这个静态方法,在该方法中,回调参数给 uniapp 。

  /*** 原生调用此方法跳转到uniApp详情页面** @param propertyCode 房源id*/public static void jumpToHouseDetails(String propertyCode) {if (mapFindHouseBack != null) {mapFindHouseBack.invokeAndKeepAlive(propertyCode);ActivityUtils.getTopActivity().moveTaskToBack(true);}}

由于需求是点击原生页面按钮后,启动 uniapp 的某个页面,但是不关闭原生页面,当从 uniapp 返回时,再次回到原生的这个页面中,所以这里调用moveTaskToBack方法可以将 acitivty task 移动到后台,启动 uniapp 的页面,当从 uniapp 返回时,再启动原生页面,就可以把此页面移动到前台对用户可见。

/*** 返回到地图找房页面,*/backMapFindHouse() {switch (uni.getSystemInfoSync().platform) {case "android":const lib = uni.requireNativePlugin("TestModule")//返回到地图找房页面,调用原生backMapFindHouse方法lib.backMapFindHouse()break;}}
   /***  uniapp房源详情页返回原生地图找房页面*/@UniJSMethod(uiThread = true)public void backMapFindHouse() {if (mUniSDKInstance != null && mUniSDKInstance.getContext() instanceof Activity) {startMapFindHouseActivity();}}

以上就是简单记录下 uniapp 和原生插件交互的参数传递和参数回调方法。主要是通过UniJSCallback回调函数来实现参数的回调。uniapp 传递参数直接在原生方法中定义即可。

http://www.dtcms.com/wzjs/152565.html

相关文章:

  • 企业做网站的好处百度平台营销宝典
  • 模板网站可以做webapp网站技术制作
  • 上海营销平台网站建设今日新闻大事件
  • 做远程培训网站用什么系统有利于seo优化的是
  • 重庆疫情最新通告如何推广seo
  • 网站首页图片制作互联网销售平台
  • wordpress文章自定义类型分页网站怎样关键词排名优化
  • 苏州城乡建设网站查询系统网站的收录情况怎么查
  • 济南做网站建设的公司电话免费推广引流平台有哪些
  • 云企网站河南网站网络营销推广
  • 东莞响应式网站制作如何创建自己的小程序
  • 个人网站可以做商城吗企业网站制作开发
  • 大连服装网站建设新冠咳嗽怎么办
  • 免费网站ppt模板下载黑帽seo是作弊手法
  • wordpress怎么做两个语言网站今日nba比赛直播
  • 网站建设与网络营销百度品牌
  • 汽车金融网站怎么做百度统计平台
  • b2b网站黄页廊坊网站seo
  • 做公司网站都需要什么资料网站推广公司黄页
  • 做美容一般在哪个网站团购比较好百度指数的功能
  • wordpress的google字体山东seo优化
  • oa管理系统免费版青岛seo关键字排名
  • 网页与网站设计 什么是属性站长工具seo推广秒收录
  • 海口建设网站的公司广告策划书
  • 想做淘宝 网站怎么做二级域名查询入口
  • 成都网站制作028net山东济南seo整站优化费用
  • 找手工活带回家做的找工作哪个网站最靠谱河南网站建设哪个公司做得好
  • 网站搭建素材营销咨询服务
  • go语言 网站开发360安全网址
  • 整站优化排名最近三天的新闻大事摘抄