本文主要是介绍cordova-1,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
前记
受到开源工程Thunder Scope的启示,他使用了electron作为用户程序界面,进而在知乎找到了一份关于界面开发的讨论:https://www.zhihu.com/question/264999651
个人总结就是:WPF适合目前Win桌面开发,嵌入式用Qt,Web前端就是Html5+JS。
而electron可以应对一些基础的应用,一般编译出来的程序体积较大及效率较低,主要面向前端开发者,深入定制对开发者要求较高。(我自己一直也这么认为的,所以一看到‘Thunder Scope’使用,我非常惊讶。但他代表了一种趋势,记得大概8年前我第一次接触Qt,发现这玩意编译出来的程序体积及内存占用远比我最初用的MFC高,当时就果断放弃了继续使用,一直用MFC,导致我做的界面总是好像上个世纪的产品,并且开发效率极低。而Qt这么多年的改进,明显感觉效率几经很高了,而且还是跨平台方案。只要该技术还在持续更新,那我觉得这些弊端是会得到改善的,只是现阶段我的评价还是暂时难堪大任。)
并没有发现桌面、Web、APP一体化的方案,实际上三种面对的终端界面存在一些差异,手机屏幕及操作方式和电脑是有些区别的。都需要做相应适配。
其实,我想寻找的是一种可以快速高效开发界面应用的环境,并且希望可以部署到不同平台。因为在现实的环境中我们确实需要一些简单的UI界面去帮助我们处理日常的工作,同时并不希望为此付出太多的时间。前段时间用excel做了一个界面:(如果不是逼上梁山,你是不会想到去用excel做自动化界面的,虽然功能捡漏,但却实现效率较高,类似的界面用MFC是不可想象的)
目前还是首选Qt和Html5(WebGL 与 canvas2D);Java不太会,一直走的是C/C++路线。
关于WebGL
新安装的Qt7多了一个webassembly技术,web应用真是大行其道。
无论是那种技术,只是实现方式不同,对于程序本身而言核心都是一致的,只要达到目的就行。
我们知道electron可以将web转为桌面应用,那么这次接触到一个新的技术:CORDOVA
CORDOVA
以下是Cordova的编译android的测试流程:其间也是道路坎坷
Cordova:可以将wed应用编译为安卓或IOS应用
本机环境
win10 64 x86
cordova -v 11.0.0
需要安装node.js:
NPM 使用介绍:NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题
#npm 的包安装分为本地安装(local)、全局安装(global)两种,从敲的命令行来看,差别只是有没有-g而已,比如
npm install express # 本地安装
npm install express -g # 全局安装#npm install -g cordova / cnpm install -g cordova
npm install -g cordova --registry=https://registry.npm.taobao.org
#cnpm install -g cordova@8.1.2 // 安装指定版本#新建一个 cordova 应用
cordova create learn-cordovacordova platform add android --save
#cordova platform add ios --save
cordova platform add browser --savecd learn-cordova
cordova platform
cordova run browser
JDK:已安装
Android SDK
手动安装Android Studio:
注意SDK Manager路径如下:
Could not find an installed version of Gradle either in Android Studio
环境变量设置
cd learn-cordova
set ANDROID_SDK_ROOT=C:\Users\will\AppData\Local\Android\Sdk
set PATH=%PATH%;C:\Users\will\AppData\Local\Android\Sdk\platform-tools
set PATH=%PATH%;C:\Users\will\.gradle\wrapper\dists\gradle-7.1.1-all\1wqbeia0d49252rmlcr6o8lbl\gradle-7.1.1\bincordova run android
软件只会提示指定’ANDROID_SDK_ROOT’变量的路径,另外两个也需要添加。
一开始提示gradle找不到,手动下载了一个,但实际Android Studio安装的时候一般默认已经安装了对应的版本,路径在’C:\Users\will.gradle’,只要将环境变量设置上即可。
本身安装Android Studio是没有tools路径的,由于自己安装了Qt7,在Qt7环境配置安卓kit时也需要指定SDK路径,Qt7会在SDK目录产生一个tools的路径。
kotlin-compiler-embeddable
kotlin-compiler-embeddable-1.5.21.jar
提示‘Can not Get ‘http…’’ 尽管使用了代理,但仍然很慢,下载失败。该文件需要手动下载去覆盖到对应的目录"C:\Users\will.gradle\caches\modules-2\files-2.1\org.jetbrains.kotlin\kotlin-compiler-embeddable\1.5.21\b7d083256154ce255baa44547e3156505e18d29a"
kotlin compiler embeddable下载慢
No installed build tools found. Install the Android build tools version 30.0.3 or higher.
No installed build tools found. Install the Android build tools version 30.0
Script ‘G:\prjs\web\cordova\learn-cordova\platforms\android\CordovaLib\cordova.gradle’ line: 69
直接找到上面的文件以及对应行,手动指定了一个版本值,一定是你当前版本值加一。
关于这个问题官方的论坛:https://github.com/apache/cordova-android/issues/1391
找不到dx.bat和dx.jar
这里我是手动将相应目录原来名字叫d8.bat/d8.jar直接改成了dx.bat/dx.jar。就是死马当活马医,没想到改过来之后竟然可以。
至此环境就配置ok了,
那我们找个html5的应用试下:
将找到的html5应用拷到www文件夹下,将原来的删除或覆盖,重新执行:
cd learn-cordova
cordova run android
END
真是夸张,Sdk竟然耗费了我10个G空间,gradle耗费1.4G(后面还有增加的可能),C盘已经快满了。又是不务正业的一篇。
这篇关于cordova-1的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!