cordova vue混合式开发App

时间:2022-05-19 07:03:23

        应要求第一次使用cordova打包了一下vue写的app项目,期间遇到了不少问题,整理一下流程并记录一下常见问题吧。
        cordova打包项目需要的环境配置啥的就不具体讲啦,百度一下很多教程~

1. 创建cordova项目并添加Android平台
创建项目指令:cordova create hello com.example.hello helloworld

第一个hello是cordova自动生成的项目文件夹名称
第二个com.example.hello我一般填写公司的名称,比如:com.csdn.hello
第三个helloword是打包完成后app的名称。
        创建完cordova项目后我们需要通过指令进入cordova项目的路径下才可进行后续操作:
         进入项目目录指令:cd hello
        进入项目目录后,我们需要添加对应的平台,这里我们用的是Android平台
         添加平台指令:cordova platform add android

2. 打包vue项目
打包vue项目指令:npm run build
        首先打包好你的h5项目,我们公司是用vue框架写的项目,因此打包的时候遇到一个问题,即打包生成的静态页面打开为空白页,百度搜索之后发现是路径指向问题,只需要在vue.config.js文件中修改publicPath的值为“./”即可解决问题。

publicPath: ‘/‘, => publicPath: ‘./‘,
1
        这里有一种比较便捷的打包方式,即修改你的输出文件路径,将它指向你cordova项目中静态文件存放的地址。这样可以省去每次打包好vue项目后再复制粘贴到cordova项目中的麻烦。
具体修改outputDir值即可:

//原始值
outputDir: ‘dist‘,
//修改为 具体地址视开发情况而定
outputDir: ‘E:cordovademoplatformsandroidappsrcmainassetswww‘,

注意:每次打包前要清空cordova项目中对应目录下的静态文件!先清空,在打包!

        如果打包vue项目时没有修改outputDis路径,则将输出的dist文件下的内容,全部复制到E:cordovademoplatformsandroidappsrcmainassetswww路径下。注意不要随便删除跟插件有关的js文件,否则会造成打包后插件不生效的情况!


        上图中绿色线框选出的是cordova自动生成的插件相关文件,建议不要随便修改!红线框出的是复制进来的vue项目打包输出后的文件。

3. 安装所需的插件
安装插件指令:cordova plugin add cordova-plugin-XXX

具体插件名称看项目中用到了哪些,一般安装插件有三种方法:

cordova官方插件。比如 cordova plugin add cordova-plugin-camera
通过url安装。比如 cordova plugin add https://github.com/nordnet/cordova-hot-code-push.git
安装本地插件。比如 cordova plugin add E:cordovapluginscordova-hot-code-push-local-dev-addon

如果需要删除某些插件可以使用:cordova plugin remove XXXX
如果需要查看已安装的插件列表可以使用: cordova plugin list
4. 修改APP的名称和图标
具体开发时我们可能还需要重新修改APP的名称和图标:
修改名称
    找到helloplatformsandroidappsrcmainresvalues文件夹下的strings.xml文件,修改app_name值:
<?xml version=‘1.0‘ encoding=‘utf-8‘?>
<resources>
<string name="app_name">APP名称</string>
<string name="launcher_name">@string/app_name</string>
<string name="activity_name">@string/launcher_name</string>
</resources>

2.修改图标
        找到E:cordovademoplatformsandroidappsrcmainres目录

将上图红框文件夹中的图片替换为你所需要的图片,每个文件夹对应了不同尺寸的设备,具体对应关系自行百度。

注意修改放入的图片的文件名为ic_launcher_foreground.png!

5. 打包apk
打包APK指令:cordova build android
        除了使用指令以外,也可以在AndroidStudio中通过  Build->Build Bundle(s)/APK(s)->Build APK(s)  来输出apk文件。

一般输出的apk文件在
E:cordovademoplatformsandroidappbuildoutputsapkdebug目录下,默认的文件名为app-debug.apk。
        当然在打包之前尽量现在虚拟机上运行一下程序看看是否有问题,若无问题再打包最好