Flutter: firebase_admob vs admob_flutter - flutter

https://pub.dev/packages/firebase_admob
https://pub.dev/packages/admob_flutter
What are the differences between these 2 packages?
firebase_admob is the official one while admob_flutter will support native ads soon (apparently). I have tried them both and found no issues but I wanted to know which one is better than the other.

The message that they will support native ads was listed since Dec. 10 2018, the first version.
Also even though it is called firebase_admob and it may seem like it is directly constructed for Flutter if you look at the GitHub repo readme, it shows that it is part FlutterFire.
[firebase-admob] tag exists while [admob-flutter] on Stack Overflow which makes it seem like it would be harder to get help when using since both of the packages don't have a proper API doc
It seems like firebase_admob would be better than admob_flutter as it seems to have a bit more features and can be more trusted to be maintained and up to date.
Update Edit: Now google_mobile_ads has been released with native ads for flutter.

Related

Where is awesome Flutter snippet extension?

Many tutorials recommend using awesome flutter snippet extension by Neevash Ramdial.
But i cannot find it in the VSC extension marketplace no more!
You guys having problem with this as well?
While trying to update the project with Flutter 3 support, the organization was accidentally deleted due to a tooling bug.
The plugin has since been reuploaded to the VSCode marketplace, but users will need to reload the extension since the IDs are different.
Very sorry for the inconvenience caused here 💙
Link: https://marketplace.visualstudio.com/items?itemName=Nash.awesome-flutter-snippets
-- Nash
Awesome Flutter Snippets is a collection of commonly used Flutter classes and methods. It increases your speed of development by eliminating most of the boilerplate code associated with creating a widget. Widgets such as StreamBuilder and SingleChildScrollView can be created by typing the shortcut streamBldr and singleChildSV respectively.
It is built-in in Android Studio/VsCode. You can try by using short keyword like when you'll create StatefulWidget you can type stf and it give you hint as StatefulWidget.

What Are The Consequences of Using "Deprecated Code" In Flutter?

I recently upgraded to Flutter 2.0. I have dozens of Flatbuttons that are now deprecated. It's going to take me a few days to fix them all. What are the consequences of shipping an update before then with deprecation warnings? The app still builds and runs fine.
Basically this code will be deleted in future releases of flutter/flutter packages. Most of the time, api's get deprecated when a bug that requires a completely new implementation that will break compatibility or a better implementation that will break compatibility.
Therefore, you can use deprecated code but you should be very careful as they are not maintained and might stop working or deleted in the future. So as long as you are not updating versions you should be fine but it is highly unadvisable.
The problem is that your code will be updated and the flutter will no longer support this widget.
But flutter 2.0 has a tool to help with that. Run the command on your terminal to see what has been depreciated and needs to be updated.
dart fix --dry-run
And execute this other command for fix the depreciated items.
dart fix --apply
For more details about fix, click here

What is the difference between FakeAsync and quiver.testing.async?

The Dart FakeAsync package seems to have the same functionality as quiver.testing.async inside the Quiver package so as a Flutter and Dart app developer I'm confused as to which one to use?
Is one supposed to be used over the other in particular circumstances? nothing in the documentation for either package gives any guidance on this either. Both packages also seem to be authored and maintained by members of the Google Flutter and Dart teams which makes it even more confusing.
The only thing I can see is that FakeAsync package is last updated in July 2018 while Quiver was in Nov 2019, so is FakeAsync deprecated? if so it's not labelled as such. And also a small number of core packages currently depend on FakeAsync, while a very large number of diverse package depend on quiver (though can't know if they depend on quivers testing.async).
I tried (with limited success) to dig into the muddled history.
FakeAsync was a third-party contribution to quiver, and a few months later, the author forked package:fake_async from quiver's version. I don't know what the rationale was for having two separate implementations, but I could guess that perhaps the author wanted to have more direct control over the code. (In other words, package:fake_async initially was not authored nor owned by Google.)
I asked around, and my understanding is that package:fake_async stopped being maintained, and Google's Dart team ended up taking ownership of package:fake_async so that it could be updated for Dart 2.
From package:fake_async's changelog, it does appear that it was meant to be a superset of quiver's version, but the implementations have since diverged so that it's no longer fully backward compatible.
At this point, I personally would use the quiver version: it's better maintained and is what Flutter uses, so I expect that it has much more inertia behind it.
I've also filed https://github.com/dart-lang/fake_async/issues/16 requesting that guidance be added to the documentation.
Update
I now recommend using package:fake_async. Flutter moved in the other direction and switched to using package:fake_async instead. package:fake_async has been updated to be a proper superset of of the quiver version. Also see https://github.com/google/quiver-dart/issues/590.

Is there a list of Stable Widgets?

Is there a list of Flutter stable widgets?
I've found several lists of nice flutter widgets, but as many of them have just been released, I'd like to select the stable ones and build over them. This way I'll keep the newer versions for a future version of my App.
You probably want to select a specific Flutter build release channel:
master & dev are probably not what you are looking for as they get updates basically as soon as possible (dev only once fully-tested)
beta has most of the latest functionality but the most stable / "best [..] build of the previous month"
stable. If you were really concerned, you could choose this, however, this will lack features of the pat few months.
In general, everything that makes it to beta has proven to be pretty "stable". Flutter uses continous integration and is pretty well-tested.
All of the official Flutter widgets should work without any issues and if you ever encountered an "unpredictable" bug, you could just open an issue or fix it yourself.

Is there any code inpector like sonarqube for flutter

Is there any code inspector like sonarqube for flutter.
As I am building a mobile app using flutter, I want my code quality very good. That's why I was searching sonarqube for flutter, but I was not able to find this.
I just released a Flutter / Dart plugin for SonarQube.
It is here : https://github.com/insideapp-oss/sonar-flutter
You can add analysis_options.yaml in the root of your project to enable extra checks and customize static analysis. You can read about it here
hope you are doing good.
While working on Azure CI integration, I come to know that there is no official support for flutter/dart from official 'SONAR QUBE'.
It will be great if flutter/dart community/people/developer cast their votes here:
https://community.sonarsource.com/t/support-for-dart/13555