我无法在Android或iOS中使用启动画面。
我正在使用PhoneGap Build,我已经设置了这样的config.xml,现在适用于v3.0.0。
<?xml version="1.0" encoding="UTF-8" ?>
<widget xmlns = "http://www.w3.org/ns/widgets"
xmlns:gap = "http://phonegap.com/ns/3.0.0"
id = "myid"
version = "1.0.0">
<name>myname</name>
<description>
mydesc
</description>
<author>
</author>
<preference name="permissions" value="none"/>
<preference name="DisallowOverscroll" value="true"/>
<preference name="android-minSdkVersion" value="14" /> <!-- JB 4.0 -->
<preference name="fullscreen" value="true" />
<icon src="icon.png" />
<gap:platform name="ios" />
<gap:platform name="android" />
<gap:splash src="splash.png" gap:platform="ios" width="320" height="480" />
<gap:splash src="splash.png" gap:platform="android" width="320" height="480" />
</widget>
我已经取出了个人信息。
该应用程序工作正常,但我从来没有使用启动画面,即使它适用于PhoneGap 2.7.0和2.9.0以及Android。
splash.png和icon.png目前实际上是相同的图像。我试过不同的尝试。我最近才开始在iOS上进行测试,而且iOS中似乎只出现了PhoneGap Build默认图标,我决定需要自定义启动画面。
我找不到使用标签的地方或方式的示例,除了官方文档,甚至在那里他们展示了一个示例config.xml和标签,但他们没有说明放在哪里或者是否有其他规则。
答案 0 :(得分:2)
适用于iOS
您需要将启动画面图像复制到平台目录中,它们不会自动从www/res/
复制。
对于iOS,这将是:
platform/ios/[name of your project]/splash/
这些应该是PhoenGap的默认启动画面。
适用于Android
文档似乎有点缺乏。但您需要在platform/android/res
文件夹中创建相关文件夹。这些应该是:
在这些文件夹中,您需要上传启动画面,确保它名为splash.png,否则应用程序将无法选择它。
最后一个重要的步骤是,您需要将以下行添加到主Activity文件中,这可以在您的android项目文件夹中找到,并且将被命名为与您的应用程序相同的名称。该文件扩展了Cordova默认活动文件,该文件说明了扩展和添加启动画面。该文件将是:
platforms/android/src/com/[your app name]/[your app name].java
看起来应该是这样的:
package com.your.project;
import android.os.Bundle;
import org.apache.cordova.*;
public class YourProject extends CordovaActivity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
super.init();
// Set by <content src="index.html" /> in config.xml
super.loadUrl(Config.getStartUrl());
//super.loadUrl("file:///android_asset/www/index.html")
}
}
但需要改为:
package com.your.project;
import android.os.Bundle;
import org.apache.cordova.*;
public class YourProject extends CordovaActivity
{
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
super.init();
// Set by <content src="index.html" /> in config.xml
super.setIntegerProperty("splashscreen", R.drawable.splash);
super.loadUrl(Config.getStartUrl());
//super.loadUrl("file:///android_asset/www/index.html")
}
}
请注意添加的附加行:
super.setIntegerProperty("splashscreen", R.drawable.splash);
官方文档在这里http://docs.phonegap.com/en/3.3.0/config_ref_images.md.html#Icons%20and%20Splash%20Screens,但它似乎没有涵盖所有必要的步骤。
答案 1 :(得分:0)
根据您在问题下面的评论,我推荐这里。
<gap:splash src="splash.png" />
现在,您将拥有一个坚实的黑色闪屏,看起来没有闪屏。
答案 2 :(得分:0)
所以这个问题现在似乎已经解决了。
从我最初的问题中可以看出,我编写的配置错误。 PGB版本选择代码不应该是“xmlns:gap =”http://phonegap.com/ns/3.0.0“但是:
<preference name="phonegap-version" value="3.0.0" />
我确实责备PGB,因为文档不清楚(尽管它们正在改进)。
无论如何 - get your splash screens working use the info here。
我现在正在使用PGB 3.3.0,看起来一切都很好。