it-swarm.com.de

Fehler beim Generieren von signierten apk

Ich habe versucht, meinen apk auf google play hochzuladen, und habe eine Fehlermeldung erhalten: "Sie haben ein debugbares APK hochgeladen. Aus Sicherheitsgründen müssen Sie das Debuggen deaktivieren, bevor es in Google Play veröffentlicht werden kann. Weitere Informationen zu debuggbaren APKs."

Dann schrieb ich Android:debuggable="false" in mein Manifest und versuchte es erneut. Ich bin auf den gleichen Fehler gestoßen, also habe ich die Build-Variante meines Moduls so eingestellt, dass sie eine apk freigibt und erneut generiert, aber dies hat diesen Fehler generiert:

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

Ich würde nicht empfehlen, die Fusselchecks auszuschalten, sie sind aus einem bestimmten Grund da. Überprüfen Sie stattdessen den Fehler und beheben Sie ihn. 

Der Fehlerbericht wird in [app module]/build/reports/lint-results-yourBuildName-fatal.html gespeichert. Sie können diese Datei in einem Browser öffnen, um Informationen zu den Fehlern zu erhalten.

Es wäre schön, wenn Gradle deutlich machen könnte, wo der Fehlerbericht erzeugt wird.

253
Graydyn Young

Ich hatte dieses Problem und habe es durch Hinzufügen hinzugefügt 

lintOptions { 

    checkReleaseBuilds false

}

in meine build.grade-Datei im Abschnitt Android{ }.

148
naile

Stellen Sie sicher, dass Sie alle Übersetzungen in allen string.xml-Dateien definiert haben

45
Roberto

wenn Sie den genauen Fehler ermitteln möchten, gehen Sie in Ihrem Projekt auf den folgenden Pfad: /app/build/reports/lint-results-release-fatal.html (oder .xml). Der einfachste Weg ist, wenn Sie zur xml-Datei gehen, wird Ihnen genau angezeigt, was der Fehler ist, einschließlich der Position des Fehlers in Ihrer Java-Klasse oder XML-Datei. Das Abschalten der Fusselchecks ist keine gute Idee, sie sind aus einem bestimmten Grund da. Gehen Sie stattdessen zu:

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

und beheben Sie es. 

36
Josi

Falls Sie versuchen zu finden, wo das Problem liegt, habe ich meinen im folgenden Pfad meines Projekts gefunden: /app/build/reports/lint-results-release-fatal.html (oder .xml).

Hoffe das hilft!

30
Pecolyte Wang

Bei der Erstellung eines signierten apk aus dem Android Studio habe ich dasselbe Problem gesehen. Ich ändere nur eine kleine Änderung an build.gradle file in 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

Probieren Sie diese 3 Zeilen in Ihrer Datei "app.gradle" aus.

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

Sie finden weitere Informationen, indem Sie Assemblieren von der Gradle-Build-Registerkarte auswählen:  enter image description here

7

Mein Problem war eine fehlende Übersetzung. Ich hatte eine settings.xml, die nicht übersetzt wurde, da sie nicht benötigt wurde. Daher musste ich den Strings "translatable =" false "hinzufügen:

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

Mein Problem war eine fehlende Übersetzung. Ich hatte eine settings.xml, die nicht übersetzt wurde, da sie nicht benötigt wurde. Daher musste ich den Strings "translatable =" false "hinzufügen:

Diese Zeichenfolge benötigt keine Übersetzung

5
Harsh Masand

Windows -> Referenzen -> Android-> Flusenfehlerprüfung.

ein Häkchen Läuft voll Fehler .......

enter image description here

2
Suranga

Entfernen Sie diese Aussage vollständig aus Ihrem Manifest, Eclipse wird dies für Sie im Handumdrehen erledigen.

1
Eran Goldin

Lösen Sie dieses Problem) Verwenden Sie diese in build.gradle (app) -Datei im Haupt-Android {inside}

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

So finden Sie Fehlerdetails

Anylyze -> Code überprüfen

 enter image description here

In den Inspektionsergebnissen wird dann ein Fehler angezeigt

 enter image description here

In meinem Fall ist der Aufbau aufgrund eines nicht aufgelösten Javadoc-Hinweises in Google IAP fehlgeschlagen ????

1
Mikhail

Hallo Leute, das hat für mich funktioniert, ich ändere meine BuildTypes einfach so: 

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

Gehe zu build.gradle (Modul: 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
}
0
Kaiffi
    lintOptions {
      checkReleaseBuilds false
      abortOnError false
    }

Der obige Code kann das Problem beheben, indem er ignoriert wird. Es kann jedoch auch zu einem Absturz der App kommen.

Die gute Antwort finden Sie unter folgendem Link:

Fehler beim Generieren signierter apk

0
Josi

Versuchen Sie den folgenden Code

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

In meinem Fall hing das Problem mit der minimalen Ziel-API-Ebene zusammen, die von Google Play benötigt wird. Es wurde weniger als 26 eingestellt.

Das Problem ist verschwunden, als ich die minimale Ziel-API-Stufe auf 26 festgelegt habe.

0
mdicosimo

Sie sollten den Code in der Gradle-Datei auf Projektebene zum Generieren von apk-Überschreiben von Fehlern hinzufügen

0
Kamal