Указанный путь для ненаписанных собственных библиотек не является каталогом - generateCrashlyticsSymbolFileRelease - PullRequest
2 голосов
/ 05 февраля 2020

Как я могу определить androidNdkOut и androidNdkLibsOut пути с новым Firebase Crashlytics SDK?

Когда я пытаюсь запустить: ./gradlew clean assembleRelease uploadCrashlyticsSymbolFileRelease

я получаю следующая ошибка:

Execution failed for task ':app:generateCrashlyticsSymbolFileRelease'.
> java.io.IOException: Specified path for unstripped native libs is not a directory: /Users/martin/repos/example-app-android/app/obj

Если вручную переместить все мои библиотеки NDK в папку ./app, я получу ту же ошибку с другим путем:

Execution failed for task ':app:generateCrashlyticsSymbolFileRelease'.
> java.io.IOException: Specified path for stripped native libs is not a directory: /Users/martin/repos/example-app-android/app/build/intermediates/transforms/stripDebugSymbol/release

Во втором случае команда build иногда дает сбой, иногда нет.

Эта проблема начала появляться после того, как я перешел с плагина Fabri c Crashlytics на плагин Firebase Crashlytics. В случае с Fabri c у меня была возможность определить: androidNdkOut и androidNdkLibsOut пути. Это отсутствует в новом плагине Firebase?

Соответствующий код:

Пример старого кода:

    crashlytics {
        enableNdk true
        androidNdkOut "$buildDir/ndklibs/obj"
        androidNdkLibsOut "$buildDir/ndklibs/libs"
    }

Пример нового кода:

            firebaseCrashlytics {
                nativeSymbolUploadEnabled true

            }

1 Ответ

0 голосов
/ 18 февраля 2020

Тем временем я получил ответ по этой ссылке: https://github.com/firebase/firebase-android-sdk/issues/1199#issuecomment -584680918

В новом плагине Firebase Crashlytics свойства androidNdkOut и androidNdkLibsOut были изменены на strippedNativeLibsDir и unstrippedNativeLibsDir, и должны быть объявлены в firebaseCrashlytics в блоке вариантов, где вы объявили nativeSymbolUploadEnabled true.

По-прежнему существует проблема с самими путями, вам необходимо установить относительные пути для strippedNativeLibsDir и unstrippedNativeLibsDir в каталог /app. Пример: https://github.com/firebase/firebase-android-sdk/issues/1199#issuecomment -585262965

...