画三角形报错bad_Alloc 原因,回调用错

surfaceCreated(SurfaceHolder holder)和:onSurfaceCreated(GL10 gl, EGLConfig c)是Android OpenGL ES开发中涉及Surface管理的两个关键方法,但它们属于不同类别的回调函数:

surfaceCreated(SurfaceHolder holder)

  • ‌所属类 ‌:SurfaceHolder的回调方法,用于监听Surface创建事件。当SurfaceView的Surface被创建时触发,通常用于初始化渲染线程或资源。 ‌
  • ‌典型用法 ‌:在SurfaceHolder.addCallback(this)中注册回调,确保在Surface可用后进行绘制操作。

onSurfaceCreated(GL10 gl, EGLConfig c)

  • ‌所属类‌:EGL的初始化回调,用于EGL配置完成后的初始化操作。通常在EGL初始化流程中调用,与OpenGL ES渲染线程相关。 ‌

关键区别

  1. ‌触发时机 ‌:surfaceCreated在Surface生命周期开始时触发;onSurfaceCreated在EGL配置完成后调用。
  2. ‌应用场景‌:前者用于自定义视图渲染或相机预览;后者涉及OpenGL ES的底层配置和渲染线程初始化。 ‌
  3. ‌线程安全 ‌:surfaceCreated需在非UI线程操作;onSurfaceCreated需在EGL初始化线程中调用。 ‌
相关推荐
应用市场1 小时前
不用一张图片的像素小游戏:小人是字符串,房间是矩形,平衡靠两千个假玩家
android·kotlin·游戏开发
stevenzqzq2 小时前
android 对渠道的理解
android
QEasycloud2 小时前
BOM接口抛转失败钉钉通知策略实战教程:MySQL异常日志到钉钉消息的端到端配置
android·mysql·钉钉
AIsoft_86893 小时前
医患交流内容如何做好记录?
android·iphone
蒸鱼Yuzheng3 小时前
Android Native 崩溃证据链:Tombstone、Build ID 与 Trace 如何联合归因
android·ndk·tombstone·调试符号·崩溃分析
事圆则缓3 小时前
Kotlin 变量与函数:把页面状态和行为写成清楚的契约
android·开发语言·kotlin
hunterandroid3 小时前
MVVM 迁移到 MVI:复杂页面状态如何收敛
android
妖星4 小时前
Android 开机动画定制:从 bootanimation.zip 到源码编译
android
临期冰淇淋5 小时前
MTK平台 安卓16 GMS报错修改
android·java·前端
mmsx5 小时前
Android 模块化三件套:轻量组件化、宿主插件双形态、AIDL 隔离
android·网络·组件化·aidl