【发布时间】:2016-01-31 17:28:08
【问题描述】:
我最近决定在 PhoneGap 上工作,以便在多个设备上编写应用程序。每次我尝试使用插件时,它都会在谷歌上进行数小时和数百次搜索后工作......有时它对我来说根本不起作用。所以我可能对PhoneGap的基础知识不太了解。
我们来说说一个简单的插件,闪屏插件 (https://github.com/apache/cordova-plugin-splashscreen)。
关于插件说明,我知道我需要在 config.xml 中编写这些行:
<preference name="SplashScreen" value="foo" />
<preference name="SplashScreenDelay" value="3000" />
<preference name="SplashMaintainAspectRatio" value="true|false" />
<preference name="SplashShowOnlyFirstTime" value="true|false" />
但是,如果您阅读 Android 部分 (http://cordova.apache.org/docs/en/dev/config_ref/images.html) 中的链接中的说明,我应该在 config.xml 中写下这些行:
<platform name="android">
<!-- you can use any density that exists in the Android project -->
<splash src="res/screen/android/splash-land-hdpi.png" density="land-hdpi"/>
<splash src="res/screen/android/splash-land-ldpi.png" density="land-ldpi"/>
<splash src="res/screen/android/splash-land-mdpi.png" density="land-mdpi"/>
<splash src="res/screen/android/splash-land-xhdpi.png" density="land-xhdpi"/>
<splash src="res/screen/android/splash-port-hdpi.png" density="port-hdpi"/>
<splash src="res/screen/android/splash-port-ldpi.png" density="port-ldpi"/>
<splash src="res/screen/android/splash-port-mdpi.png" density="port-mdpi"/>
<splash src="res/screen/android/splash-port-xhdpi.png" density="port-xhdpi"/>
</platform>
我尝试了这两个指令,但它不起作用。我还发现了有关 PhoneGap Build 的其他说明,我想在 config.xml 中编写这些留置权:
<splash src="ldpi.png" platform="android" qualifier="ldpi" />
<splash src="mdpi.png" platform="android" qualifier="mdpi" />
<splash src="hdpi.png" platform="android" qualifier="hdpi" />
<splash src="xhdpi.png" platform="android" qualifier="xhdpi" />
<splash src="fr-xhdpi.png" platform="android" qualifier="fr-xhdpi" />
<splash src="portrait-xxhdpi.png" platform="android" qualifier="port-xxhdpi" />
<splash src="landscape-xxhdpi.png" platform="android" qualifier="land-xxhdpi" />
更让我困惑的是,如果我检查 PhoneGap 生成的“默认”config.xml,我会发现以下几行:
<gap:splash src="www/res/screen/android/screen-ldpi-portrait.png" gap:platform="android" gap:qualifier="port-ldpi"/>
<gap:splash src="www/res/screen/android/screen-mdpi-portrait.png" gap:platform="android" gap:qualifier="port-mdpi"/>
<gap:splash src="www/res/screen/android/screen-hdpi-portrait.png" gap:platform="android" gap:qualifier="port-hdpi"/>
<gap:splash src="www/res/screen/android/screen-xhdpi-portrait.png" gap:platform="android" gap:qualifier="port-xhdpi"/>
如您所见,有时源文件以“www”或“res”开头,有时我们在<platform> 元素或平台内有一个<splash> 是<splash> 元素的属性。<splash> 和 <gap:splash> 元素有什么区别?
我对 PhoneGap API、PhoneGap Build API 和插件网页中的说明感到非常困惑。
我在 Mac 上使用 PhoneGap 5.3.9。 我使用 Android PhoneGap 应用或 PhoneGap Build (cli-5.2.0) 测试我的应用。
【问题讨论】:
标签: javascript cordova