9

I am using Emulator 7.1.1(Google Apis). Full exception is

     E/AndroidRuntime: FATAL EXCEPTION: GLThread 309

 java.lang.RuntimeException: createContext failed: 12291
  at com.google.maps.api.android.lib6.gmm6.vector.bi.a(:com.google.android.gms.DynamiteModulesB:834)
  at com.google.maps.api.android.lib6.gmm6.vector.bj.f(:com.google.android.gms.DynamiteModulesB:20825)
  at com.google.maps.api.android.lib6.gmm6.vector.bj.run(:com.google.android.gms.DynamiteModulesB:881)

The code is working fine on samsung galaxy J5 but not working on emulator. I have searched on google & my 2 hours wasted on this error & still not able to find the solution. Any help will be appreciated.

My build.gradle file:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 25
    buildToolsVersion "25.0.2"

    dexOptions {
        javaMaxHeapSize "4g"
    }

    defaultConfig {
        applicationId "com.katariya.pomoc"
        minSdkVersion 15
        targetSdkVersion 25
        versionCode 1
        versionName "1.0"
        multiDexEnabled true
        renderscriptTargetApi 18
        renderscriptSupportModeEnabled true
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    testCompile 'junit:junit:4.12'
    compile 'com.mcxiaoke.volley:library-aar:1.0.0'
    compile 'com.android.support:appcompat-v7:25.3.0'
    compile 'com.android.support:design:25.3.0'
    compile 'com.android.support:recyclerview-v7:25.3.0'
    compile 'com.google.android.gms:play-services-maps:10.2.1'
    compile 'com.google.android.gms:play-services-location:10.2.1'
    compile 'com.google.android.gms:play-services-gcm:10.2.1'
    compile 'com.google.firebase:firebase-core:10.2.1'
    compile 'com.google.firebase:firebase-messaging:10.2.1'
    compile 'com.squareup.picasso:picasso:2.5.0'
    compile 'com.android.support:support-v4:25.3.0'
    compile 'com.android.support:multidex:1.0.0'
    compile 'commons-io:commons-io:2.4'

}
apply plugin: 'com.google.gms.google-services'
Däñish Shärmà
  • 2,891
  • 2
  • 25
  • 43

2 Answers2

4

I got it!

I went into the settings of the emulator itself and changed OpenGL ES render from Autodetect based on host (default) to Desktop native OpenGL. After that my app began working perfectly. Here is a screenshot for clarity, hope this helps somebody in the future!

enter image description here

Jraco11
  • 4,526
  • 3
  • 20
  • 20
0

When creating a new Emulator one can choose some options in Emulated performance. It may be Automatic, Hardware GLES or Software GLES. In my case Software GLES 2.0 did the magic. The maps are working a little bit slower but fast enough to have patience to try my app out.

Here's the picture of place where to choose Emulation for Graphics enter image description here

Fakhriddin Abdullaev
  • 4,169
  • 2
  • 35
  • 37