我有一个支持OpenGLES2.0(HTC的愿望)的设备,当然在设备上部署应用比在模拟器上更快。默认的android模拟器不支持2.0,androidx86项目和类似的androbox项目不支持本机代码(ndk),所以即使hello jni崩溃在它们上面(除了hello-gl2 sample ofc之外,所有的示例在Standart AVD上都可以正常工作),不知道是否支持OpenGL ES 2.0,请告诉我。
那么,如果有一个以本机方式(ndk)开发的OpenGL2.0支持——如何在没有设备的情况下测试应用程序?
你不能在设备上测试一下吗?我不认为我真的需要使用模拟器。
好吧,我知道,但我不是只有Dev一个人,至少还有一个人,他还没有任何Android设备。如果我的设备坏了,我该怎么办?买新的/修理的很好,但总有一些选择。
@Jamesmclaughlin只有在你有设备的情况下才是一个选项。
@Jashaszun如果你不这样做,并且你成功地开发和发布了一个应用程序,我向你致敬。
@Jamesmclaughlin这正是我希望做的,因为我买不起Android手机。:)
Android Emulator是否支持OpenGL ES 2.0?
Emulator现在支持OpenGL:http://android-developers.blogspot.com/2012/04/faster-emulator-with-better-hardware.html
在创建AVD时,请确保添加GPU仿真硬件属性并将其设置为"是"(根据下面的链接):
http://developer.android.com/tools/devices/emulator.html
我可以证实这一点。默认情况下不启用,您必须自己启用它。然后,您可以运行ndk附带的示例"hello-gl2"来验证您是否愿意。
@我不能证实这一点。根本不适合我。我在我的个人资料中发布了一个类似的问题,处理常见的开放式GL2 Android错误(NullPointerException),如果您知道更多信息,请查看它。
更新:正如stackoverflow用户所说,Android模拟器现在支持OpenGL ES 2.0(2017年2月)
https://sites.google.com/a/android.com/tools/recent/androidemulatorevision2530feb2017
正如谷歌自己所说,在正式的Android文档中,Android模拟器还不支持OpenGLES2.0功能。
请参阅这份正式文件。
http://developer.android.com/resources/tutorials/opengl/opengl-es20.html
我希望这能回答你的问题。
对于Opengles20模拟器,可以使用genymotion网址:www.genymotion.com/
好吧,我明白这一点——读我的第一篇文章,质疑是否存在某种支持OpenGLES和本机代码的替代模拟器。
根据我在OpenGLES2.0上1年深入开发NDK的经验,不,没有办法。:(最好的方法是在设备上进行测试,即使模拟器支持着色器,也可以通过有效的方式减慢运行速度。
现在已经不是这样了,有了ADT 17及更高版本和4.0.3 Rev 3 SDK,您可以使用OpenGL支持创建AVD。
从那根链环上取下1[0]lol
这个答案现在已经过时了。Emulator支持OpenGL2.0。网址:google.com/a/android.com/tools/recent/…
截至2017年2月,Emulator 25.3.0完全支持OpenGL 2.0。
https://sites.google.com/a/android.com/tools/recent/androidemulatorevision2530feb2017
Fully GLES 2.0 compliant. Given a host GPU that has conformant desktop OpenGL drivers, the emulator now passes 100% of CTS dEQP-GLES2 must-pass.
在它稳定之后,假设没有关键的bug,您应该能够用它进行测试。
您可以使用当前发布的基于Intel的模拟器。只需更新您的SDK,您也可以在模拟器上运行开放式GL应用程序。
你能提供更多关于你评论的细节吗?
如果您遇到问题,可以参考此链接stackoverflow.com/questions/10761696/…
有一个用于Android的英特尔模拟器吗?哦,尼斯