Cordova开发环境搭建与基本使用 - Oejia 技术栈,企业方案分享、Odoo顾问
Oejia 技术栈
主页
分享
微信模块
索引
关于
订阅
编辑器
登录
Cordova开发环境搭建与基本使用
Oejia
on 2014-12-15 15:24:15
###安装cordova(原名phonegap) ``` npm install -g cordova ``` 如果没有npm 先安装Nodejs ###创建项目 ``` cordova create japp cd japp ``` 指定package名和应用名 ``` cordova create app2 com.rensanning.app.cordova CordovaSample ``` 参数说明 - path:也就是项目的目录名称 - ID:项目的ID,用于写入config.xml的widget中,通常格式为 com.example.hello - name:应用程序的显示名称 创建生成的目录结构说明 ``` app2/ |-- config.xml #项目配置文件 |-- hooks/ #存放Cordova 的钩子 |-- node_modules/ |-- res/ #存放一些各平台的icon或者首屏图等资源 |-- www/ #静态网页资源 |-- platforms/ #各平台存放目录 |-- plugins/ #插件目录 |-- package.json ``` ###安装插件 ``` cordova plugin add com.dooble.audiotoggle #添加本地插件 cordova plugin add 'D:\xxx\xxx' ``` ###添加平台 ``` cordova platform add android/ios ``` ###编译 编译指定平台: ``` cordova build android/ios ``` 编译所有平台: ``` cordova build ``` 此步骤会涉及构建平台的搭建和配置(比如Android平台要装好SDK环境),对于一个前端开发者来说,只需要android sdk 就可以了,不一定非要安装android studio ###删除 ``` cordova platform rm android cordova plugin rm com.dooble.audiotoggle ``` ###更新 更新Cordova ``` sudo npm update cordova -g ``` 更新平台 ``` cordova platform update android ``` 查看已添加的平台 ``` cordova platform ls ``` ### Cordova 防止跳转自带浏览器 在config.xml文件中加入以下两行代码 ```
``` ### cordova 远程h5页面调用本地js 方法一: 本地先安装好插件,然后将cordova.js plugin等所有js文件(一般在 platforms/andriod/assets/www/或platforms/andriod/platform_www目录下)一起放在服务器上。h5页面只需要引用cordova.js即可 方法二: 直接让h5使用本地cordova.js等文件 ``` ``` 如果遇到webview安全机制导致http协议下禁止通过`file://`方式访问本地的文件,可以通过拦截webview的请求,实现加载本地js,具体如下: 修改 platforms/andriod/CordovaLib/src/org/apache/cordova/engine/SystemWebViewClient.java 代码 ``` public void clearAuthenticationTokens() { this.authenticationTokens.clear(); } private static final String INJECTION_TOKEN = "http://injection/"; //新增 @TargetApi(Build.VERSION_CODES.HONEYCOMB) @Override public WebResourceResponse shouldInterceptRequest(WebView view, String url) { //新增内容开始 if(url != null && url.contains(INJECTION_TOKEN)) { String assetPath = url.substring(url.indexOf(INJECTION_TOKEN) + INJECTION_TOKEN.length(), url.length()); try { WebResourceResponse response = new WebResourceResponse( "application/javascript", "UTF8", view.getContext().getAssets().open(assetPath) ); return response; } catch (IOException e) { e.printStackTrace(); // Failed to load asset file return new WebResourceResponse("text/plain", "UTF-8", null); } } //新增内容结束 try { // Check the against the whitelist and lock out access to the WebView directory // Changing this will cause problems for your application if (!parentEngine.pluginManager.shouldAllowRequest(url)) { LOG.w(TAG, "URL blocked by whitelist: " + url); // Results in a 404. return new WebResourceResponse("text/plain", "UTF-8", null); } // ... } catch (IOException e) { //... } } ```
Information
Cordova开发环境搭建与基本使用
http://www.oejia.net/blog/2014/12/15/cordova_base.html
http://www.oejia.net/raw/2014/12/15/cordova_base.md
Oejia
on 2014-12-15 15:24:15
Category
移动开发
Tag
Cordova
HTML5
Related
2020-09-10 :
Odoo14 相对 Odoo13 依赖库的变化
2018-08-31 :
Odoo 中的 domain 的解析及各种使用例子
2018-03-26 :
DjangoX 相关文档
2018-03-15 :
在 YouMd 中使用链接跳转的三种方式
2017-08-10 :
DjangoX 首页面板的使用
2016-03-14 :
关于 Odoo 的 dbfilter 配置项
2016-01-19 :
Odoo 的微信模块 Oejia_wx v0.1 发布!
2016-01-19 :
Odoo 数据的增/删/改/查(CRUD)操作 API 解析及示例
2014-12-22 :
Mole详细说明文档
2014-12-17 :
Python包管理之easy_install
官方公众号
关注公众号实时咨询我们
分类
Odoo (81)
DjangoX (11)
后端HTTP (7)
YouMd (4)
移动开发 (4)
Django (4)
公告说明 (2)
JS (2)
Python (1)
前端 (1)
Nginx (1)
桌面UI (1)
January 2021
Sun
Mon
Tue
Wed
Thu
Fri
Sat
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
About This Entry
PyQt界面控件常用积累
Cordova配置config.xml详解
About This Blog
main index
to find recently
archives
to find all
标签
微信模块
小程序商城
Python
Web
Http
Cordova
客服系统
微信客服系统
HTML5
微信客服
Markdown
解析
DjangoX
微信模块发布记录
客服工单系统
ExtJS
示例
Excel
JS
服系统
新年
PyQT
YouPBX
扩展开发
最近发布
Odoo 如何用命令行备份还原数据
如何实现 Odoo 数据每天备份到本地存储
微信模块 Oejia_wx v0.6.3 发布,多项兼容优化,即将全面适配 Odoo14
Odoo 小程序商城模块 Oejia_weshop v0.2.2 发布,全面支持多公司销售机制
OE商城积分模块
Odoo14 相对 Odoo13 依赖库的变化
Oejia 七月模块产品动态之OE商城
小程序商城模块 Oejia_weshop v0.2.1 发布,各种营销活动支持打通线上线下业务
基于企业微信官方审批应用实现的Odoo通用审批功能
OE小程序商城订阅消息通知使用说明
Friend Links
Oejia技术梦博客分享
YouMd,爱上MarkDown
Mole轻量级wsgi架子