E / EGL_emulation:tid 2633:eglSurfaceAttrib(1165):错误0x3009(EGL_BAD_MATCH)

时间:2016-12-18 11:27:03

标签: android android-studio

嗨我在Android编程时很虚伪,然后我在构建应用程序时遇到了一些问题。 我尝试用这个xml代码构建应用程序:`

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:id="@+id/activity_main"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    tools:context="com.ebookfrenzy.androidsample.MainActivity">

    <EditText
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:inputType="textPersonName"
        android:text="@string/Namestring"
        android:ems="10"
        android:layout_above="@+id/button"
        android:layout_centerHorizontal="true"
        android:layout_marginBottom="28dp"
        android:id="@+id/editText" />

    <Button
        android:text="@string/PressMeString"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:id="@+id/button"
        android:layout_centerVertical="true"
        android:layout_centerHorizontal="true"
        android:textAllCaps="false" />
</RelativeLayout>

然后我在ADV机器中遇到了这个错误:

$ adb shell am start -n "com.ebookfrenzy.androidsample/com.ebookfrenzy.androidsample.AndroidSampleActivity" -a android.intent.action.MAIN -c android.intent.category.LAUNCHER
Connected to process 2542 on device emulator-5554
I/art: Not late-enabling -Xcheck:jni (already on)
W/System: ClassLoader referenced unknown path: /data/app/com.ebookfrenzy.androidsample-1/lib/x86_64
I/InstantRun: Instant Run Runtime started. Android package is com.ebookfrenzy.androidsample, real application class is null.
W/System: ClassLoader referenced unknown path: /data/app/com.ebookfrenzy.androidsample-1/lib/x86_64
W/art: Before Android 4.1, method android.graphics.PorterDuffColorFilter android.support.graphics.drawable.VectorDrawableCompat.updateTintFilter(android.graphics.PorterDuffColorFilter, android.content.res.ColorStateList, android.graphics.PorterDuff$Mode) would have incorrectly overridden the package-private method in android.graphics.drawable.Drawable
D/OpenGLRenderer: Use EGL_SWAP_BEHAVIOR_PRESERVED: true

                  [ 12-18 20:03:53.363  2542: 2542 D/         ]
                  HostConnection::get() New Host Connection established 0x7f710991c140, tid 2542


                  [ 12-18 20:03:53.377  2542: 2542 W/         ]
                  Process pipe failed

                  [ 12-18 20:03:53.502  2542: 2587 D/         ]
                  HostConnection::get() New Host Connection established 0x7f710991b3c0, tid 2587
I/OpenGLRenderer: Initialized EGL, version 1.4
E/EGL_emulation: tid 2587: eglSurfaceAttrib(1165): error 0x3009 (EGL_BAD_MATCH)
W/OpenGLRenderer: Failed to set EGL_SWAP_BEHAVIOR on surface 0x7f710139e400, error=EGL_BAD_MATCH

其中的一些答案显示“尝试将Randering设置为”Harware Randering“,但它不起作用并收到相同的错误消息。我该如何解决?

1 个答案:

答案 0 :(得分:0)

为什么会这样?我找到了以下内容:

  

如果属性为EGL_SWAP_BEHAVIOR,则生成EGL_BAD_MATCH,值为   EGL_BUFFER_PRESERVED,以及的EGL_SURFACE_TYPE属性   用于创建表面的EGLConfig不包含   EGL_SWAP_BEHAVIOR_PRESERVED_BIT。

参考:eglSurfaceAttrib khronos组是一个提供标准OpenGL接口的非营利组织。

你是如何解决这个问题的?在Android模拟器中,您可以使用内置(硬件)图形卡。我希望this有所帮助。