Je suis sur Android Studio 4. Gradle est 6.1.1. Et j'ai créé un nouveau projet de flutter à partir d'Android Studio. Ensuite, j'ai ouvert le projet en tant que projet Android. Il existe une telle option dans Outils-> Flutter. Ce qui a abouti à la synchronisation gradle. Cela a réussi. Mais quand j'essaye de générer un apk signé avec mes clés. J'ai compris. Erreur
\path\to\my\project\build\app\intermediates\flutter\profile\libs.jar (The system cannot find the path specified)
Il n'y a pas de répertoire de profils à l'emplacement indiqué. Mais il existe des répertoires Debug et Release qui contiennent tous deux libs.jar. J'ai cherché tous les autres sur le net pour ce problème. Rien trouvé.
Supplémentaire: je peux créer un apk de débogage sans problème.
6 Réponses :
J'ai trouvé une solution à ce problème en recherchant dans divers problèmes que les gens avaient signalés sur github à ce sujet.
Ceci est juste une solution de contournement.
Vous pouvez obtenir deux types d'erreur. Pour moi, le système n'a pas pu trouver le profile/libs.jar
, pour certaines personnes, l'erreur était pour debug/libs.jar
. Si le problème concerne le profil , vous devez d'abord exécuter votre application en mode profil, puis générer un apk signé (ou créer et exécuter en mode version). Pour exécuter en mode profil, utilisez flutter run --profile
. Il existe également une option de profil dans le menu Run
dans Android Studio.
Si l'erreur concerne debug/libs.jar
, commencez par créer la version de débogage (et également le mode profil), puis essayez de générer un apk signé. Par défaut, flutter run
compile en mode débogage.
Ce problème provient évidemment de la mise à jour du android studio gradle plugin
Gradle
et du android studio gradle plugin
.
Voici la solution de contournement par Jwiggiff sur la page github.
Je n'ai même jamais remarqué qu'il y avait un dossier de profil dans src \ app \ avec le dossier principal. Je me demande à quoi cela sert: D profiing? J'ai également eu un problème avec debug / libs.jar mais une fois compilé vers l'émulateur, il est retourné à l'erreur profile / libs.jar. d'une manière ou d'une autre, je ne peux pas non plus déployer sur l'émulateur. pourrait être un problème de gradle ... et je pense que ce désordre a commencé après avoir été forcé de passer à gradle 6.1.1 à partir de 5.6.2
pour l'instant, je suis revenu au zip d'origine de gradle 5.6.2 et à com.android.tools.build:gradle:3.5.2 dans build.gradle. que la mise à niveau vers 4.0.0 et 6.1.1.zip est la cause du problème
Les mises à jour sont censées rendre ces choses plus faciles et plus pratiques. Maintenant, je perds plus de temps à comprendre ce qui n'a pas fonctionné dans le système de construction que la résolution de problèmes réels dans mon code. Quel gaspillage de progrès.
Maintenant, chaque fois que je dois obtenir l'apk. J'ai besoin de le construire trois fois avec trois options.
lol im pas perdre de temps avec ça. Je suis revenu à l'ancienne version jusqu'à ce qu'ils le réparent. ils l'ont confirmé comme un bogue.
Exécution de Run-> Profile et j'ai pu créer apk avec succès
comme @chitgoks l'a mentionné, j'ai remplacé com.android.tools.build:gradle:4.0.0 ~> 3.5.2 Cela a fait l'affaire. L'erreur est partie maintenant!
Si vous ne vous souciez pas de lintOptions
vous pouvez ajouter ce code dans le fichier build.gradle
l'application:
android { lintOptions { checkReleaseBuilds false abortOnError false } }
Ne résout pas réellement le problème. Il suffit de sauter le test. Signifie que le réel persiste encore
@FardeenKhan Déjà dit ci-dessus, utilisez-le uniquement si vous ne vous souciez pas de lintOptions
Ce problème est avec le dernier gradle 4.0.0
Passer du chemin de classe 'com.android.tools.build:gradle:4.0.0'
au classpath 'com.android.tools.build:gradle:3.6.3'
de classpath 'com.android.tools.build:gradle:3.6.3'
ou classpath 'com.android.tools.build:gradle:3.5.0'
(a fonctionné pour moi)
C'est un truc
Exécutez le terminal pour le projet de flutter actuel, puis tapez
flutter install build/app/outputs/flutter-apk/app-release.apk
pour obtenir ce résultat de réussite:
Running Gradle task 'assembleRelease'... Running Gradle task 'assembleRelease'... Done 41.8s â Built build/app/outputs/flutter-apk/app-release.apk (23.6MB).
puis tapez
flutter build apk
obtenir
Running Gradle task 'assembleDebug'... Running Gradle task 'assembleDebug'... Done 22.7s â Built build/app/outputs/flutter-apk/app-debug.apk.
puis installez cette Release APK
sur l'appareil.
flutter run
Maintenant, vous avez Release App sur votre appareil.
p / s: cette erreur de saut de cas
Execution failed for task ':app:lintVitalRelease'.
Failed to transform libs.jar to match attributes
Execution failed for JetifyTransform
Transform's input file does not exist
vous avez déjà.
cela fonctionnera.
flutter build apk --debug flutter build apk --profile flutter build apk --release
mais testez l'apk avant de le partager.
même cela ne fonctionne pas, le changement de gradle de 4.x à 3.6.x cela fonctionnera.
Comment recréez-vous le dossier Android?
édité ma réponse.
supprimez simplement le dossier android et exécutez la commande flutter create.
Cela devrait également fonctionner correctement
flutter build apk --profile
suite à cela depuis que j'ai rencontré bizarrement cela maintenant et je n'ai aucune idée de comment cela est arrivé tout d'un coup. était-ce peut-être après une mise à niveau de flutter?
J'ai trouvé une solution pour cela. Laissez-moi le poster.
stackoverflow.com/questions/62394034/...