用HBuilderX 打包 vue 项目 为 App 的步骤

摘要:
开始使用HBuiderX打包。这是我vue项目打包后的dist文件。设置沉浸状态栏:上图中添加位置的代码:"statusbar":{//应用可视区域到系统状态栏下透明显示效果"immersed":true},解决打包成App后,单击手机返回键退出应用的bug。

首先打包你的vue项目生成dist文件夹,教程请移步https://www.cnblogs.com/taohuaya/p/10256670.html

看完上面的教程,请确保你是将:

项目目录下的config文件夹里的index.js文件中,将build对象下的assetsPublicPath中的“/”,改为“./”后,打包生成的dist文件。

开始使用HBuiderX打包。(工具下载地址:http://www.dcloud.io/)

用HBuilderX 打包 vue 项目 为 App 的步骤第1张

用HBuilderX 打包 vue 项目 为 App 的步骤第2张

用HBuilderX 打包 vue 项目 为 App 的步骤第3张

这是我vue项目打包后的dist文件。

用HBuilderX 打包 vue 项目 为 App 的步骤第4张

用HBuilderX 打包 vue 项目 为 App 的步骤第5张

用HBuilderX 打包 vue 项目 为 App 的步骤第6张

用HBuilderX 打包 vue 项目 为 App 的步骤第7张

用HBuilderX 打包 vue 项目 为 App 的步骤第8张

用HBuilderX 打包 vue 项目 为 App 的步骤第9张

用HBuilderX 打包 vue 项目 为 App 的步骤第10张

用HBuilderX 打包 vue 项目 为 App 的步骤第11张

设置沉浸状态栏:(什么是沉浸状态栏和设置方法 请移步: http://ask.dcloud.net.cn/article/32 地址里的 http://ask.dcloud.net.cn/article/1150)用HBuilderX 打包 vue 项目 为 App 的步骤第12张

上图中添加位置的代码:

        "statusbar": { //应用可视区域到系统状态栏下透明显示效果
            "immersed": true
        },

用HBuilderX 打包 vue 项目 为 App 的步骤第13张

用HBuilderX 打包 vue 项目 为 App 的步骤第14张

用HBuilderX 打包 vue 项目 为 App 的步骤第15张

解决打包成App后,单击手机返回键退出应用的bug。(可以直接把这段代码放到你vue项目中,重新打包,再放回来,也可以直接修改这个index.html)

用HBuilderX 打包 vue 项目 为 App 的步骤第16张

上图中的代码:

<script type="text/javascript">
    //如下代码主要是解决, 打包后的app点击返回键直接退出的bug.
    /*自己写的 toast 提示框 */
    //下面用的是调的 Android 自身的 toast方法。 我把我自己写的toast 注释掉 
    /*
    let flag = false;
    function toast(tip){
        if(flag) return;
        let oDiv  = document.createElement('div');
        let oBody = document.getElementsByTagName('body')[0];
        oDiv.innerText = tip;
        oDiv.style.background = 'rgba(50, 50, 51, 0.88)';
        oDiv.style.color = '#fff';
        oDiv.style.textAlign = 'center';
        oDiv.style.fontSize = '14px';
        oDiv.style.lineHeight = '30px';
        oDiv.style.width = '200px';
        oDiv.style.borderRadius = '4px';
        oDiv.style.position = 'fixed';
        oDiv.style.left = '50%';
        oDiv.style.transform = 'translateX(-50%)';
        oDiv.style.bottom = '100px';
        oDiv.style.zIndex = '1000';
        oBody.appendChild(oDiv);
        flag = true;
        setTimeout(function(){
            oBody.removeChild(oDiv);
            flag = false;
        },1000);
    }
     */
    /*自己写的 toast 提示框---END--- */
    document.addEventListener('plusready', function(a) { //等待plus ready后再调用5+ API:
                //// 在这里调用5+ API
                var first = null;
                plus.key.addEventListener('backbutton', function() { //监听返回键
                        //首次按键,提示‘再按一次退出应用’
                        if (!first) {
                            first = new Date().getTime(); //获取第一次点击的时间戳
                            //console.log('再按一次退出应用');//用自定义toast提示最好
                            //toast('双击返回键退出应用'); //调用自己写的吐丝提示 函数
                            plus.nativeUI.toast("双击退出", {duration:'short'}); //通过H5+ API 调用Android 上的toast 提示框
                            setTimeout(function() {
                                first = null;
                            }, 1000);
                        } else{
                            if (new Date().getTime() - first < 1000) { //获取第二次点击的时间戳, 两次之差 小于 1000ms 说明1s点击了两次,
                                plus.runtime.quit(); //退出应用
}
                        }
                    }, false);
            });
</script>

上面这段代码:我参考的文章和文档链接:

https://blog.csdn.net/qq_25252769/article/details/76913083

这个是H5+API的(通过js调取Android等平台的原生方法)学习链接:http://ask.dcloud.net.cn/docs/

至此就基本上完成了,但是还会有一下bug,我时间我再弄。

这里是我效果图:

用HBuilderX 打包 vue 项目 为 App 的步骤第17张

现纯的bug是进入详情页 ,点击返回也只能提示 双击退出,而不是后退一步。

免责声明:文章转载自《用HBuilderX 打包 vue 项目 为 App 的步骤》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇Anders谈C# 4.0:新功能和展望文本检测和识别 代码结构梳理下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

PC端通过ADB命令 无线向 andriod端发送文件

1、pc 通过ABD连接andriod端(andriod端安装wifiadb,PC端 在cmd中 adb connect Android端IP ) 2、cmd 输入命令 adb push pc端文件路径 android端文件路径  andriod端文件上传PC 3、adb pull android端文件路径 pc端文件路径 软件:WiFiadb(安卓端安装...

ubuntu和centos操作命令对比

ubuntu和centos操作命令对比 1,安装软件,比如安装jdk CentOS : rpm -i jdk-XXX_linux-x64_bin.rpm 进行安装, Ubuntu : dpkg -i jdk-XXX_linux-x64_bin.deb 进行安装。 其中 -i 就是 install 的意思。 2,管理软件 查询已安装的软件 rpm -qa...

教你一招:[转载]使用 Easy Sysprep v4 封装 Windows 7 精品

(一) 安装与备份系统 1、 安装 Windows 7 先使用第三方分区工具(DiskGenius分区)在虚拟机中分区,然后将封装的母盘文件安装写入指定的安装盘,写入完成后重启系统开始部署。 2、 进入最适合封装的系统账户:Administrator 进入Administrator用户的方法有很多,但下面我为大家推荐一个最为直接的方法,且不易产...

Gentoo 包管理器: Emerge使用方法

安装与卸载 安装软件 emerge --ask --verbose package_name 只下载源码 emerge -f package_name 软件包卸载 emerge --unmerge package_name 清除所有失去依赖关系的软件包(清理系统) emerge --depclean 更新与同步 更新系统中的...

常见使用技巧

常见使用技巧 常见SolidWorks使用问答: 问:你想隐藏装配体里头的零件,怎么办?答:右键点击零件或者树状图中的零件名字,然后点眼睛那个图标。更快捷的方式,只需要把鼠标放到那个零件上,按一下Tab,隐藏了。 问:隐藏装配体里头的零件想回复怎么办?答:把鼠标对准隐藏文件的位置,按Shift+tab,零件就回来了。 问:想在装配体树状图中拖动子装配体的位...

Oracle数据库之二 Oracle的下载与安装

二、Oracle 的下载与安装 2.1、Oracle 简介 Oracle 公司是全球最大的信息管理软件及服务供应商,成立于 1977 年,主要的业务是推动电子商务平台的搭建。Oracle 公司有自己的服务器、数据库、开发工具、编程语言,在行业软件上还有企业资源计划(ERP)软件、客户关系管理(CRM)软件、人力资源管理软件(HCM)等大型管理系统,所以...