ios - MobileGestalt 无法访问 InverseDeviceID

标签 ios

当我尝试在装有 iOS10.3iPhone7+ 上使用 OpenGLES 时,每个应用程序都会出现这种情况。但它在我的 iPhone7 iOS10.1 上运行没有任何问题。

这是我收到的消息:

libMobileGestalt MobileGestaltSupport.m:153: pid 304 (OpenGLES_Ch4_1) does not have sandbox access for ... and IS NOT appropriately entitled 
libMobileGestalt MobileGestalt.c:549: no access to InverseDeviceID 

有人知道这些消息吗?


请问是iOS10.3的bug还是什么?因为当我在 iPhone5s iOS10.2 上运行应用程序时,这些消息没有显示在屏幕上。当我将手机升级到 iOS10.3.1 时,按摩再次显示。

之所以问这个问题是因为有些动画效果在我的iPhone7+上表现的很卡,但是在iPhone5s上完全流畅。不过现在看来和上面的信息和卡死没有关系,得检查一下我的iPhone7+了……

最佳答案

我遇到了同样的问题。事实证明是多个线程访问同一个 OpenGLES 相关资源,具体来说是 EAGLContext。我猜有可能是 OpenGLES 相关代码不是线程安全的,并且它在不同的操作系统版本/iPhone 7/7+ 中表现不同,有时它会弄乱内存。

确保数据访问跨线程同步后,问题就消失了。

关于ios - MobileGestalt 无法访问 InverseDeviceID,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43197726/

相关文章:

ios - 检测 iOS 图像数据是 HEIF 还是 HEIC

html - iOS iframe 问题

ios - stdargs [va_start()、va_arg() 等] 在 arm64 上损坏了吗?

ios - 当应用程序在没有 Xcode 的情况下运行时,IB 中的 GLKView 会导致崩溃

ios - UILabel负行间距

ios - UIButton 不受 UITapGestureRecoginzer 的影响。

ios - ios推送通知续订

iphone - 将数据保存一段时间(例如 4-5 天)的最佳方法

ios - FMDB 不能快速工作?

iphone - iOS 多任务手势 - 禁用/启用