日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 运维知识 > Android >内容正文

Android

Android OpenGL动态壁纸问题总结

發(fā)布時間:2024/3/26 Android 50 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Android OpenGL动态壁纸问题总结 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
  • 打開動態(tài)壁紙時一直顯示動態(tài)壁紙正在加載
  • 報錯信息: 無!(這是最難受的 /(ㄒoㄒ)/~~ )。
    問題原因: 粗心導(dǎo)致!把本應(yīng)返回的MyEngine對象寫成了Engine
    問題代碼塊:

    public class MyGLWallpaperService extends WallpaperService {@Overridepublic Engine onCreateEngine() {return new Engine();//<---------------就是這里}class MyEngine extends Engine{//......} }

    問題代碼: return new Engine();
    解決辦法: 將onCreateEngine()方法中返回的Engine改成MyEngine

    總結(jié):本來百思不得其解,百度亦不得其解,但在不經(jīng)意間掠過了代碼的某一處就發(fā)現(xiàn)問題所在,真是造化弄人啊!所以同志們,在遇到這種bug時先不要worry,可能只是緣分未到,一定要按時睡覺!!!

  • 打開動態(tài)壁紙時程序直接崩潰,顯示xxxActivity已停止運行
    報錯信息: A/libc: Fatal signal 11 (SIGSEGV), code 1, fault addr 0x0 in tid 2128 (GLThread 115)
    問題原因: GLThread報錯,具體未知(如果有知道的,歡迎評論指教)。
    問題代碼塊:
  • class MyEngine extends Engine{GLSurfaceView glView = null;MyRender render = null;//......private void onCreate(SurfaceHolder holder){super.onCreate(holder);glView = new GLSurfaceView(MyGLWallpaperService.this);final ActivityManager activityManager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);final ConfigurationInfo configurationInfo = activityManager.getDeviceConfigurationInfo();final boolean supportsEs2 = configurationInfo.reqGlEsVersion >= 0x20000||(Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH_MR1)&&(Build.FINGERPRINT.startsWith("generic"))|| Build.FINGERPRINT.startsWith("unknow")|| Build.MODEL.contains("google_sdk")|| Build.MODEL.contains("Emulator")|| Build.MODEL.contains("Android SDK built for x86");//通知默認的EGLContextFactory和默認的EGLConfigChooser選擇哪個EGLContext客戶端版本。if(supportsEs2){glView.setEGLContextClientVersion(2);//<-------------------問題在這里render = new MyRender(MyGLWallpaperService.this);glView.setRenderer(render);}else{Toast.makeText(MyGLWallpaperService.this ,"This device does not support OpenGL ES 2.0",Toast.LENGTH_LONG).show();}}//......}

    問題代碼: glView.setEGLContextClientVersion(2);
    解決辦法: 將glView.setEGLContextClientVersion(2);刪掉。

    總結(jié):適合別人的代碼不一定適合自己!

    總結(jié)

    以上是生活随笔為你收集整理的Android OpenGL动态壁纸问题总结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。