Ошибка при создании примера кода Google VR SDK

Я новичок в разработке android-программ и изо всех сил пытаюсь запустить пример кода "ndk-treasurehunt". Я следовал инструкциям по созданию проекта и столкнулся со многими ошибками. После изменения файла build.gradle мне удалось немного продвинуться, но сейчас я все еще застрял со следующей ошибкой.


Команда сборки не удалась. Ошибка при выполнении процесса C:\Users\xxx\AppData\Local\Android\Sdk\cmake\3.6.4111459\bin\cmake.exe с аргументами {--build C:\Users\xxx\ProgrammingAndroid\gvr-android-sdk-1.150.0\samples\ndk-treasurehunt.externalNativeBuild\cmake\debug\x86 --target treasurehunt_jni} ninja: ошибка: '../../../../libraries/jni/x86/libgvr.so', необходимый для '../../../../build/intermediates/cmake/debug/obj/x86/libtreasurehunt_jni.so', отсутствует и не известен правил для его создания.


Измененный мной build.gradle выглядит так:


apply plugin: 'com.android.application'
// Top-level build file where you can add configuration options common to all sub-projects/modules.

buildscript {
    repositories {
        jcenter()
        google()
    }
    allprojects {
        repositories {
            jcenter()
        }
    }
    dependencies {
        classpath 'com.android.tools.build:gradle:3.1.3'

        // NOTE: Do not place your application dependencies here; they belong
        // in the individual module build.gradle files
    }
}



android {
    compileSdkVersion 27
    buildToolsVersion '27.0.3'

    defaultConfig {
        applicationId "com.google.vr.ndk.samples.controllerpaint"
        minSdkVersion 25
        targetSdkVersion 27
        versionCode 1
        versionName "1.0"
        externalNativeBuild {
            cmake {
                cppFlags "-std=gnu++11"
                arguments "-DGVR_LIBPATH=${project.rootDir}/libraries/jni",
                        "-DGVR_INCLUDE=${project.rootDir}/libraries/headers"
            }
        }
        buildTypes {
            release {
                minifyEnabled = true
                proguardFiles.add(file("${project.rootDir}/proguard-gvr.txt"))
            }
        }
        ndk {
            // This sample builds all architectures by default. Note that if you
            // only want to build for a specific architecture, you need to
            // remove the appropriate lines below. You also need to remove the
            // .so files from the apk using
            // "packagingOptions {exclude('lib/armeabi-v7a/*')}" in the android
            // section.
            abiFilters "arm64-v8a"
            abiFilters "armeabi-v7a"
            abiFilters "x86"
        }
    }
    externalNativeBuild {
        cmake {
            path "CMakeLists.txt"
        }
    }
}


dependencies {
    implementation 'com.google.vr:sdk-audio:1.150.0'
    implementation 'com.google.vr:sdk-base:1.150.0'
}

build.dependsOn(':extractNdk')

Пожалуйста помоги! Спасибо!

1 ответ

Убедитесь, что ваш NDK установлен и извлечен правильно, выполнив следующие действия:

  1. Добавьте NDK в Android Studio через: Tools -> SDK Manager -> SDK Tools -> NDK
  2. Откройте Android Studio Terminal внизу IDE или через View -> Tool Windows -> Terminal
  3. Запустите следующую команду в терминале gradelw :extractNdk
  4. В файле settings.gradle раскомментируйте следующую строку include ':sample:ndk-treasurehunt' который с тех пор был заменен include ':samples:ndk-hellovr' если вы используете более новую NDK
Другие вопросы по тегам