Gitub Actions Flutter CI Ошибка: не найдено ни одной версии NDK - PullRequest
0 голосов
/ 10 апреля 2020

Репозиторий проекта

Я был пу sh коммит

, но я получил ошибка

* What went wrong:
Execution failed for task ':app:stripReleaseDebugSymbols'.


> No version of NDK matched the requested version 20.0.5594570. Versions available locally: 21.0.6113669

Ниже приведен код CI ( Flitter CI - Customer ):

name: Flutter CI - Customer

on:
  push:
    branches:
      - master
    paths:
      - holinoti_customer/**
      - .github/workflows/flutter-customer.yml

  pull_request:
    branches:
      - master
    paths:
      - holinoti_customer/**

jobs:
  build:

    runs-on: ubuntu-latest

    steps:
    - uses: actions/checkout@v2.0.0
    - name: Set up JDK 11
      uses: actions/setup-java@v1
      with:
        java-version: 11.0.2
    - name: Android NDK toolchain Setup
      uses: ravinderjangra/android-ndk-toolchain-setup@0.1
      with: 
        api: '21'
        arch: 'arm'
        install-location: 'toolchains'
    - uses: subosito/flutter-action@v1.1.1
      with:
        flutter-version: '1.12.x' # you can use 1.12
    - name: Install dependencies
      run: flutter pub get
      working-directory: holinoti_customer
    - name: Test Build
      run: flutter build apk
      working-directory: holinoti_customer

В моем локальном проекте я установил путь ndk в android структура проекта студии

Однако это решение не может быть применено на Github Action

Итак, я попытался использовать Android NDK toolchain Setup, но все равно не удается

1 Ответ

0 голосов
/ 05 мая 2020

Вместо использования файла local.properties, установите ndkVersion в вашем build.gradle, чтобы он соответствовал тому, который доступен на вашем сервере CI. т.е.

android {
    ndkVersion "21.1.6352462"
}

(я предполагаю, что ваш CI обновился, чтобы сделать r21b доступным с тех пор, в противном случае используйте версию 21.0.blah из сообщения об ошибке.)

Таким образом, ваш CI и ваша локальная сборка использует одну и ту же версию.

Это было мотивом для этого изменения, кстати: сохранение воспроизводимых сборок. Ранее ваш CI и ваши локальные сборки использовали разные версии NDK, и это может быть неожиданным и раздражающим источником ошибок:)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...