it-roy-ru.com

Ошибка при генерации подписанного apk

Я попытался загрузить свой apk в Google Play и обнаружил сообщение об ошибке: «Вы загрузили отлаживаемый APK. Из соображений безопасности необходимо отключить отладку, прежде чем ее можно будет опубликовать в Google Play. Узнайте больше об отладочных APK».

Затем я написал Android:debuggable="false" в своем манифесте и попытался снова. Я столкнулся с той же ошибкой, поэтому я выбрал вариант сборки из моего модуля, чтобы выпустить и снова сгенерировать apk, но это сгенерировало эту ошибку:

Error:Gradle: Execution failed for task ':app:lintVitalRelease'.
Lint found fatal errors while assembling a release target.
  To proceed, either fix the issues identified by lint, or modify your build script as follows:
  ...
  Android {
      lintOptions {
          checkReleaseBuilds false
          // Or, if you prefer, you can continue to check for errors in release builds,
          // but continue the build even when errors are found:
          abortOnError false
      }
  }
  ...
147
user3716366

Я бы не рекомендовал отключать проверки на ворсинки, они там по причине. Вместо этого проверьте, что это за ошибка, и исправьте ее. 

Отчет об ошибке сохраняется в [app module]/build/reports/lint-results-yourBuildName-fatal.html. Вы можете открыть этот файл в браузере, чтобы прочитать об ошибках.

Было бы хорошо, если бы Gradle мог немного прояснить, где генерируется отчет об ошибке.

253
Graydyn Young

У меня была эта проблема, и я обошел ее, добавив 

lintOptions { 

    checkReleaseBuilds false

}

в мой файл build.grade в разделе Android{ }.

148
naile

Убедитесь, что вы определили все переводы во всех файлах string.xml

45
Roberto

если вы хотите узнать точную ошибку, перейдите по следующему пути в вашем проекте: /app/build/reports/lint-results-release-fatal.html( или .xml). Самый простой способ, если вы перейдете к файлу xml, он покажет вам, в чем именно заключается ошибка, включая позицию ошибки в вашем классе Java или в файле xml. Отключение проверок ворса не очень хорошая идея, они там по причине. Вместо этого перейдите к:

    /app/build/reports/lint-results-release-fatal.html or 
    /app/build/reports/lint-results-release-fatal.xml

и исправить это. 

36
Josi

В случае, если вы можете попытаться определить, где проблема, я нашел мой по следующему пути моего проекта: /app/build/reports/lint-results-release-fatal.html (или .xml).

Надеюсь это поможет!

30
Pecolyte Wang

Я столкнулся с той же проблемой при создании подписанного apk от студии Android. Я просто немного изменил build.gradle file inside Android {}

lintOptions {
        checkReleaseBuilds false
        abortOnError false
    }
30
Dhruv Raval
***Try this***

 buildTypes {
        release {
            lintOptions {
                disable 'MissingTranslation'
                checkReleaseBuilds false
                abortOnError false
            }
            minifyEnabled false
            signingConfig signingConfigs.release
        }
    }
19
Amit raj

Попробуйте эти 3 строки в вашем файле app.gradle.

Android {
lintOptions {
    checkReleaseBuilds false
    // Or, if you prefer, you can continue to check for errors in release builds,
    // but continue the build even when errors are found:
    abortOnError false
}
8
Rehan Sarwar

Вы можете найти больше информации, выбирая сборку на вкладке сборки Gradle:  enter image description here

7
Mateusz Kaflowski

У меня проблема с отсутствующим переводом. У меня был файл settings.xml, который не был переведен, так как в этом не было необходимости, поэтому мне пришлось добавить «transhable =» false »в строки:

<string translatable="false" name="stringname">This string doesn't need translation</string>
6
tomDev

У меня проблема с отсутствующим переводом. У меня был файл settings.xml, который не был переведен, так как в этом не было необходимости, поэтому мне пришлось добавить «transhable =» false »в строки:

Эта строка не нуждается в переводе

5
Harsh Masand

Windows -> ссылки -> Android-> проверка ошибок lint.

снимите галочку Запустить полную ошибку .......

enter image description here

2
Suranga

Удалите это утверждение из вашего манифеста в целом, Eclipse справится с этим для вас на лету.

1
Eran Goldin

Решить эту проблему, используя это в файле build.gradle (app) внутри основного Android {inside}

  buildTypes {
        release {
            lintOptions {
                checkReleaseBuilds false
                abortOnError false
            }
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
        }
    }
1
Keshav Gera

Как найти подробности об ошибке

Anylyze -> Проверять код

 enter image description here

Тогда в результатах проверки вы увидите ошибку

 enter image description here

В моем случае сборка не удалась из-за неразрешенной ссылки на Javadoc в Google IAP ????

1
Mikhail

Привет, ребята, это сработало для меня, я просто изменил свой тип сборки следующим образом: 

buildTypes {
        release {
            Android {
                lintOptions {
                    checkReleaseBuilds false
                    // Or, if you prefer, you can continue to check for errors in release builds,
                    // but continue the build even when errors are found:
                    abortOnError false
                }
            }
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-Android.txt'), 'proguard-rules.pro'
        }
    }
1
DoctorDroid Haiti

Перейти к build.gradle (Модуль: приложение)  

lintOptions {
    checkReleaseBuilds false
    // Or, if you prefer, you can continue to check for errors in release builds,
    // but continue the build even when errors are found:
    abortOnError false
}
0
Kaiffi
    lintOptions {
      checkReleaseBuilds false
      abortOnError false
    }

Приведенный выше код может решить проблему, проигнорировав ее, но это также может привести к сбою приложения.

Хороший ответ в следующей ссылке:

Ошибка при генерации подписанного apk

0
Josi

Попробуйте код ниже

buildTypes {
    release {
        lintOptions {
            disable 'MissingTranslation'
            checkReleaseBuilds false
            abortOnError false
        }
        minifyEnabled false
        signingConfig signingConfigs.release
    }
}
0
Sheikh Ahmed Qureshi

В моем случае проблема была связана с минимальным целевым уровнем API, который требуется Google Play. Было установлено менее 26.

Проблема исчезла, когда я установил минимальный целевой уровень API на 26.

0
mdicosimo

Вы должны добавить код в файл gradle уровня проекта для генерации apk перезаписи ошибок

0
Kamal