跳到内容
CrossFly 是 100% 开源在 GitHub 关注我们
CrossFlyCrossFly
开始使用

本页面由葡萄牙语机器翻译,可能存在错误。葡萄牙语版本为准。

平台特定问题

只在某个目标平台上出现的行为。格式:症状 → 原因 → 修复。

Android:内容被状态栏遮挡

原因: 没有应用状态栏的偏移 difY / 高度。 修复: 在顶部布局中考虑 DeviceConfig.statusbarHeight。 (Android)

虚拟键盘遮住了聚焦的字段

原因: 键盘弹起时字段没有重新定位。 修复: 根据 Device.keyboardShift/keyboardHeight 进行调整。 (第 6 章 —— 事件与输入)

iOS:构建失败(RoboVM)

原因: 工具链/签名(macOS+Xcode、provisioning)。 修复: 检查 iOS launcher 以及证书/provisioning。(iOS)

设备权限被拒绝(摄像头/GPS/存储)

原因: 权限未授予 / 未声明。 修复: 检查 DeviceConfig.cameraAllowed/storageAllowed,并在 AndroidManifest.xml/Info.plist 中声明;在启动 UI 之前于运行时请求权限(Android 上延迟启动)。 (第 24 章)

蓝牙“什么都不做”

原因: 在 core 中,BLE 的部分只是基于缓存的骨架——真正的射频运行在各平台的 launcher 中。 修复: 在真实设备上测试;确认目标平台的实现。 (Bluetooth BLE)

FilePicker / IWebView 没有效果(或 web 上的 WebContainer)

原因: 某些目标平台上只有骨架/没有具体实现;在 web 上 createWebView() 返回 null。 修复: 检查 != null/Device.platform 并使用替代方案(Device.homeFolder 中的文件;web 上使用 PlatformUtils.instance.view(url))。(原生集成)

各平台之间颜色/渲染有差异

原因: 通常是 Screen.scale/密度。 修复: 使用逻辑像素和 Relative,绝不要把 Gdx.graphics 当作尺寸参照。 (响应式)

另请参阅

这个页面有帮助吗?