- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个 libgdx 应用程序。当我使用 libgdx 1.1.4 和 robovm 1.0.0.Beta 版本时,它曾经在 Android 和 IOS 上运行良好。最近我升级到 libgdx 1.6.3 和 robovm 1.4。现在 Android 版本运行良好,但 IOS 应用程序存在一些小故障。问题是,如果我按主页按钮暂停应用程序然后恢复它,我会看到黑屏。应用程序不会崩溃。我也没有在日志中看到任何内容。
有人知道会发生什么吗?
如果有任何帮助,我将不胜感激。提前致谢。
__更新__
令我震惊的是,当我继续游戏时,没有调用任何恢复方法(XXXGame 类和 XXXScreen 类中的方法)。准确地说,我在所有这些方法中都有日志语句,以查看程序流程如何进行。我在暂停游戏时看到日志,但在恢复游戏时什么也看不到。
这在我看来是一个基本问题,因为如您所知,resume 方法是 libgdx 生命周期方法的一部分,无论如何都应该调用。问题不能出在 libgdx 端,因为应用程序在 Android 上运行良好。所以,我想知道 robovm 方面是否有问题。我错过了什么吗?
__UPDATE2__
我用gui新建了一个libgdx工程,看看在IOS平台上是否出现同样的问题。看起来 pause-resume-pause-resume 在新项目上运行良好。所以我开始将新项目与我的进行比较。我的游戏类继承自 com.badlogic.gdx.Game 但新项目的游戏类实现了 com.badlogic.gdx.ApplicationAdapter。我已经更改它以使它们匹配。它没有破坏新项目。
默认实现缺少 Game 类的 resume 方法。所以我添加了以下内容:
@Override
public void resume() {
// super.resume();
Gdx.app.log("Testing", "resume");
}
令我惊讶的是,在日志中,我看到两组简历消息如下:
2015-07-01 08:05:52.435 IOSLauncher[54152:2661071] [debug] IOSApplication: created
2015-07-01 08:05:52.706 IOSLauncher[54152:2661071] [debug] IOSApplication: resumed
2015-07-01 08:05:59.093 IOSLauncher[54152:2661071] [debug] IOSApplication: paused
2015-07-01 08:05:59.093 IOSLauncher[54152:2661071] [info] Testing: pause
2015-07-01 08:06:00.670 IOSLauncher[54152:2661071] [debug] IOSApplication: resumed
2015-07-01 08:06:00.670 IOSLauncher[54152:2661071] [info] Testing: resume
2015-07-01 08:06:04.587 IOSLauncher[54152:2661071] [debug] IOSApplication: paused
2015-07-01 08:06:04.587 IOSLauncher[54152:2661071] [info] Testing: pause
2015-07-01 08:06:06.640 IOSLauncher[54152:2661071] [debug] IOSApplication: resumed
2015-07-01 08:06:06.640 IOSLauncher[54152:2661071] [info] Testing: resume
2015-07-01 08:06:09.300 IOSLauncher[54152:2661071] [debug] IOSApplication: paused
2015-07-01 08:06:09.300 IOSLauncher[54152:2661071] [info] Testing: pause
我不确定这个 IOSLauncher[54152:2661071] [debug] IOSApplication: resumed 行记录在哪里。我在防止它的方法中注释掉了 super.resume() 但它没有帮助。
我检查了我自己的应用程序,看看我是否得到了类似于 IOSLauncher[54152:2661071] [debug] IOSApplication: resumed 的东西,但我不能。
当我摆弄代码并记录我在这里所做的事情时,我发现了问题。我很快就会把它贴在这里。
最佳答案
我发现了问题。我将在这里记录它,希望它可以为其他人节省时间。
以下方法来自 IOSLauncher.java(在 IOS 项目中)
@Override
public void didBecomeActive (UIApplication application) {
FacebookManager.getInstance().handleDidBecomeActive(application);
}
@Override
public void willTerminate (UIApplication application) {
FacebookManager.getInstance().handleWillTerminate(application);
}
以上代码在早期版本的 libgdx/robovm 上运行良好,没有任何故障。实际上我已经做了robovm IOS bindings中提到的任何事情那时。不过现在是走投无路了。以下对这些方法的更改解决了问题:
@Override
public void didBecomeActive (UIApplication application) {
super.didBecomeActive(application);
FacebookManager.getInstance().handleDidBecomeActive(application);
}
@Override
public void willTerminate (UIApplication application) {
super.willTerminate(application);
FacebookManager.getInstance().handleWillTerminate(application);
}
我感谢所有花时间就此问题分享宝贵意见的人。
关于java - 在 IOS 上恢复后 robovm 黑屏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31148836/
首先,我非常感谢您对这里发布的疑问的支持和回应。 我正在开发一个需要访问图库和相机的应用程序,因为它有一个用户配置屏幕。 我相信我对如何使用 RoboVM 完成这样的事情有足够的研究,并发现: Wha
关闭。这个问题不符合Stack Overflow guidelines .它目前不接受答案。 我们不允许提问寻求书籍、工具、软件库等的推荐。您可以编辑问题,以便用事实和引用来回答。 关闭 4 年前。
每次运行使用 libgdx/robovm 构建的应用程序时,我都会遇到问题。构建成功,但每次打开应用程序时,我都会得到以下堆栈跟踪: java.lang.NoClassDefFoundError: o
我有一个使用 libGDX 开发并使用 robovm 移植到 iOS 的应用程序。这是完美的工作。然后我更新了我的配置文件以允许导出到另一台设备。执行此操作时,我现在得到 2 个在 robovm 中列
我正在尝试将我的 libgdx 游戏导出到 .ipa。首先我得到这样的错误: No signing identity found matching 'iPhone Distribution: Alon
我想在 roboVM 项目中定义一个观察者。为此,我使用键值观察器功能。这是我的代码: button.setTitle("Click me!", UIControlState.Normal);
我一直很感兴趣地关注用于 iOS 开发的 RoboVM。有人可以向我指出在 iOS 上运行时您的 JavaFX(或您使用的任何技术)的限制吗? 比如,你会用Spring吗?我想这永远不可能,因为 Ro
我想知道如何使用 RoboVM 在 Java 中检查手机是否正在充电。没什么好说的,问题很简单。 最佳答案 我自己找到了问题的答案。以下是在 RoboVM 中获取电池状态的方法: UIDeviceBa
我已经安装了 robowm 并创建了官方网站上提供的示例应用程序。 它在 3.5 英寸屏幕尺寸的模拟器上完美运行,但当我使用 4 英寸模拟器或 iPhone 5 测试时,屏幕顶部和底部出现黑条。 ro
如果我使用任何非空参数调用以下 RoboVM 方法: public static void runOnUiThread(final Runnable runnable) { System.ou
我希望这是问这个问题的正确地方: 我一直在尝试通过 RoboVM (libGDX) 让 chartboost 在 iOS 上工作我正在使用 RoboVM 的 Mobidevelop 分支,所以我现在唯
这是我的问题.. 直到今天早上我收到苹果支持团队的一封电子邮件说我有(预安装的)的 xcode 受到损害,所以为了缩短事情我不得不重新安装x代码。在这样做并更新 android studio 的 ro
我可以使用 LibGDX 0.9.9 和 RoboVM 0.0.7 编译和运行我的游戏 我已经能够为应用程序商店提交构建一个 ipa。使用 Application Loader 上传我的应用程序时,我
我正在尝试配置 RoboVM 来为 iOS 构建我的 LibGDX 项目。 在我的build.gradle project(":ios") { apply plugin: "java"
我搜索了一下,发现编辑 build.gradle 是这样的 project(":ios") { apply plugin: "robovm" ..... robovm {
我正在尝试将 Google Analytics RoboVM 绑定(bind)实现到我的项目中。 我尝试使用从 http://libgdx.badlogicgames.com/robovm-ios-b
我正在使用 Robovm 开发 ios 移动应用程序。我需要在我的应用程序中使用 Firebase。有没有办法在 Robovm 中使用 Firebase? 最佳答案 更新:我们已将 Firebase
我正在尝试使用 httpurlconnection 从 Facebook 下载头像图像。这在安卓上运行良好。如果我从非 SSL 服务器下载任意图像,它也可以在 iOS 上使用 robovm 运行。如果
我正在尝试导入 RoboVM 绑定(bind)以在我的项目中实现 mopub,但是当我尝试“构建模型”时遇到了问题。我尝试将其导入为 gradle 项目,但是当我构建它时,出现错误: "Error i
我有一款使用 LibGDX 的安卓游戏。在其中,我有一些用于在浏览器中打开 URL 的按钮: Intent intent = new Intent(Intent.ACTION_VIEW, Uri.pa
我是一名优秀的程序员,十分优秀!