#### 效果图 7275341-3766c6125d4df205.png #### 插件安装 cordova plugin add cordova-plugin-statusbar #### 修改状态栏默认颜色...this.statusBar.styleDefault(); this.splashScreen.hide(); }); if (cordova.platformId == 'android...') { StatusBar.backgroundColorByHexString("#333"); }
全称是:cordova-plugin-statusbar 什么时候用它呢?比如下面的场景: ?...image.png 因为应用标题栏背景有底色,而默认状态栏的文字颜色为黑色,看上去就没那么美观,所以我们可以去利用该插件改变状态栏的文字为协调的颜色。 那实际在ionic3里是怎么使用的?...因为该插件是项目默认安装的,所以我们直接使用即可,打开app.component.ts,找到下面代码 this.platform.ready().then(() => { // Okay,...改为this.statusBar.styleLightContent()即可,这是其中一种方式,还有其它方式,可以查看文档: https://github.com/apache/cordova-plugin-statusbar...其中列出其余方法如下: StatusBar.overlaysWebView StatusBar.styleDefault StatusBar.styleLightContent StatusBar.styleBlackTranslucent
那解决方法是:让这个黑色的背景变成用户喜欢看到的画面或者让它透明化。..." target-dir="res/values" /> 我曾想通过配置的方式复制styles.xml文件,但是没有解决到,所以还是选用插件方式; 关于自定义插件可以参考此文:自定义Cordova插件详解...; 上述两步的可以直接下载已放到github上的插件cordova-fix-blackscreen。...ionic cordova plugin add cordova-custom-config 这个插件和普通插件不同,并不会增加项目大小,它是注册Cordova的钩子,利用Cordova命令修改自定义配置...constructor(platform: Platform, statusBar: StatusBar, splashScreen: SplashScreen) { platform.ready
环境准备 安装 cordova-plugin-camera 插件 该插件用于调用设备摄像,cordova-plugin-camera 这是比较新版本的插件,老版本的插件是这个:‘org.apache.cordova.camera...cordova plugin add cordova-plugin-camera npm install --save @ionic-native/camera 安装File插件 File 插件基于HTML5...ionic cordova plugin add cordova-plugin-file npm install --save @ionic-native/file 安装File Transfer插件...File Transfer 插件提供上传和下载文件的方法,使用上很便利 ionic cordova plugin add cordova-plugin-file-transfer npm install...upload方法 文件下载调用 File Transfer 的 download方法 通过调用 Camera 插件的getPicture方法获取照片 filePath = this.file.externalApplicationStorageDirectory
在半年前的那篇《我们是如何将 Cordova 应用嵌入到 React Native 中》中,我介绍了如何将 Cordova 嵌入 React Native 应用中。...考虑到有大量的 Cordova 应用,会在未来迁移到 React Native 中,便写了 Dore。...其设计初衷:用于迁移 Cordova 的 WebView 应用到 React Native 的 WebView。 ? 当然,仍然有更多的插件在开发之中,为了训练一下我编写原生代码的能力。...react-native-device-info) Geolocation Keyboard NetInfo Orientation Permissions (by react-native-permissions) State StatusBar...Toast (by dore-toast) Vibration 还有其它插件,等着你来一起开发。
image.png 3、安装相应的Cordova插件 1)这里使用fileTransfer上传方式,所以安装fileTransfer插件及相应的ionic-native模块: ionic cordova...plugin add cordova-plugin-file-transfer npm install @ionic-native/transfer --save 2)这里使用camera插件获取视频...,所以安装该插件及相应的ionic-native模块: ionic cordova plugin add cordova-plugin-camera npm install @ionic-native.../camera --save 插件安装完,记得在app.module.ts中的providers里添加: providers: [ StatusBar, SplashScreen,...IonicErrorHandler}, Transfer, Camera ] 4、创建一个封装操作的provider文件 创建一个FileProvider.ts文件(因为camera插件用的是
我更偏向于cordova,插件相对更多,社区更加活跃,稳定的更新维护。当然,孰优孰劣各自体会。下文会具体介绍cordova的相关知识。...但当我们在对请求过滤的处理时,这些get,post方法基本上不能满足我们的需求,所以需要对请求进行二次封装。...cordova-plugin-statusbar" spec="^2.4.2" /> 5、常用插件收集: phonegap-plugin-barcodescanner...: 二维码扫描 cordova-plugin-statusbar:状态栏 cordova-plugin-inappbrowser: 内置浏览 cordova-plugin-camera:照相机...插件太多可查看这里 官方的插件搜索地址点击这里 6、插件使用,以imagePicker为例子 cordova plugin add cordova-plugin-imagepicker
-- cordova.js required for cordova apps --> cordova.js"> StatusBar,因为我们通过Ionic2使用Cordova来访问本地功能,就像控制 status bar。...Ionic Native是由Ionic提供的服务以便于方便使用Cordova插件。...尽管你不用为了使用Ionic Native而包含Native functionatilty,你可以直接使用Cordova插件。 2....构造函数之外,我们定义了一个名为 openPage 的方法,传入一个page参数,通过调用setRoot方法设置为当前页。注意,我们获取this.nav引用通过一种奇怪的方式。
问题 注册安卓硬件返回按钮事件是必须的,因为用户不小心点击了返回按钮就退出app体验很不好,所以有几种方法: 1.实现按返回键最小化应用(最小化应用需要装cordova-plugin-appminimize...插件,使用window['AppMinimize'].minimize();)。...3.按一下提示,按两下退出(加一个方法用toast提醒)。 这里用第三种展示。...'@angular/core'; import {Platform, ToastController, Nav, IonicApp} from 'ionic-angular'; import {StatusBar...activeNav.pop() : this.showExit();//另外两种方法在这里将this.showExit()改为其他两种的方法的逻辑就好。
如果你需要开发原生功能,使用 web 技术是无法实现的,但是有些原生插件可以实现。 Ionic Native 是这些插件的精选集。 我第一次使用 Ionic 是在 2013 年底。...确保打开 Xcode 完成安装 ,然后运行 ionic cordova emulate ios 在模拟器中打开应用。 可能会提示你安装 @ionic/cli-plugin-cordova 插件。...如果你看不到开发菜单,重新执行 这篇文章 中的方法使其生效。 ?...Nic Raboy 演示了在 Facebook 中的操作方法,他在 Ionic 2 移动 App 中使用了 OAuth 2.0 服务。...declare const window: any; 为了更容易的使用 OAuth 登录,可以添加以下方法。
所以,如果搜索Github上的源码,发现大多Cordova定位插件只封装第三方SDK的Android版本。...如果IOS需要定位功能,则大多会选用apache的通用Corodva定位插件cordova-plugin-geolocation。...换句话说,对于不少混合式应用来说,使用如下的组合方案: Android上第三方定位SDK封装的Cordova插件 + IOS上使用cordova-plugin-geolocation。...,所以也封装了第三方定位IOS版插件,如:cordova-plugin-baidumaplocation。...对于这些兼容Android和IOS的Cordova插件又是如何考量的?
的打印结果应该为:{{0, 0}, {375, 667}}, 然后6Plus和6S Plus的打印结果为:{{0, 0}, {414, 736}} 顿时感觉到这个应该是导致@medie样式对6和Plus不起作用的原因...3、所以为了解决这个问题,还得去更新Cordova提供的最新插件:Splashscreen Plugin 截图: ? ...官网关于icons和Splash Screens的介绍:http://cordova.apache.org/docs/en/latest/config_ref/images.html 3、cordova...更新的SplashScreen插件地址:https://github.com/apache/cordova-plugin-splashscreen 4、移动端H5页面之iphone6的适配:http:/...看到这里似乎有点明白了,原cordova只做了对4和5的适配,新的插件才做了对6和Plus的适配, 原文链接:http://www.cnblogs.com/tandaxia/p/4982495.html
系统提供的方法 navigationBar的setBarTintColor接口,用此接口也会改变statusBar的背景色 注意:一旦你设置了navigationBar的- (void)setBackgroundImage...的背景色,statusBar的背景色就会变成纯黑色。...另辟蹊径 创建一个UIView 设置该UIView的frame.size 和statusBar大小一样 设置该UIView的frame.origin 为{0,-20} 设置该UIView的背景色为你希望的...注意 1) appear.translucent配置在早期系统会崩溃,不建议配置,建议在ViewController中配置 2) 在translucent=true也就是透明时,barTintColor不起作用...,backgroundColor起作用 3) 在translucent=false也就是不透明时,barTintColor起作用,backgroundColor不起作用 4) 在translucent=
一、Cordova的基础点 在混合式应用中,我们通过现有的Cordova插件,可以轻松的在 H5 上调用手机native的功能。...现有的Cordova插件能满足平时大部分的开发需求,然而,有时候找不到合适的插件、或对找到的插件有不满意的地方,那就要动手去做或改写一个插件,这时候就要了解一些Cordova插件的相关知识。...那Cordova插件的基础要点是什么呢?其实就是把原生代码调用方法映射为js的统一接口,供H5使用而已....Cordova 自定义插件的官方文档 二、观察现有应用结构 打开任意一个基于Cordova技术的hybird app的开发目录,添加过平台(android、ios等)和安装过插件的话,你会发现结构大致是这样子的...,是和www目录中的MyToast.js关联打交道用的,至于MyToast.js和MyToast.java怎么关联,是由Cordova解释plugin.xml处理的,内部细节不需要知道,只需按方法格式编写即可
插件的使用方法 在cordova中使用以上插件的方法都是相同的,下面就以cordova-plugin-camera插件使用为例: 步骤1 - 安装相机插件 在命令提示符窗口中运行以下代码以安装此插件...Sample JavaScript实例 这个例子展示了一种实现插件 JavaScript 接口的方法: window.echo = function(str, callback) { cordova.exec...(cordova, webView); // your init code here } 插件还可以访问 Android 生命周期事件,并且可以通过扩展提供的方法(onResume、 onDestroy...使用 JavaScript 的 exec 函数分配给插件的任何内容都会传递到插件类的 execute 方法中。...这种方法只有在你确定没有其他插件会依赖于你引用的库(例如,如果库是特定于你的插件的)的情况下才能使用。 否则,如果另一个插件添加了相同的库,就有可能导致你的插件用户出现构建错误。
ionic1时期,除了使用cordova插件外,更方便使用插件是用ng-cordova,到了ionic2及以上,ng-cordova又演变成了ionic-native,ionic-native其实不是插件...ionic cordova plugin ls 当安装完cordova插件后,一般有两种方式调用cordova插件: 1、基于cordova常规调用方式 若DemoPlugin.doSomething...()为插件文档里的方法,则可以这样调用,在import之后,@Component之前加上declare的声明代码。...cordova插件源码,换句话说DemoPlugin点后面不会有相应的方法或对象,从而不能了解其使用信息。...这种方式的好处是,基于typeScript的class概念,每个方法属性都能较清楚地看到定义和说明。
(这里我写的一个插件的名字是 cordova-plugin-integrity-checking): ?...插件的主目录下面有两个文件夹(src和www)以及四个文件(LICENSE、package.json、plugin.xml、README.md),插件内部的排列是根据cordova规范来的,这里不多解释...cordova命令用的,请不要忽略~ plugin.xml:这个文件里面是以xml的形式定义了包的路径以及api(js)对应原生的调用方法......规范固定的写法,继承CordovaPlugin重写execute方法,你可以改,结果当然是不能用方法的形参图上已经说明,这儿就不必缀诉啦~ /** * Apk...以上两张图中,第一张图是在项目目录下打 "cordova plugin list"命令列出当前项目所用的所有的cordova插件,第二张图是在当前项目下将插件添加到项目中,只要不出现fail字样即插件添加成功
coolMethod,你把它替换成你插件里暴露出来的方法就好了。...这段代码干了什么呢,它向js的context里暴露了一个叫做showGestureLock的方法,它最终会唤醒你的本地插件来执行。你可以像调用一个普通的js函数一样去调用它。...简单来说,我们的插件需要提供暴露给js的方法,也就是这里的showGestureLock。然后在我的代码里,因为我希望我的应用去监听一系列的事件,比如应用被激活等。...所以我需要注册一些通知,Cordova提供了一个叫做pluginInitialize的方法,给你一个时机在插件初始化的时候做些事情,比如我这里的注册通知。...如果要删除一个插件的话也很简单,直接告诉它你需要删除的插件的id就好了: cordova plugin rm cordova-plugin-gesture-lock --save 添加完插件之后,你再去看你项目
/platform_metadata 打印: cordova -v 显示的是8.0.0,鉴于我原有项目在Cordova8下正常的,我便想是platform的问题,尝试移除android平台并重新添加...,结果还是不行,这时网上流传有两种方法: 1、重新安装cordova-plugin-add-swift-support插件; 2、把cordova降级; 看了下package.json没有cordova-plugin-add-swift-support...插件,所以选用第二种方法: sudo npm uninstall cordova -g sudo npm install cordova@7.1.0 -g 结果问题解决了!!...我又尝试回滚到Cordova8来验证: sudo npm uninstall cordova -g sudo npm install cordova -g ionic cordova platform...插件时报cordova/platform_metadata错误,那我把它移除再跑, 此时又在安装cordova-plugin-whitelist时报同样错误,那我再把它移除还报……然后我便懒得试了……
领取专属 10元无门槛券
手把手带您无忧上云