先安装nodejs 和ant。ant文件解压配置环境变量:添加ANT_NAME就是解压存放的路径,在path后面添加;%ANT_HOME%\bin;

校验 cmd:node -v    v6.11.0

校验 cmd :ant -v        v1.9.9 (JDK1.8)

node和ant安装完成后,在path后面添加上;C:\Users\Administrator\AppData\Roaming\npm;

cmd输入 npm install -g cordova@版本号  (npm install -g cordova@5.4.1) 等待安装完成。

校验 cmd:cordova -v    5.4.1

cordova help create

创建一个项目:

使用命令行导航至希望创建项目的目录,输入 cordova create [ID [NAME [CONFIG] ] ] [options] {PLATFORM...]  (cordova create com.shangqing.android app)  demo是工程名 app是项目名

添加一个平台:

导航至工程目录下:cd demo

demo>cordova platforms add   (cordova platforms add android)

校验添加的平台:demo>cordova platform

运行app: demo>cordova run

删除一个平台:

demo>cordova platform remove android  (cordova platform rm android)

添加插件

输入:cordova plugin add cordova-plugin-file (cordova plugin add <插件官方名称>)

输入:cordova plugin add https://github.com/phonegap/phonegap-plugin-barcodescanner.git//这个是扫描二维码插件  (github项目地址)

github地址:https://github.com/

删除插件

输入:cordova plugin rm cordova-plugin-file(使用rm和remove都可以)

插件列表

输入:cordova plugin list(查看当前安装了哪些插件)

    cordova install android //将编译好的应用程序安装到模拟器上。

    cordova emulate android //在模拟器上运行(前提是创建好AVD)

    cordova serve android //在浏览器运行

    cordova build android //打包cordova项目到android平台。

    cordova run android //通过USB直接安装到真机(该语句已经包括了build命令)

在CordovaWebViewImpl.class中发现:

@Override

        public boolean onNavigationAttempt(String url) {

            // Give plugins the chance to handle the url

            if (pluginManager.onOverrideUrlLoading(url)) {

                return true;

            } else if (pluginManager.shouldAllowNavigation(url)) {

                return false;

            } else if (pluginManager.shouldOpenExternalUrl(url)) {

                showWebPage(url, true, false, null);

                return true;

            }

            LOG.w(TAG, "Blocked (possibly sub-frame) navigation to non-allowed URL: " + url);

            return true;

        }

return true就是在外部浏览器中打开。

其中,shouldAllowNavigation是循环插件,有一个插件返回true或false就返回了。

第一个就是白名单插件,呵呵

看文档,只要在config.xml中添加:

 

即可允许所有http请求。

添加后,shouldAllowNavigation方法返回true,onNavigationAttempt返回false,

从而在app 内部打开。

posted on 2018-03-12 16:07  xiangrikui_88  阅读(199)  评论(0编辑  收藏  举报