首页
学习
活动
专区
圈层
工具
发布

使用 Cordova 构建应用的流程

本质上,这隐藏了通用 JavaScript 接口背后的各种本地代码实现。 项目维护一组叫做核心插件的插件。 这些核心插件提供应用程序访问设备功能,如电池、相机、联系人等。...插件 安卓插件开发指南 本节提供如何在 Android 平台上实现本地插件代码的详细信息。...>, []); 这将从 WebView 向 Android 本地端封送一个请求,通过在 args 数组中传递附加参数,有效地调用服务类上的 action 方法。...具有长时间运行的请求、后台活动(如媒体播放、侦听器或内部状态)的插件应该实现 onReset ()方法。 它在 WebView 导航到新页面或刷新时执行,这会重新加载 JavaScript。...运行以下命令重建应用程序,并在特定平台的模拟器中查看它: $ cordova emulate android 接下来使用 cordova emulate 命令刷新模拟器映像以显示最新的应用程序,现在可以在主屏幕上启动

5.8K11

Cordova(工具)- Config.xml详解

) ios版本的bundleVersion版本设置 osx-CFBundleVersion(string) mac版本的bundleVersion版本号设置 windows-packageVersion...指定app描述信息(应用商店上显示) author 联系人信息(应用商店上显示) email(string) - 必须,邮箱 : href(string) - 必须,作者主页 content 应用程序的起始页面...preference 设置各种选项对名称/值属性。每个首选项的名称是区分大小写的。...许多偏好是独一无二的特定的平台,而详细的每一个代表的意义,请参考官方文档,太多不一一列举了 下面的表,列出具体的所有名称 feature 用来指定什么某些插件参数,如:什么包检索来自插件代码,并确定是否插件代码是网页视图的初始化期间进行初始化...platform 当使用CLI来构建应用程序,有时需要以指定特定于特定的平台的偏好或其他元素。使用元素来指定应该只出现在一个 platform-specific -config.xml文件中的配置。

1.4K40
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    自定义Cordova插件详解

    一、Cordova的基础点 在混合式应用中,我们通过现有的Cordova插件,可以轻松的在 H5 上调用手机native的功能。...; pluginID:插件id, 如:org.demo.mytoast; version:版本号, 如:0.0.1; path:插件存放的绝对或相对路径; variable NAME=VALUE...:扩展参数,如说明或作者,如woodstream 于是命令行中敲入以下代码: plugman create --name MyToast --plugin_id org.demo.mytoast...name:js中间件通过它调用原生方法(包名) uses-permission:相关原生权限 也就是说,我们可以写这样一个插件,不写一句原生代码,只是为了设置权限和拷贝文件...: ionic cordova plugin add /Users/cordova/MyToast 在ionic2或以上使用时,打开任意一个ts文件,在头部声明如下: declare let cordova

    2.7K30

    开发Hybrid App的技术选型

    Hybrid App受到越来越多开发者的追捧与其开发周期短,开发难度小,跨平台离不开,当然APP的效果也成为大家诟病的话题,如首屏打开缓慢,动画效果不够流畅等。...设置为这个单位即: font-size = 750/10 = 75px; 1rem = 75px; 如果在宽度为750px的设备上,完全符合上述换算。...(在iphone6/7/8上) = 37.5px; 不难看出,只需要将这个单位作为除数即可计算出所需要的值; 六、打包工具 开发完成之后使用hbuilder或cordova打包成为android...但当我们在对请求过滤的处理时,这些get,post方法基本上不能满足我们的需求,所以需要对请求进行二次封装。...当然如果你不用jq也可以选择其他的类库如封装ajax请求的axios!

    2.9K30

    对象存储 COS 帮您轻松搞定跨域访问需求

    该机制允许服务端通过返回特定的 HTTP 头部来告知浏览器是否拦截跨域请求。 COS 支持用户在存储桶中配置 “跨域访问 CORS” 规则,以此放行一些合法的跨域请求。...服务端还可以通过返回 Access-Control-Expose-Headers 头部来告知浏览器,哪些特定响应头允许暴露给 AJAX 请求。...Max-Age:设置为 600,让浏览器缓存跨域检测结果,过期时间为 600 秒 CDN 上配置 CORS 规则 如果开通了 CDN 服务,并且设置 COS 为 CDN 的源站,由于 CDN 会缓存...通过 CDN 域名访问 COS 上的文件时,如果希望响应的跨域头部为最新配置,可以在 CDN 控制台的 “Response Header 配置” 中设置 CORS 相关跨域头部,如下图所示: 4.png...5.png 结语 全文通过博客网站开发,浏览器主动拦截跨域的 AJAX 请求的场景,详细介绍了 CORS 跨域访问机制,以及如何在 COS 和 CDN 上配置 CORS 跨域规则。

    2.4K40

    iOS Hybrid 框架

    Cordova的设计概念,是在APP上透过Web控件来呈现Web页面,让Web开发人员可以操作熟悉的语言、工具来开发APP....与 Objective-C 通信 Js 使用了两种方式来与 Objective-C 通信,一种是使用 XMLHttpRequest 发起请求的方式,另一种则是通过设置透明的 iframe 的 src...execXhr.setRequestHeader('rc', ++requestCount);             if (shouldBundleCommandJson()) {                 // 设置请求的数据...: 所要请求的服务名字 // action : 所要请求的服务具体操作 // actionArgs : 请求操作所带的参数 cordova.exec(successCallback..., failCallback, service, action, actionArgs); 传进来的这五个参数并不是直接传送给原生代码的,Cordova JS 端会做以下的处理: 1.会为每个请求生成一个叫

    2.6K90

    Ace — 微软提供的Cordova原生UI插件

    Ace = JavaScript + Native UI + iOS + Android Ace能在你现有的JavaScript代码库上增加原生支持。...优异的效率 看起来好看 随主题自动更新 注重用户可访问性设置 同时通过HTML,你可以使用你的web开发经验、代码和诸如Ionic,Bootstrap,Ember等框架。 ? 2....使用跨平台的原生UI框架 或者直接使用原生控制 使用简单的类,如 Button,Grid,或DatePicker。UI框架提供了跨平台的原生控制、布局、样式等等的抽象。...或者,你也可以直接使用特定平台的原生控制。比如下面这些: ? 如果你决定使用标示,你可以在HTML中直接链接它们,而不用在意它们的类型: ? 3....你自己的代码,第三方代码或者平台相关的API。不需要额外的插件或封装。 直接添加Java,Objective-C或者Android资源到你的Cordova项目中,你可以轻松使用它们。 ? ? 4.

    1.7K50

    手把手教你从Core Data迁移到Realm

    Cordova的设计概念,是在APP上透过Web控件来呈现Web页面,让Web开发人员可以操作熟悉的语言、工具来开发APP....与 Objective-C 通信 Js 使用了两种方式来与 Objective-C 通信,一种是使用 XMLHttpRequest 发起请求的方式,另一种则是通过设置透明的 iframe 的 src...execXhr.setRequestHeader('rc', ++requestCount);             if (shouldBundleCommandJson()) {                 // 设置请求的数据...: 所要请求的服务名字 // action : 所要请求的服务具体操作 // actionArgs : 请求操作所带的参数 cordova.exec(successCallback..., failCallback, service, action, actionArgs); 传进来的这五个参数并不是直接传送给原生代码的,Cordova JS 端会做以下的处理: 1.会为每个请求生成一个叫

    1.4K70

    判断js引擎是javascriptCore或者v8

    来由   纯粹的无聊,一直在搜索JavaScriptCore和SpiderMonkey的一些信息,却无意中学习了如何在ios的UIWebView中判断其js解析引擎的方法: if (window.devicePixelRatio...在之前的文章objC与js通信实现--WebViewJavascriptBridge中,讲述了cordova的桥接机制-通过UIWebView的stringbyEvaluateJavascriptString...方法通信,但是通过这个借口,虽然我们可以采用内置的jsc引擎执行js代码,但是无法进行更细粒度,深入到javascript运行时来执行代码,最直接的表现就是“无法在oc端对执行的js进行错误控制,如异常处理机制...但是这种方式有几个弊端:     1)oc调用js有返回值,属于同步调用;而js调用oc是通过创建iframe并设置src,oc端的UIWebVIew拦截请求,然后再通过stringByEvaluateJavascriptString...2,目前有三种方案实现oc与js通信,第一种继续使用cordova的通信机制,也就是目前比较流行的UIWebView;第二种采用React Native的通信机制,使用iOS7内置的javascriptCore

    3.8K50

    【Hybird】274-Hybird App 应用开发中 5 个必备知识点复习

    2.2 Cordova 架构图 架构图介绍: Web App 用于存放我们程序的代码,包括业务逻辑,还有一些运行需要的资源(如:CSS,JavaScript,图片,媒体文件等)。...它提供了 Cordova 和原生组件相互通信的接口,并绑定到了标准的设备API上,这使你能够通过 JavaScript 调用原生代码。...Cordova 在 iOS 上的实现原理: 3.1 工作流程 Cordova 发起对原生的请求: cordova.exec(successCallback, failCallback, service,...: 所要请求的服务具体操作 // actionArgs: 请求操作所带的参数 这五个参数并不是直接传给原生,Cordova JS 端会做以下处理: 为每个请求生成一个唯一标识( callbackId...gap_exec 的话,则认为是 Cordova 通信的请求,直接拦截,拦截后就可以通过分析请求的数据,分发到不同的插件类(CDVPlugin 类的子类)的方法中: Cordova 中优先使用这种方式,

    1.8K30

    iOS下JS与OC互相调用(八)--Cordova详解+实战

    所以我基本上是从零开始研究和学习Cordova的使用,从上篇在官网实现命令行创建工程,到工程运行起来,实际项目中怎么使用Cordova,可能还有一些人并不懂,其实我当时执行完那些命令后也不懂。...: // successCallback : 成功的回调方法 // failCallback : 失败的回调方法 // server : 所要请求的服务名字,就是插件类的名字 // action : 所要请求的服务具体操作...// actionArgs : 请求操作所带的参数,这是个数组。...** 依然是做一个假的URL 请求,然后在UIWebView的代理方法中拦截请求。...6.如果你在使用Xcode 8时,觉得控制台里大量的打印很碍眼,可以这样设置来去掉。 首先: ? 然后,添加一个环境变量: ? 好了,到这里关于Cordova 的讲解就结束了。

    3K20

    ionic hybrid app:产品还是玩具?

    基于Cordova的 Hybrid APP Cordova提供了一组设备相关的API,通过这组API,移动应用能够以JavaScript访问原生的设备功能,如摄像头、麦克风等。...Adobe在Cordova的基础上加上自己的特性和生态,继续沿用PhoneGap的名字。而原本的PhoneGap的核心代码以Cordova这个名字作为Apache的一个开源项目。...通过WebView能调用的系统功能只有WEB页面的一些基本功能,如页面展示和HTTP请求。如果要调用系统的其它一些Native功能,比如Camera,震动等等,则需要通过Cordova来实现。...Cordova有一些核心的plugins来向js提供一些常用的Native能力,另外Cordova也可以通过自定义Plugins来扩展对Native功能的使用能力,所以理论上,只要有相应Plugins的支持...ionic声明了自己是做APP的而不是做website的(毕竟很多Cordova Native API无法在手机browser上使用),最重要的,ionic果断抛弃了屌丝机,拥抱高端机。

    6.2K80

    请求、请求方法、请求头、请求体、响应、响应头、响应体,响应码傻傻分不清?深入理解Web请求:从RFC 2616协议文本入手

    RFC 2616是Hypertext Transfer Protocol(HTTP/1.1)的标准定义文档,由NBernstein于1997年提出并通过,为WWW上的应用数据交换定义了统一的标准。...由于HTTP协议的普遍使用,RFC 2616已经成为Web请求的标准协议。 在Web请求中,主要有以下几个关键概念: 1. 请求(Request):一个HTTP请求由请求行、请求头部和请求正文组成。...每种方式都有其特定的用途和语义。 4. 响应(Response):当服务器接收到请求后,会返回一个响应。响应也由三部分组成:状态行、响应头部和响应正文。 5....在深入理解了这些概念之后,我们需要通过实践来掌握如何在实际开发中运用它们。...在代码中可以使用类似requests.delete()的方式发起DELETE请求。 在实际开发中,我们还需要注意一些细节问题,如处理异常、设置超时时间、配置代理等。

    4K10

    还能设置多个 Access-Control-Allow-Origin ?

    当一个网页尝试从与自身来源不同(即跨域)的服务器上获取资源时,浏览器会实施同源策略,阻止这种请求,除非服务器明确许可这种跨域访问。...使用方法 设置单一源 如果你希望只允许特定的源访问资源,可以在服务器端响应中设置 Access-Control-Allow-Origin 头,指定允许的源域名: Access-Control-Allow-Origin...: https://example.com 这表示只有来自 https://example.com 的网页可以成功请求此服务器上的资源。...: * 动态设置 在某些情况下,你可能需要根据请求的来源动态设置这个头部。...以下是一个简单的示例,展示了如何在 Node.js 的 Express 应用中动态设置 Access-Control-Allow-Origin: const express = require('express

    3.7K10

    Hybrid App 应用开发中 5 个必备知识点复习

    2.2 Cordova 架构图 [Cordova架构图] 架构图介绍: Web App 用于存放我们程序的代码,包括业务逻辑,还有一些运行需要的资源(如:CSS,JavaScript,图片,媒体文件等...它提供了 Cordova 和原生组件相互通信的接口,并绑定到了标准的设备API上,这使你能够通过 JavaScript 调用原生代码。...Cordova 在 iOS 上的实现原理: [cordova] 3.1 工作流程 Cordova 发起对原生的请求: cordova.exec(successCallback, failCallback...// action: 所要请求的服务具体操作 // actionArgs: 请求操作所带的参数 这五个参数并不是直接传给原生,Cordova JS 端会做以下处理: * 为每个请求生成一个唯一标识(...gap_exec 的话,则认为是 Cordova 通信的请求,直接拦截,拦截后就可以通过分析请求的数据,分发到不同的插件类(CDVPlugin 类的子类)的方法中: [iOS] Cordova 中优先使用这种方式

    2.7K00

    ionic hybrid app:产品还是玩具?

    基于Cordova的 Hybrid APP Cordova提供了一组设备相关的API,通过这组API,移动应用能够以JavaScript访问原生的设备功能,如摄像头、麦克风等。...Adobe在Cordova的基础上加上自己的特性和生态,继续沿用PhoneGap的名字。而原本的PhoneGap的核心代码以Cordova这个名字作为Apache的一个开源项目。...通过WebView能调用的系统功能只有WEB页面的一些基本功能,如页面展示和HTTP请求。如果要调用系统的其它一些Native功能,比如Camera,震动等等,则需要通过Cordova来实现。...Cordova有一些核心的plugins来向js提供一些常用的Native能力,另外Cordova也可以通过自定义Plugins来扩展对Native功能的使用能力,所以理论上,只要有相应Plugins的支持...ionic声明了自己是做APP的而不是做website的(毕竟很多Cordova Native API无法在手机browser上使用),最重要的,ionic果断抛弃了屌丝机,拥抱高端机。

    3.8K10

    CSS-精灵图片的使用(从一张图片中截图指定位置图标)

    目录 一、名词解释 二、使用难点 三、使用步骤 四、程序源码 ---- 一、名词解释 在网页中,我们可以看到有很多的小图标,比如微博上的登录位置有很多这样的小图标。...因为浏览器显示网页的所有内容都需要从我们自己的服务器进行下载,如果将这些图标分别存在服务器上,那么当需要显示的时候将会发出很多次请求–>响应–>下载,这样一来将会消耗大量的时间来下载这些小图标...所以为了提高网页响应速度,避免这个小图标加载耗费大量时间,于是将这些小图片全部放到一张图片上,例如下面的图是利用浏览器调试工具(通常为F12打开)从微博的请求中找到的,大家可以直接下载使用 二、使用难点...精灵图片的使用难点在于如何在这一张图片中定位到我们需要的部分,首先我们需要理解三个坐标:浏览器坐标、组件坐标、图片坐标,每个组件都有自己的坐标点,左上角为原点,往上y值为负数,越来越小;往左x...如下图片当图片原点和组件原点重叠的时候,组件只能显示图片的16px大小 假如此时我们想要截取图片中第二列中的亮的vip6,此时图片需要分别往左移动和往上移动一定距离如下。

    1.7K10
    领券