0

エミュレータで意図的に OpenGL ES 2.0 アプリケーションを実行しています。これが失敗するはずであることはわかっていますが (実際に失敗することもあります)、プログラムでエラーをキャッチする方法を知りたいと思っていました。

私は HelloOpenGLES20 チュートリアル コードを使用しているので、ここに再投稿する必要はないと思います。Android 4.0.3 (バージョン 15) コード ベースを使用しています。

つまり、このエラーをキャッチするのに十分なほど堅牢なアプリを作成するにはどうすればよいでしょうか? (たとえば、私が OpenGL 2.0 と 1.0 の両方のサポートを提供し、2.0 を実行できない場合は 1.0 のコードにフォールバックしたいと思うほどクレイジーだったとします。API のバージョンを確認するように言わないでください。この特定のエラーを検出する方法に対処します)

みんな、ありがとう

4

1 に答える 1

0

一般に、エラーを検出しないことをお勧めします。代わりに、使用したい特定の機能をテストして、エラーを防ぐことをお勧めします。

この特定のケースでは、システムが OpenGL ES 2.0 をサポートしているかどうかを確認します。

ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);    ConfigurationInfo configurationInfo = activityManager.getDeviceConfigurationInfo();    
boolean supportsEs2 = configurationInfo.reqGlEsVersion >= 0x20000;
于 2012-04-08T19:15:25.483 に答える