==========================================================
最新版Cordova CLI已经支持在config.xml中配置<splash> 和 <icon>,
CB-2606, CB-3571 Add support for <icon>, <splash>。设置如下:
<platform name="android">
<icon src="res/android/icon-36-ldpi.png" density="ldpi" />
<splash src="res/android/screen-xhdpi-portrait.png" density="port-xhdpi"/>
</platform>
具体可以参考官方文档:
Icons and Splash Screens
如果你本地安装了ImageMagick,CLI还会自动调用ImageMagick来做成不同尺寸的图像。
需要注意的是:
(1)图像的路径是相对于工程根目录不是根据www
(2)不要和PhoneGap CLI的设置混淆
==========================================================
(1)创建以下图像
以Android为例:
icon图像:
- www/res/icon/android/icon-36-ldpi.png - 36px x 36px
- www/res/icon/android/icon-48-mdpi.png - 48px x 48px
- www/res/icon/android/icon-72-hdpi.png - 72px x 72px
- www/res/icon/android/icon-96-xhdpi.png - 96px x 96px
splashscreen图像:
- www/res/screen/android/screen-ldpi-landscape.png - 320px x 200px
- www/res/screen/android/screen-mdpi-landscape.png - 480px x 320px
- www/res/screen/android/screen-hdpi-landscape.png - 800px x 480px
- www/res/screen/android/screen-xhdpi-landscape.png - 1280px x 720px
- www/res/screen/android/screen-ldpi-portrait.png - 200px x 320px
- www/res/screen/android/screen-mdpi-portrait.png - 320px x 480px
- www/res/screen/android/screen-hdpi-portrait.png - 480px x 800px
- www/res/screen/android/screen-xhdpi-portrait.png - 720px x 1280px
(2)给工程添加splashscreen插件
引用
> cordova plugin add org.apache.cordova.splashscreen
(3)配置config.xml
<preference name="SplashScreen" value="splash" /> <!-- 不带后缀png的文件名,默认是screen-->
<preference name="SplashScreenDelay" value="10000" /> <!-- Splash显示时间,默认是3000ms-->
<feature name="SplashScreen">
<param name="android-package" value="org.apache.cordova.splashscreen.SplashScreen" />
</feature>
相比于在config.xml中设置延迟时间,更应该在设备初始化完成后隐藏Splash画面(index.html)
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
navigator.splashscreen.hide();
}
(4)Copy文件
phonegap是可以在config.xml中配置icon和splash的,但是cordova不支持,需要在cordova build之后Copy文件,也可以通过创建hook来实现。
***phonegap的配置也局限于remote build的时候Phonegap Build起作用,local build也不起作用,需手动处理。参考
这里。
icon.png:
把www/res/icon/android下的文件Copy到相应的platforms/android/res/drawable*/下。
splash.png:
把www/res/screen/android下的文件Copy到相应的platforms/android/res/drawable*/下。
完成以后启动“cordova emulate android”即可。
phonegap的config.xml
<!-- Define app icon for each platform. -->
<icon src="icon.png" />
<icon src="res/icon/android/icon-36-ldpi.png" gap:platform="android" gap:density="ldpi" />
<icon src="res/icon/android/icon-48-mdpi.png" gap:platform="android" gap:density="mdpi" />
<icon src="res/icon/android/icon-72-hdpi.png" gap:platform="android" gap:density="hdpi" />
<icon src="res/icon/android/icon-96-xhdpi.png" gap:platform="android" gap:density="xhdpi" />
<icon src="res/icon/blackberry/icon-80.png" gap:platform="blackberry" />
<icon src="res/icon/blackberry/icon-80.png" gap:platform="blackberry" gap:state="hover"/>
<icon src="res/icon/ios/icon-57.png" gap:platform="ios" width="57" height="57" />
<icon src="res/icon/ios/icon-72.png" gap:platform="ios" width="72" height="72" />
<icon src="res/icon/ios/icon-57-2x.png" gap:platform="ios" width="114" height="114" />
<icon src="res/icon/ios/icon-72-2x.png" gap:platform="ios" width="144" height="144" />
<icon src="res/icon/webos/icon-64.png" gap:platform="webos" />
<icon src="res/icon/windows-phone/icon-48.png" gap:platform="winphone" />
<icon src="res/icon/windows-phone/icon-173.png" gap:platform="winphone" gap:role="background" />
<!-- Define app splash screen for each platform. -->
<gap:splash src="res/screen/android/screen-ldpi-portrait.png" gap:platform="android" gap:density="ldpi" />
<gap:splash src="res/screen/android/screen-mdpi-portrait.png" gap:platform="android" gap:density="mdpi" />
<gap:splash src="res/screen/android/screen-hdpi-portrait.png" gap:platform="android" gap:density="hdpi" />
<gap:splash src="res/screen/android/screen-xhdpi-portrait.png" gap:platform="android" gap:density="xhdpi" />
<gap:splash src="res/screen/blackberry/screen-225.png" gap:platform="blackberry" />
<gap:splash src="res/screen/ios/screen-iphone-portrait.png" gap:platform="ios" width="320" height="480" />
<gap:splash src="res/screen/ios/screen-iphone-portrait-2x.png" gap:platform="ios" width="640" height="960" />
<gap:splash src="res/screen/ios/screen-ipad-portrait.png" gap:platform="ios" width="768" height="1024" />
<gap:splash src="res/screen/ios/screen-ipad-landscape.png" gap:platform="ios" width="1024" height="768" />
<gap:splash src="res/screen/windows-phone/screen-portrait.jpg" gap:platform="winphone" />
分享到:
相关推荐
Cordova 3.x是其早期的一个版本,尽管现在已更新到更高版本,但理解基础版本对于学习移动开发历史和工作原理很有帮助。 在这个实例中,我们将探讨如何使用Cordova 3.x和Ionic框架创建一个Todo应用。Ionic是一个基于...
在“Cordova 3.x 基础(10) -- UI框架Ionic Framework”这篇博文中,作者可能详细介绍了如何将Cordova与Ionic结合使用,创建具有动态交互和原生性能的移动应用。可能涵盖的内容有: 1. **安装与设置**:讲解如何...
- `config.xml`:项目的配置文件,定义应用的信息,如名称、图标、启动画面等。 - `platforms`目录:包含了添加的各个目标平台的项目文件,每个平台有自己的特定构建系统。 - `plugins`目录:用于管理Cordova插件...
在本主题中,我们将深入探讨Cordova 3.x的基础知识,包括其工作原理、安装与配置、插件系统、以及如何创建和发布应用程序。 1. **Cordova简介** Apache Cordova 是Apache软件基金会的一个开源项目,它的核心理念是...
在Cordova 3.x版本中,这些功能对于开发者理解和构建混合应用至关重要。 1. 初始化过程: 当应用启动时,`cordova.js`首先处理初始化工作。它会监听页面加载事件,当DOM加载完成后,它会触发`deviceready`事件。这...
**Cordova 3.x 基础:Native API的使用** Cordova,作为一个开源的移动应用开发框架,允许开发者使用Web技术(HTML5、CSS3、JavaScript)来构建跨平台的移动应用程序。在Cordova 3.x版本中,开发者可以通过其提供的...
在“Cordova 3.x 基础(12) -- Plugin开发”这一主题中,我们主要探讨的是如何为Cordova应用开发自定义的插件。插件是Cordova生态系统的关键组成部分,它们允许开发者扩展Web应用程序的功能,使其能够充分利用设备...
实实在在经过ant编译的cordova-2.9.1.jar 而不是有些人坑蒙拐骗的rar文件
cordova-plugin-app-update App updater for Cordova/PhoneGap Demo Try it yourself: Just clone and install this demo. cordova-plugin-app-update-DEMO :tada: 如果喜欢它,请别忘了给我一颗鼓励的星 Support ...
在本书中,作者rensanning将带领读者入门Cordova 3.x,涵盖了基础知识点、实用插件、源码分析和实例开发等方面的内容。 首先,作者介绍了如何在Windows和Android环境下搭建Cordova开发环境,这是开发移动应用的第一...
Cordova 3.x 是一个流行的开源框架,它允许开发者使用Web技术(如HTML5、CSS3和JavaScript)来构建原生移动应用。这个框架通过桥接技术将Web应用与设备的API连接,使得Web开发者可以访问手机的各种功能,如摄像头、...
Cordova 3.x 实用插件(2) -- 二维码Barcode Cordova 是一个流行的开源框架,用于构建原生移动应用程序,它允许开发者使用Web技术(HTML、CSS和JavaScript)来开发跨平台的应用。在Cordova 3.x版本中,开发者可以...
标题 "Cordova 3.x 实用插件(4) -- Android的SEND、VIEW、CALL(WebIntent)" 涉及的是使用Cordova框架在Android平台上开发混合移动应用时,如何利用WebIntent插件实现与Android原生功能的交互。这篇博客文章详细...