Ошибка при создании подписанного 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
}
}
...
Ответы
Ответ 1
Я бы не порекомендовал выключить чешуйки, они там не просто так. Вместо этого проверьте, что такое ошибка, и исправьте ее.
Отчет об ошибке сохраняется в [app module]/build/reports/lint-results-yourBuildName-fatal.html
. Вы можете открыть этот файл в браузере, чтобы прочитать об ошибках.
Было бы неплохо, если бы Gradle мог бы сделать его более понятным, где генерируется отчет об ошибке.
Ответ 2
У меня была эта проблема, и я работал над ней, добавляя
lintOptions {
checkReleaseBuilds false
}
в мой файл build.grade
в разделе android{ }
.
Ответ 3
если вы хотите узнать точную ошибку, перейдите по следующему пути в вашем проекте: /app/build/reports/lint-results-release-fatal.html(or.xml). Самый простой способ - если вы перейдете в xml файл, он покажет вам, что именно ошибка включает в себя его положение ошибки в вашем Java-классе или XML файле. Отключение чехлов - это не очень хорошая идея, они там по какой-то причине. Вместо этого перейдите к:
/app/build/reports/lint-results-release-fatal.html or
/app/build/reports/lint-results-release-fatal.xml
и исправить.
Ответ 4
Убедитесь, что вы определили все переводы во всех файлах string.xml
Ответ 5
В случае, если вы можете попытаться найти, где проблема, я нашел мой по следующему пути моего проекта: /app/build/reports/lint-results-release-fatal.html(or.xml).
Надеюсь это поможет!
Ответ 6
Я столкнулся с такой же проблемой при создании подписанного apk из студии android. Я просто немного изменяю изменения в файле build.gradle внутри android {}
lintOptions {
checkReleaseBuilds false
abortOnError false
}
Ответ 7
***Try this***
buildTypes {
release {
lintOptions {
disable 'MissingTranslation'
checkReleaseBuilds false
abortOnError false
}
minifyEnabled false
signingConfig signingConfigs.release
}
}
Ответ 8
Вы можете найти больше информации, выбирая сборку на вкладке сборки Gradle:
Ответ 9
Как найти подробности об ошибке
Anylyze → Проверять код
Тогда в результатах проверки вы увидите ошибку
В моем случае сборка не удалась из-за неразрешенной ссылки на Javadoc в Google IAP 😐
Ответ 10
Попробуйте эти 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
}
Ответ 11
Моя проблема заключалась в отсутствии перевода. У меня был файл settings.xml, который не был переведен, поскольку он не был нужен, поэтому мне пришлось добавить "translatable =" false "в строки:
Эта строка не требует перевода
Ответ 12
Моя проблема заключалась в отсутствии перевода. У меня был файл settings.xml, который не был переведен, поскольку он не был нужен, поэтому мне пришлось добавить "translatable =" false "в строки:
<string translatable="false" name="stringname">This string doesn't need translation</string>
Ответ 13
Привет, ребята, это сработало для меня, я просто изменяю свои BuildTypes следующим образом:
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'
}
}
Ответ 14
Попробуйте ниже код
buildTypes {
release {
lintOptions {
disable 'MissingTranslation'
checkReleaseBuilds false
abortOnError false
}
minifyEnabled false
signingConfig signingConfigs.release
}
}
Ответ 15
Решите эту проблему Используя это в файле build.gradle(app) Внутри основного Android {inside}
buildTypes {
release {
lintOptions {
checkReleaseBuilds false
abortOnError false
}
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
}
Ответ 16
Windows → ссылки → Android-> проверка ошибок lint.
un tick Запустить полную ошибку.......
Ответ 17
Перейдите в build.gradle(Module: app)
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
}
Ответ 18
Удалите это выражение из вашего манифеста в целом, Eclipse будет обрабатывать это для вас на лету.
Ответ 19
Вы должны добавить код в файл градиента уровня проекта для генерации перезаписи apk по ошибкам
Ответ 20
перезагрузка Android-студии работала в моем случае
Ответ 21
В моем случае проблема была связана с минимальным целевым уровнем API, который требуется Google Play. Было установлено менее 26.
Проблема исчезла, когда я установил минимальный целевой уровень API на 26.
Ответ 22
lintOptions {
checkReleaseBuilds false
abortOnError false
}
Приведенный выше код может решить проблему, проигнорировав ее, но это также может привести к сбою приложения.
Хороший ответ в следующей ссылке:
Ошибка при генерации подписанного apk
Ответ 23
Есть несколько проверок и противовесов, которые вы должны будете сделать, чтобы обойти эту ошибку.
Пожалуйста, проверьте мой ответ здесь: fooobar.com/questions/8597389/...
Ответ 24
Просто найдите причину ошибки и устраните ее.
yourProject/app/build/reports/lint-results-release-fatal.xml
Ответ 25
Если вы добавите в app.gradle под android {
lintOptions {
quiet true
abortOnError false
}
}
Он получит работу