使用Cordova将你的前端JavaScript应用程序打包成一个移动原生应用程序Native应用程序,比如下面这个。对于应用程序用户来说,他们获得的用户体验与使用AndroidStudio或XCode开发的真正的原生应用程序完全相同。你是怎么做到的?答案是使用Apache的开源框架Cordova。以Android框架为例,Cordova可以将你前端应用中的JavaScript和HTML资源打包成一个Android原生的apk文件,可以直接安装到Android手机上。在运行时,这些JavaScript和HTML直接在Cordova提供的嵌入式WebView控件中运行。对于手机用户来说,他们并不知道,以为他们使用的是原生手机应用。下面就跟着我一步步使用Cordova打包你的前端项目吧。1、在电脑上安装nodejs,将安装的目录添加到Path环境变量中。2.使用nodejs包管理器npm安装Cordova。命令行:npm-ginstallcordova:3.新建一个文件夹,然后进入该文件夹,新建一个Cordova项目。命令行:cordovacreateJerryUI5HelloWorld自动创建一个新的Cordova项目。它包含许多子文件夹。Platforms文件夹是空的,因为此时我们还没有为这个Cordova项目添加支持的移动平台。4.假设我们要把它打包成一个可以安装在Android平台上的应用程序,那么我们就得在Cordova项目中添加对Android平台的支持。使用命令行添加:cordovaplatformaddandroid命令行执行后,我们查看platforms文件夹,发现多了一个android文件夹,里面有很多文件夹和资源。这些自动生成的东西是最终打包生成Android应用APK文件所必需的。如果一切正常,我们将得到下面的目录结果。5、www文件夹下有一个自动生成的index.html文件。我们使用命令行cordovaprepare,这个index.html会自动复制到文件夹platformsandroidassetswww。这揭示了Cordova使用的一个最佳实践:我们所有的前端开发都是直接在Cordova项目文件根目录下的www文件夹中完成的。开发完成后,使用cordovaprepare,根目录www文件夹下的资源会自动复制到项目支持的移动平台对应的文件夹下,我这里是platformsandroidassetswww。一切都准备好了。现在使用命令行cordovacompile打包,在platforms/android/build/output/apk文件夹下生成Android应用的APK文件。请注意,cordova编译命令要求您在本地安装Gradle。如果安装它,您将遇到以下错误消息:错误:无法在AndroidStudio或您的系统上找到已安装的Gradle版本以安装gradlewrapper。请在您的路径中包含gradle,或安装AndroidStudio。我没有安装庞大的AndroidStudio,而是下载了gradle的二进制版本并将其添加到Path环境变量中。在手机上安装APK,执行,会看到如下默认界面。这其实就是Cordova项目创建好后运行手机默认打包安装的index.html的效果。剩下的就很简单了。将你的前端应用的所有资源复制到Cordova项目文件根目录下的www文件夹中,然后执行cordovaprepare将这些资源自动同步到platformsandroidassetswww文件夹中,再次执行命令行cordovacompile即可重新生成下载文件。如果你没有安卓手机,也可以使用AndroidStudio中提供的模拟器进行测试。在AndroidVirtualDeviceManager中新建一个虚拟设备:然后使用命令行将cordovacompile生成的APK文件安装到模拟器中:adbinstallj.apk现在就可以在Android中使用你的Cordova打包好的前端应用了模拟器生成的应用程序。获取更多Jerry原创技术文章,请关注公众号“汪子熙”或扫描下方二维码:
