TL; DR
Vea la respuesta a continuación: https://stackoverflow.com/a/60013390/1121497
Parece que fue un problema con iOS 13.3 porque acabo de instalar 13.4 y ahora Flutter funciona en mi iPhone. :)
Estoy tratando de ejecutar una nueva aplicación Flutter (la aplicación de muestra creada por flutter create
) en un dispositivo iOS (un iPhone XS). Xcode logra instalarlo, pero luego se bloquea con este mensaje:
dyld: Library not loaded: @rpath/Flutter.framework/Flutter
Referenced from: /private/var/containers/Bundle/Application/BA807438-FA5B-4021-B37D-FC437B2C80CA/Runner.app/Runner
Reason: no suitable image found. Did find:
/private/var/containers/Bundle/Application/BA807438-FA5B-4021-B37D-FC437B2C80CA/Runner.app/Frameworks/Flutter.framework/Flutter: code signature invalid for '/private/var/containers/Bundle/Application/BA807438-FA5B-4021-B37D-FC437B2C80CA/Runner.app/Frameworks/Flutter.framework/Flutter'
Si lo intento flutter run
, la aplicación también se abre y se bloquea. Y el comando sigue esperando para siempre:
$ flutter run
Launching lib/main.dart on Ferran Maylinch’s iPhone in debug mode...
Automatically signing iOS for device deployment using specified development team in Xcode project: 25D86TPBWG
Running Xcode build...
├─Assembling Flutter resources... 4.3s
└─Compiling, linking and signing... 13.3s
Xcode build done. 21.0s
Installing and launching...
(This is taking an unexpectedly long time.) ⢿
En Xcode configuré un Equipo (Equipo personal) y el Certificado de firma (Certificado de desarrollo de Apple) parece estar bien porque puedo instalar un proyecto Hello world Swift en mi dispositivo.
Nota: No estoy pagando una cuenta del Programa de Desarrolladores de Apple . ¿Es absolutamente necesario ejecutar aplicaciones Flutter en dispositivos iOS?
He seguido las instrucciones de macOS y flutter doctor
dice que tengo todo lo que necesito para iOS:
[✓] Flutter (Channel stable, v1.12.13+hotfix.5, on Mac OS X 10.15.2 19C57, locale en-ES)
[!] Android toolchain - develop for Android devices (Android SDK version 28.0.3)
! Some Android licenses not accepted. To resolve this, run: flutter doctor --android-licenses
[✓] Xcode - develop for iOS and macOS (Xcode 11.3)
[!] Android Studio (version 3.5)
✗ Flutter plugin not installed; this adds Flutter specific functionality.
✗ Dart plugin not installed; this adds Dart specific functionality.
[✓] IntelliJ IDEA Ultimate Edition (version 2019.3.1)
[!] VS Code (version 1.41.1)
✗ Flutter extension not installed; install from
https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter
[✓] Connected device (1 available)
! Doctor found issues in 3 categories.
Como puede ver, utilicé el canal estable para descartar problemas con el canal beta, pero generalmente trabajo en el canal beta para crear flutter para la web (que funciona bien).
En el simulador de iOS, la aplicación también funciona bien.
Recientemente me di cuenta de que no tengo el archivo ios/Podfile
. Encontré esta publicación hablando de eso. No sé si esto es importante o no en mi caso, pero intenté agregar manualmente este Podfile . De todos modos, me sale el mismo error de firma.
Frustrado por esto, cambié a NativeScript por ahora.
flutter build ios --release