使用 Emteria OS 将多设备应用程序部署到 RaspBerry Pi 3 时出现异常

Exception deploying multi-device app to RaspBerry Pi 3 with Emteria OS

出于测试目的,我在 Raspberry Pi 3 上试用了 Emteria OS。Emteria 版本是基于 7.1 android 版本的 0.6.1。

我使用 C++ 构建器创建了一个简单的多设备项目。该表单仅包含一个标签。我尝试将该应用程序部署到我的 RaspBerry Pi 目标 Android 平台并通过以太网使用 ADB。

当应用程序在 RaspBerry Pi 中执行时,我看到了 EContext3DException。我尝试研究为什么我通过网络到达此异常,但找不到有关此异常的有趣信息。

所以我不知道问题出在 OS 还是我错过了某处的配置。

作为 Emteria 的回复,使用 OpenGL 2.0 的 Raspberry GPU 与 RAD Studio 之间存在一些不兼容问题。

在 Raspberry 支持 OpenGL 3.0 之前似乎是同样的问题,因为我认为 embarcadero 不会花时间与 OpenGL 2.0 库兼容。

有一个解决方法。 SanderK 通过 emteria 论坛传达了此解决方法。

您需要在您的 embarcadero 安装目录的源文件夹中找到文件 FMX.Context.GLES.pas 并找到代码行:

if Flag <> GL_NO_ERROR then

将此行替换为:

if (Flag <> GL_NO_ERROR) and (Flag <> GL_INVALID_VALUE) then

之后需要将这个修改后的文件添加到你的项目中,然后编译。