13

当我第一次启动我的应用程序时,使用 build.phonegap.com 构建然后分发到我的 Nexus 7(运行 Jelly Bean 4.3),我看到一个黑色的屏幕,顶部有一个灰色的标题栏。这是正常的,还是我需要启用/禁用设置?我可以说这个构建是一个调试构建(我不知道为什么,但是当我再次检查时,设置被检查)。

我很乐意提供任何需要帮助的见解,谢谢!如果有帮助,我还可以链接包含我的代码的 github 存储库。

有一张图:

图片

EDIT2:从后台运行的应用程序中清除应用程序后,也会发生这种情况。

4

7 回答 7

6

您的应用程序最终会显示还是只是保持空白?不能真正说出发生了什么,但很快就想到了一些事情。你在使用闪屏吗?查看有关启动画面持续时间部分的 config.xml 文档(仅限 Android)。可以在此处找到文档。

启动画面持续时间

  • 初始屏幕持续时间,以毫秒为单位
  • 默认为 5000(5 秒)
  • 例子:<preference name="splash-screen-duration" value="10000" />
  • 对于自动隐藏行为调用 navigator.splashscreen.hide(); 在设备就绪方法中
  • PhoneGap 2.1.0 及更高版本支持

尝试将持续时间设置为 0 ( <preference name="splash-screen-duration" value="0" />),看看会发生什么。

*再想一想,这可能不是闪屏问题,但值得一试。发布您的应用程序正在执行的一些代码(或按照建议共享 github),我会看看我能做什么。

于 2013-09-16T20:29:39.590 回答
5

这是在您的进程被分叉时 Android 显示的中间屏幕。黑屏只是您的主题定义的窗口背景。Android 开发专家 Cyril Mottier在这里有一篇关于这个主题的精彩文章。您可以按照文章中的说明对其进行自定义以使其看起来更好一些(基本上只是更改您的窗口背景,但要小心过度绘制)

于 2013-10-22T05:24:39.943 回答
5

2017年,这个问题的答案就简单多了:

config.xml将此行添加到您的声明中(就在widget读取的位下方xmlns:gap="http://phonegap.com/ns/1.0")。这告诉 PhoneGap 你想向 Android Manifest 添加一些东西:

xmlns:android = "http://schemas.android.com/apk/res/android"

然后在同一文件的某处添加下面的代码段。生成 APK 时,配置标签​​之间的所有内容都将由 PhoneGap 附加到 Android 清单中。这条小线只会让你的应用程序背景透明,这样黑色的加载屏幕就不会出现。

<config-file platform="android" parent="/manifest" mode="merge">
    <application android:theme="@android:style/Theme.Translucent.NoTitleBar"></application>
</config-file>
于 2017-04-20T16:27:31.490 回答
2

这可以通过在 Phonegap 的 config.xml 中添加以下行来解决:

<gap:config-file platform="android" parent="/manifest">
    <application android:theme="@android:style/Theme.NoTitleBar"></application>
</gap:config-file>
于 2015-07-09T13:05:25.420 回答
1

此屏幕是在加载 Web 视图之前包装您的 html 的 android 应用程序的窗口。应用的主题决定了它的布局。

但是,目前,您无法通过 config.xml 更改 android 主题。

这是 8 个月前打开的问题,这里是 phonegap 构建团队的答案:

我们已将您的请求添加到团队的待办事项中。由于量大,处理您的请求可能会有所延迟。请放心,我们没有忘记您的请求。您的反馈对我们非常有价值,因此请继续提供。

请注意,在 phonegap build 社区中,此请求也是在此处此处提出的,但开发人员的答案仍然含糊不清。

好吧,恐怕现在剩下的就是等待这个功能发布了。

在那之前,他们说的一种解决方法至少会缩短标题屏幕的长度:

<preference name="fullscreen" value="true" />

希望我能有所帮助!;)

于 2013-10-23T01:25:49.293 回答
1

添加到文件config.xml

<preference name="SplashScreenDelay" value="0"/>

我不能肯定地说,我的问题或多或少有所不同,但为我解决了。

于 2013-10-19T04:59:49.577 回答
1

我找到了一个对我有用的解决方案,并且与布拉德利的回答有关,你可以试试。

在您的项目下的“platforms\android”文件夹中,打开并在包含的标签内AndroidManifest.xml搜索并将默认值(即)更改为. 保存文件并再次构建您的项目,灰屏应该消失。android:theme<activity>android:name="MainActivity"android:theme="@android:style/Theme.DeviceDefault.NoActionBar"android:theme="@android:style/Theme.Translucent"

于 2018-01-16T03:18:22.700 回答