Flutter

Flutter es un entorno de producción de apps para Android, IOs, Web, o destktop que permite crear desarrolos en un entorno único. Basado en el lenguaje Dart, es uno de los entornos de programación que esta pisando fuerte.

Instalación de Android Studio para Flutter en Ubuntu

Flutter

La mejor descripción de Flutter es la que le dan: Construye aplicaciones para cualquier monitor Efectivamente, multiplataforma, para moviles (Android e IOs), para Web, para Linux, para Windows, para embebidos.

Basado en el lenguaje de programación Dart que es un lengaje compilado, nos permite crear aplicaciones para multiples dispositivos, en un gran entonro de desarrollo.

Vamos a instalar Flutter en nuestra Ubuntu 22.04 con SNAP

Te recomiendo un repaso por Flutter :: Linux Install, auqne aquí tenrdas tips que no aparecen, y te facilitara verlos.

> sudo snap install flutter --classic

Después la primera vez tendremos que ejecutar el instalador en el path de usuario indicandonos en la última linea el path.

> flutter sdk-path
Initializing Flutter
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  158k  100  158k    0     0   300k      0 --:--:-- --:--:-- --:--:--  300k
Downloading https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_3.0.0-stable.tar.xz
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  596M  100  596M    0     0  18.8M      0  0:00:31  0:00:31 --:--:-- 25.4M
Flutter initialized
Flutter 3.0.0 • channel stable • https://github.com/flutter/flutter.git
Framework • revision ee4e09cce0 (hace 9 días) • 2022-05-09 16:45:18 -0700
Engine • revision d1b9a6938a
Tools • Dart 2.17.0 • DevTools 2.12.2
/home/abkrim/snap/flutter/common/flutter

Android Studio Spalsh Screen

Podemos ejecutar el doctor para comprobar que esta todo bien.

❯ flutter doctor
Running "flutter pub get" in flutter_tools...                       8,3s
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.0.0, on Ubuntu 22.04 LTS 5.15.0-30-generic, locale es_ES.UTF-8)
[✗] Android toolchain - develop for Android devices
    ✗ Unable to locate Android SDK.
      Install Android Studio from: https://developer.android.com/studio/index.html
      On first launch it will assist you in installing the Android SDK components.
      (or visit https://flutter.dev/docs/get-started/install/linux#android-setup for detailed instructions).
      If the Android SDK has been installed to a custom location, please use
      `flutter config --android-sdk` to update to that location.

[✓] Chrome - develop for the web
[✓] Linux toolchain - develop for Linux desktop
[!] Android Studio (not installed)
[✓] IntelliJ IDEA Community Edition (version 2022.1)
[✓] VS Code (version 1.67.1)
[✓] Connected device (2 available)
[✓] HTTP Host Availability

! Doctor found issues in 2 categories.

En mi caso, no tengo instalado el Android Studio que si requiero para ver y conocer con las demos, como es el entorno de trabajo.

Instalar el SDK

Instalar Android Studio

Bibliotecas necesarias 32 bits

> sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386 lib32z1 libbz2-1.0:i386
> sudo /usr/local/android-studio/bin/studio.sh

En mi caso en cuanto quedo instalado añadí un alias a mi zshrc para no tener que escribir el path. Antención tambien que ese es el path tras la instalación con snap. Otras formas pueden variar.

Tras instalarlo ejecutamos de nuevo flutter doctor

❯ flutter doctor
…
[!] Android toolchain - develop for Android devices (Android SDK version 32.1.0-rc1)
   ✗ cmdline-tools component is missing
     Run `path/to/sdkmanager --install "cmdline-tools;latest"`
     See https://developer.android.com/studio/command-line for more details.
   ✗ Android license status unknown.
     Run `flutter doctor --android-licenses` to accept the SDK licenses.
     See https://flutter.dev/docs/get-started/install/linux#android-setup for …
! Doctor found issues in 1 category.

Flutter doctor

Instalar las cmdline-tools desde el Android Studio es la mejor opcion, proque el mensaje es la pescadilla que se muerde la cola, no existe el sdkmanager.

Android Studio :: Splash Screen

Accediendo a More Actions > SDK Manager podremos instalar las Command-line Tools y otras cosas si queremos.

Androi Studio :: System Settings :: Android SDK

Al final volvemos a ejecuatr, corregimos el tema de las licencias y deberemos obtener.

❯ flutter doctor

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.0.0, on Ubuntu 22.04 LTS 5.15.0-30-generic, locale es_ES.UTF-8)
[✓] Android toolchain - develop for Android devices (Android SDK version 32.1.0-rc1)
[✓] Chrome - develop for the web
[✓] Linux toolchain - develop for Linux desktop
[✓] Android Studio (version 2021.2)
[✓] IntelliJ IDEA Community Edition (version 2022.1)
[✓] VS Code (version 1.67.1)
[✓] Connected device (2 available)
[✓] HTTP Host Availability

• No issues found!

Flutter doctor OK

Preparación para el desarrollo

En mi caso prefiero de momento la emulación de Andorid, que usar un dispositivo en modo debug. Ya tendré tiempo más adelante.

Para ello hay que preparar el Android Emulator en la máquina de desarrollo.

Debemos tener en cuenta de que cada dispositivo cuenta con su imagen segun la version de Android, y esto es importante a efectos de compatibilidad de nuestro futuro trabajo.

Crear un dispositivo virtual de Android (AVD)

Como crear y administrar dispositivos virtuales

En primer lugar tendremos que escojer el tipo de dispositivo que queremos crear, y descargar la imagen de su emulador.

Las instrucciones son mas que suficientes para hacer los dispositivos minimos que queramos.

Librerias aconsejadas en linux

sudo apt-get install clang cmake ninja-build pkg-config libgtk-3-dev liblzma-dev

Android Setup para Flutter

Agradecimientos

I am getting error "cmdline-tools component is missing" after installing Flutter and Android Studio... I added the Android SDK. How can I solve them?

Flutter

La mejor descripción de Flutter es la que le dan: Construye aplicaciones para cualquier monitor Efectivamente, multiplataforma, para moviles (Android e IOs), para Web, para Linux, para Windows, para embebidos.

Basado en el lenguaje de programación Dart que es un lengaje compilado, nos permite crear aplicaciones para multiples dispositivos, en un gran entonro de desarrollo.

Vamos a instalar Flutter en nuestra Ubuntu 22.04 con SNAP

Te recomiendo un repaso por Flutter :: Linux Install, auqne aquí tenrdas tips que no aparecen, y te facilitara verlos.

> sudo snap install flutter --classic

Después la primera vez tendremos que ejecutar el instalador en el path de usuario indicandonos en la última linea el path.

> flutter sdk-path
Initializing Flutter
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  158k  100  158k    0     0   300k      0 --:--:-- --:--:-- --:--:--  300k
Downloading https://storage.googleapis.com/flutter_infra_release/releases/stable/linux/flutter_linux_3.0.0-stable.tar.xz
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
100  596M  100  596M    0     0  18.8M      0  0:00:31  0:00:31 --:--:-- 25.4M
Flutter initialized
Flutter 3.0.0 • channel stable • https://github.com/flutter/flutter.git
Framework • revision ee4e09cce0 (hace 9 días) • 2022-05-09 16:45:18 -0700
Engine • revision d1b9a6938a
Tools • Dart 2.17.0 • DevTools 2.12.2
/home/abkrim/snap/flutter/common/flutter

Android Studio Spalsh Screen

Podemos ejecutar el doctor para comprobar que esta todo bien.

❯ flutter doctor
Running "flutter pub get" in flutter_tools...                       8,3s
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.0.0, on Ubuntu 22.04 LTS 5.15.0-30-generic, locale es_ES.UTF-8)
[✗] Android toolchain - develop for Android devices
    ✗ Unable to locate Android SDK.
      Install Android Studio from: https://developer.android.com/studio/index.html
      On first launch it will assist you in installing the Android SDK components.
      (or visit https://flutter.dev/docs/get-started/install/linux#android-setup for detailed instructions).
      If the Android SDK has been installed to a custom location, please use
      `flutter config --android-sdk` to update to that location.

[✓] Chrome - develop for the web
[✓] Linux toolchain - develop for Linux desktop
[!] Android Studio (not installed)
[✓] IntelliJ IDEA Community Edition (version 2022.1)
[✓] VS Code (version 1.67.1)
[✓] Connected device (2 available)
[✓] HTTP Host Availability

! Doctor found issues in 2 categories.

En mi caso, no tengo instalado el Android Studio que si requiero para ver y conocer con las demos, como es el entorno de trabajo.

Instalar el SDK

Instalar Android Studio

Bibliotecas necesarias 32 bits

> sudo apt-get install libc6:i386 libncurses5:i386 libstdc++6:i386 lib32z1 libbz2-1.0:i386
> sudo /usr/local/android-studio/bin/studio.sh

En mi caso en cuanto quedo instalado añadí un alias a mi zshrc para no tener que escribir el path. Antención tambien que ese es el path tras la instalación con snap. Otras formas pueden variar.

Tras instalarlo ejecutamos de nuevo flutter doctor

❯ flutter doctor
…
[!] Android toolchain - develop for Android devices (Android SDK version 32.1.0-rc1)
   ✗ cmdline-tools component is missing
     Run `path/to/sdkmanager --install "cmdline-tools;latest"`
     See https://developer.android.com/studio/command-line for more details.
   ✗ Android license status unknown.
     Run `flutter doctor --android-licenses` to accept the SDK licenses.
     See https://flutter.dev/docs/get-started/install/linux#android-setup for …
! Doctor found issues in 1 category.

Flutter doctor

Instalar las cmdline-tools desde el Android Studio es la mejor opcion, proque el mensaje es la pescadilla que se muerde la cola, no existe el sdkmanager.

Android Studio :: Splash Screen

Accediendo a More Actions > SDK Manager podremos instalar las Command-line Tools y otras cosas si queremos.

Androi Studio :: System Settings :: Android SDK

Al final volvemos a ejecuatr, corregimos el tema de las licencias y deberemos obtener.

❯ flutter doctor

Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel stable, 3.0.0, on Ubuntu 22.04 LTS 5.15.0-30-generic, locale es_ES.UTF-8)
[✓] Android toolchain - develop for Android devices (Android SDK version 32.1.0-rc1)
[✓] Chrome - develop for the web
[✓] Linux toolchain - develop for Linux desktop
[✓] Android Studio (version 2021.2)
[✓] IntelliJ IDEA Community Edition (version 2022.1)
[✓] VS Code (version 1.67.1)
[✓] Connected device (2 available)
[✓] HTTP Host Availability

• No issues found!

Flutter doctor OK

Preparación para el desarrollo

En mi caso prefiero de momento la emulación de Andorid, que usar un dispositivo en modo debug. Ya tendré tiempo más adelante.

Para ello hay que preparar el Android Emulator en la máquina de desarrollo.

Debemos tener en cuenta de que cada dispositivo cuenta con su imagen segun la version de Android, y esto es importante a efectos de compatibilidad de nuestro futuro trabajo.

Crear un dispositivo virtual de Android (AVD)

Como crear y administrar dispositivos virtuales

En primer lugar tendremos que escojer el tipo de dispositivo que queremos crear, y descargar la imagen de su emulador.

Las instrucciones son mas que suficientes para hacer los dispositivos minimos que queramos.

Librerias aconsejadas en linux

sudo apt-get install clang cmake ninja-build pkg-config libgtk-3-dev liblzma-dev

Agradecimientos

I am getting error "cmdline-tools component is missing" after installing Flutter and Android Studio... I added the Android SDK. How can I solve them?

Aviso

Esta documentación y su contenido, no implica que funcione en tu caso o determinados casos. También implica que tienes conocimientos sobre lo que trata, y que en cualquier caso tienes copias de seguridad. El contenido el contenido se entrega, tal y como esta, sin que ello implique ningún obligación ni responsabilidad por parte de Castris

Si necesitas soporte profesional puedes contratar con Castris soporte profesional.