Android Studio: should I upgrade to Android embedding v2? - flutter

I am actively learning dart/flutter, and using Android Studio. Just practicing to learn as much dart as possible. For now, I manly test my code by outputting into console. When I run the code, I get the warning message below (about upgrading to Android embedding v2), see picture. For now, I am not interested in developing apps for Android nor IOS, I am focusing mainly on web apps.
Is the warning below something I should consider upgrading now to Android embedding v2? Or can it wait until I decide to start testing Android apps?
The main reason why I didn't upgrade, it's because I read the Android embedding v2 upgrade instructions, and it requires to edit some files, and I don't want to risk messing up Android Studio, nor Dart, nor Flutter files. Also, this is the first time I use this IDE.
Warning
──────────────────────────────────────────────────────────────────────────────
Your Flutter application is created using an older version of the Android
embedding. It's being deprecated in favor of Android embedding v2. Follow the
steps at
https://flutter.dev/go/android-project-migration
to migrate your project.

Related

I get this error in my flutter app. migrate this app to the V2 embedding

I get this error in my Flutter Project,
C:\src\flutter\bin\flutter.bat --no-color pub get
Running "flutter pub get" in source_code... 34.3s
This app is using a deprecated version of the Android embedding.
To avoid unexpected runtime failures, or future build failures, try to migrate this app to the V2 embedding.
Take a look at the docs for migrating an app: https://github.com/flutter/flutter/wiki/Upgrading-pre-1.12-Android-projects
The plugin firebase_core requires your app to be migrated to the Android embedding v2. Follow the steps on https://flutter.dev/go/android-project-migration and re-run this command.
Process finished with exit code 1
Flutter Embedding Error
Since Flutter 1.12 the way how Flutter plugins communicate with the native Android side has been improved. Allowing plugins to better integrate with the native Android lifecycle.
Some plugins support both the new and the old structure, however many plugins (like firebase_core) dropped support for the legacy structure to ensure optimal integration with the Android system.
Apps created using Flutter 1.12 and higher automatically generate the correct Android integration logic, however Flutter applications created with an earlier version of Flutter need to be manually migrated. There are two options to fix this for your app:
The easiest solution is to delete the android folder in your project and let Flutter (using Flutter 1.12 or higher) recreate it for you by running the following command in the root folder of the Flutter project: flutter create --platform=android . (don't forget the . at the end of the command). You should only do this if you haven't made any custom changes to the Android code and of course make sure to make a backup first.
The more safe option is to manually migrate the Android project using the instructions provided on the GitHub Wiki page mentioned in the error message.
When following the instructions on the GitHub Wiki page make sure to keep an eye on all the details. Personally I forgot to update the <application android:name="MyApp" to the recommended <application android:name="${applicationName}" which resulted in the same error you are reporting.
What helped me was to create a new "dummy" application with the latest version of Flutter (for example flutter create --platforms=android test_app) and compare the files in the Android folder with the files of my current App and make changes where necessary.

Generate HarmonyOS (Huawei) build from Flutter project

I am working on one Flutter project. In which, We want to generate builds of Android, iOS, and HarmonyOS (Huawei). But I am not sure does Flutter supports this OS or not. I went through some of the stuff on the internet but was unable to figure out how to generate and what kind of commands were needed. Here, Anyone has previously generated HarmonyOS compatible build from the Flutter project. Please share your thoughts.
For now it is not possible directly from Flutter. Because of the change in architecture brought by Huawei with HarmonyOS it is not anymore an "Android device" and it doesn't run "Android applications".
Now what you can call "native HarmonyOS applications" are *.app files (not *.apk or *.aab)
Most recent answer on Quora to:
Will Harmony OS run Android apps?
Gives the following response:
Answered Jun 4, 2021 by Mahdi Parastech, Software Engineer
Nope, because:
The structure of the APIs are different.
Hongmeng (HarmonyOS) apps are in *.app, Android apps are *.apk
The structure of pages (activities) are different, Hongmeng uses some additional json files and puts pages inside *.har files.
Hongmeng uses Javascript too, and that's the only option in Wearable Hongmeng devices, but Android apps are just written in Java.
source
Apparently you should be able to migrate your native android application to HarmonyOS by using their IDE but the thing is that Flutter was not build for this architecture.
Except if the Flutter team decides for some reason to support HarmonyOS I don't think it will be possible to develop HarmonyOS applications by using Flutter.

flutter web app without html, css and javascript

I want to know that if it is possible to make flutter app for web without using HTML, css or javascript and only using flutter and dart
Yes, it is absolutely possible to create a web app using flutter and dart.
To add web support in the existing flutter project you can run the command flutter create . and to release it run the command flutter build web
For testing your app in chrome you can use command flutter run -d chrome
You can disable android support using command flutter config --no-enable-android and disable ios support using command flutter config --no-enable-ios
Yeah, it is not need to build web app with HTML,CSS & JS, your flutter code alone will work.
Note: try flutter upgrade bcs v-2.0.0 stable release for web got released
Yes, you can use Dart/Flutter exclusively to build web apps. You don't need to write any HTML/CSS/Javascript.
You can setup your project from the terminal (like previous comments suggests), or you can use an IDE such Android Studio, or you can use Visual Studio.
If you use Android Studio, you can create a new Flutter Project, and select the 'web' platform only, and de-select Android and IOS.
I am currently using Dart/Flutter to build web apps only. Android Studio builds the HTML/CSS/Javascript for you. Then you just have to publish it into a web server (online or local).
Yes you can use Flutter for web apps but though it is in early stage of development about how the web app will be stable or not

SDK prevents `Hot Reload` & `Hot Restart` from working

When using the Here SDK for Flutter Hot Reload & Hot Restart stop working. I can tell this because when I switch to another branch which doesn't use the HERE SDK these two features work as supposed.
Within the HERE SDK integration branch these tasks will run endlessly. This makes the SDK practically unusable as recompiling takes too long for a smooth developer experience.
I can force a Hot Restart by moving the HERE map with my fingers. Something within the SDK is preventing this essential Flutter feature from working. Is there something I've overseen?
My SDK version is "HERE SDK for Flutter (explore Edition) - Version 4.3.2.0"

Using phonegap to develop iphone app on visual studio

I am completely new to mobile app development and basically c#,.net developer.Recently i got a requirement to develop a iPhone application.Some experts suggested me to use icenium extension for visual studio and Phonegap. I want to know how to use/install phonegap for this and how does phonegap helps me to develop this application?what are the basic difference between icenium and phonegap as i know both helps to develop cross platform apps.
Telerik AppBuilder (formerly known as Icenium) is a set of IDEs and cloud-based build tools that allow you to use PhoneGap/Cordova to build cross-platform apps. You should read up on it and use their free trial here: http://www.telerik.com/appbuilder
Check out the Multi-Device Hybrid Apps (Preview) from Microsoft.
Don't you just love their naming conventions...
I haven't had a chance to try it myself as it requires VS2013 and Windows 8.1, but it looks promising.
Use Nomad. (Visual studio extension which integrates Adobe Phonegap Build)
Update:
From http://vsnomad.com/
Retiring Nomad
When we made Nomad free, we hoped the support load would be
manageable. However, we’ve found our users still expect a lot of
support for free tools. We don’t want to give our users false
expectations, so we think it’s better that they find another solution
with full support. For this reason, we will retire Nomad on September
1st this year.
Alternatives to Nomad
Nomad uses the open-source Cordova framework. This means you can move
Nomad projects to other vendors that use Cordova, including:
PhoneGap Build (Adobe)
Instead of using PhoneGap Build via Nomad, you can interact with it directly using the PhoneGap Build command line.
Multi-Device Hybrid Apps (Microsoft)
A Visual Studio extension that adds PhoneGap support.
AppBuilder (Telerik)
A Visual Studio extension similar to Nomad.