Google Bridges Android, iOS Development With Flutter 1.0 (arstechnica.com)
Google has launched Flutter 1.0, the first stable release of its open source, cross-platform UI toolkit and SDK. "Flutter lets developers share a single code base across Android and iOS apps, with a focus on speed and maintaining a native feel," reports Ars Technica. From the report: Flutter enables cross-platform app code by sidestepping the UI frameworks of both Android and iOS. Flutter apps run on the Flutter rendering engine and Flutter framework, which are shipped with every app. The Flutter platform handles communication with each OS and can spit out Android and iOS binaries with native-looking widgets and scrolling behavior if desired. It's kind of like applying a "video game" style of development to apps: if you write for a game engine like Unity or Unreal, those engines are packaged with your game, allowing it to run on multiple different platforms. It's the same deal with Flutter.
Flutter apps are written in Dart, and the SDK offers programmers nice quality-of-life benefits like the "stateful hot reload," a way to instantly make code changes appear in the emulator. For IDEs, there are plugins for Visual Studio Code, Android Studio, and IntelliJ. Apps come with their own set of Flutter UI widgets for Android and iOS, with the iOS widgets closely following Apple's guidelines and the Android widgets following Google's Material Design. Flutter is designed to be fast, with its custom app engine running on Google's hardware-accelerated Skia engine. This means 60fps apps on Android and iOS and a path for 120fps apps in the future. This is a bigger deal on Android than it is on iOS. The Google Ads app is already built on Flutter, which means Google "thinks Flutter is ready for prime time," writes Ron Amadeo. There's a list of other apps built on Flutter, too. Amadeo goes on to suggest that Flutter may be the path to Android's replacement. "Flutter ships its own app engine on Android and iOS, but in secret, Google is also developing an OS called 'Fuchsia' that runs these Flutter apps natively," writes Amadeo. "With Fuchsia, Google would switch from the Android apps written in Java to Flutter apps written in Dart..."
Flutter apps are written in Dart, and the SDK offers programmers nice quality-of-life benefits like the "stateful hot reload," a way to instantly make code changes appear in the emulator. For IDEs, there are plugins for Visual Studio Code, Android Studio, and IntelliJ. Apps come with their own set of Flutter UI widgets for Android and iOS, with the iOS widgets closely following Apple's guidelines and the Android widgets following Google's Material Design. Flutter is designed to be fast, with its custom app engine running on Google's hardware-accelerated Skia engine. This means 60fps apps on Android and iOS and a path for 120fps apps in the future. This is a bigger deal on Android than it is on iOS. The Google Ads app is already built on Flutter, which means Google "thinks Flutter is ready for prime time," writes Ron Amadeo. There's a list of other apps built on Flutter, too. Amadeo goes on to suggest that Flutter may be the path to Android's replacement. "Flutter ships its own app engine on Android and iOS, but in secret, Google is also developing an OS called 'Fuchsia' that runs these Flutter apps natively," writes Amadeo. "With Fuchsia, Google would switch from the Android apps written in Java to Flutter apps written in Dart..."
Flutter apps run on the Flutter rendering engine and Flutter framework, which are shipped with every app.
My phone only has about 3 GB of usable storage for installing apps.
I'm so sick and tired of developers putting their own needs ahead of those of users.
These things never use the native look and are always slow.
The way they do just about everything else ?
"Flutter" is what the heart of your battery does when an app with the giant framework loads up.
Kudos for making software development sound erotic though with "stateful hot reloads". You'd pay a few hundred $ for that in Vegas and here it is free!
"There is more worth loving than we have strength to love." - Brian Jay Stanley
honestly can we not just use web app for GUI development like Steve Jobs evanglised when they first launched the iPhone ?
(native code if you must for OpenGL ES and specialist API's )
maybe if google actually contributed to cordova so we could use their "app" on something with a fast keyboard as well as mobile :
https://cordova.apache.org
Google's got a fluffer now?
if you write for a game engine like Unity or Unreal, those engines are packaged with your game, allowing it to run on multiple different platforms. It's the same deal with Flutter.
Thanks, Ars Technica (and Slashdot for the copy-pasta), for explaining to me how a software library works. I was completely mystified how they could pull off this wizardry otherwise.
Irony: Agile development has too much intertia to be abandoned now.
Microsoft purchased Xamarin, a native cross-platform engine, that could export to iOS and Android (and Windows Phone). They gave it to everyone for free. Yet, it still wasn't enough to make people to develop enough software for Windows Phone to make it viable in the marketplace. I tend to think Fuscia is going to suffer from the same lack of software.
A major difference is, unlike Google, MS supports their product line (you can still get Xamarin free). Whereas building an app on something that won't exist in 5 years seems silly. Also, Xamarin runs on .NET; this runs on Dart. I can find .NET programmers easily.
So, I don't think this is going to work. But I wish them luck.
Your ad here. Ask me how!
Stop Google now, before it's too late!
Qt allows you to develop native applications with a single codebase for a whole host of platforms, including all the smartphone platforms you can think of and even include video acceleration. Even better is you don't have to learn a some bullshit language that Google will ditch in a few years because it's a C++ framework.
Anons need not reply. Questions end with a question mark.
will be called
" Blo@'d "
and everybody will praise it and love it, at least all the halfwitt balmer developer junkies.
*sigh*
captcha : insert
Always first with the ads for the real customers.
Domestic spying is now "Benign Information Gathering"
FLUTTER!
I have been developing native looking & behaving apps for ten years using JavaScript an HTML.
Flutter is just a cheap attempt to get devs to use Dart, a language that's dead in the water since launch.
I see no ipad support. Probably one of the things why you still would be developing native on iOS (swift/objective-c) is because of ipad support.
Lots of stuff that looks like it belongs in HTML: padding: const EdgeInsets.all(16.0),
So immediately wrote it off as another attempt at getting PWA's on phones.
No thanks. PWA, PWA style apps, and attempts to move the industry to PWA when it suits your data collection models can simply fuck off.
PWA can die in a fire.
iOS is a company town. It's controlled by one company in ways Google can only dream of. Everything we fret about Google doing by controlling Android, Apple already does.
There are major problems with this. Even tough Java isn't the greatest programming language (but then again no programming language is). The greatest benefit of using Java is that there are now gazzillions of libraries and utilities to do everything under the sun, no matter what you need to to do you know there exists some library available to do it, so you don't have to code absolulety everything from scratch. If you switch to a spanking new language it takes probably a decade or so for the community to get up to speed with available libraries and that is only if the language is popular.
I hate all these new languages that are popping up, because there is nothing special about them, anyone can make a new programming language, that isn't the hard part. But the actual value of a programming language is in the availability of pre written solid working code that you can use in your projects.
You're sorely mistaken if you think iOS was the first in that space. Perhaps you have heard of something called Windows Mobile, formerly known as Pocket PC, formerly known as Windows CE? That has been around since the late 90s, in devices very much resembling the iphone, but without cellular connectivity way back then, and in devices having cellular connectivity for SEVERAL years before the 1st iOS device shipped.
The 1st such cellular connected device I personally owned running windows mobile was the TMobile MDA, released in 2005 a whole 2 years before the 1st iphone. I had owned several Windows Mobile PDA style devices for many years prior to that
https://en.wikipedia.org/wiki/T-Mobile_MDA
AKA
https://en.wikipedia.org/wiki/HTC_Wizard
Dart was one of the interesting transpiles-to-JavaScript things of the JS hype of the last 10 years, but it lost out to typescript like all the rest. The Flutter toolkit is Darts last chance of serving in a potentially viable ecosystem before it drops of the radar. ...
I'm not holding my breath. Although Dart has some really cool things. An own VM for own runtime niceties and a trivially ready mechanism for pseudo-concurrency and multi core programming that you can instantly grasp and use after reading the description for the compute() function.
If you like checking out awesome new PLs just for kicks, Dart is smack center in your ballpark.
We suffer more in our imagination than in reality. - Seneca
Adobe did this with Air (ActionScript and Flash technology), and as the summary states, Unity, Unreal, and many other game engines also do this. Xamarin also does this (much the same way as Unity, with C#/IL as the layer closest to "the metal")
You can make very serious apps with Unity, by the way... they don't have to be games - plus you get a pretty rich ecosystem of code (C#), support (Asset Store), and training.
Why do big companies constantly try and re-invent the wheel, when the existing ones work quite nicely?
I think the intent was to forbid loading script from a different domain.
honestly can we not just use web app for GUI development like Steve Jobs evanglised when they first launched the iPhone ?
That'd be fine if Safari for iOS were quick to support emerging web standards, particularly those aimed at platform integration. But if that were true, there'd be no need for things like PhoneGap/Cordova. Heck, it took six versions just to support <input type="file"> from HTML 3.2 (1997). This and other features appear to have been left out or delayed on purpose, with the intent to drive web application developers toward a native application on the App Store, with its periodic Mac hardware replacement to run the newest Xcode version, $99 per year annual fee, and 30% commission payable to Apple.
App stores plural, or just iOS? As I understand it, an Android app developer can satisfy the "Installation Information" requirement and other GPLv3 requirements by making the application's object code files available to licensed users for relinking with a modified version of the library to form an APK file suitable for installation on any Android device that supports adb install. This should work for any Android app that isn't a subscription video streaming app, a single-player microtransaction-driven game, or something else designed to enforce digital restrictions management against its end user.
Delphi (objective pascal) works well, and their C++ option is pretty good. Everything works out of the box, even bluetooth on both desktop and mobile (unlike Qt). Check out https://www.embarcadero.com/coderage-2018 to get an idea, you build the UIs like you used to in MFC/VB/WinForms has JSON support and will let you build cross platform applications that work with a better license than Qt. I think Embarcadero has really turned it around from what it used to be and you can get a good looking application running on either multi device (FMX) or windows only (VCL).
I also can see why Dart looks so good, easy for JS developers to transition to, I ran flutter for an android application and it was not bad. However, building the layouts is like going back to SWING where all the UI is built on code (rather than the give the XML to the UI/UX guy to do so not it is all in the programmers hands). The language is somewhat similar to Haxe and ActionScript (much better than JS). But I am not sure about the support for device sensors and bluetooth in Dart. Also the fact that last year Google was all about Kotlin and now is left in the dust?
Xamarin is cross platform, but you are building specific UIs for each platform, and their bluetooth and sensors layer is very quirky (and sometimes not so platform independent). MS has also screwed developers before, and I have felt a bit burned by them (even though I do really like Visual Studio). I tried it a few times, and honestly it was a headache every time but for the simplest of cases... the only pro about Xamarin is for using MonoGame to target cross platform (but Unity now is making game dev easy for just about anyone... is it even that relevant anymore?).
You can argue as well for electron, a glorified web browser local to your machine, so that is a desktop application for web developers... if you make it for mobile it would work too right? VS Code is written in electron and so is Skype now (it was in Delphi at one point for the windows client). But this is not mobile and beyond scope.
Unity is great for game or simulation development... if you are building an application on it you might know when to use a game engine and when to make an application.
I think what I (most of us) want is a few good options for development in mobile and desktop environments that is not python or JS, works well, and performs good in a typed language.
Remarkably similar to Avodart which is a drug for treating enlarged prostate. Coincidence? I think not.
They should name all of their products Flutter. mw: chiefly British : a small speculative venture or gamble. Synonyms: Noun adventure, chance, crapshoot, enterprise, flier (also flyer), gamble, speculation, throw, venture
Just because they announce it as v1.0; doesn't mean it is ready for usage right now. (or ever???)
The github repo is full of common crash situations that haven't been fixed (and might not ever be, if you understand the reason why it crashes). Several of them is directly related to their inability for the app to access or be accessed by anything synchronous properly. Since they can't actually handle _any_ of the sync api's properly from either iOS or Android, this limits a chunk of apis, callbacks and delegates that it can use properly. The android SaveState and LowMemory being two that cause them the majority of their issues that are sync. Right now it frequently crashes just grabbing a image from the image picker on android, i.e. using an intent to access anything external to the app. Also anything that can cause the device to be in low memory situation (user running a game anyone?) can easily cause your app to get killed and won't resume properly.
Developer in charge of Flutter has the "My way or the high way" attitude and it doesn't matter how many people show that support for these api's are needed (nor how many crashes are directly caused by the lack of this support). He doesn't like Sync support and so he veto'd the sync api PR over a year ago. One developer even walked him through the entire lowmemory notification stack with links to the ASOP source code; didn't make a difference last time I looked. He has no good answer on how to support any of these API's, but he is still unwilling to add the needed support. So at this moment the users of the flutter framework will suffer from things that all other frameworks can handle properly, and not be able to do anything about it...
I wouldn't trust my apps on a framework that intentionally breaks compatibility with OS standard API calls; with no way to work around it. So not ready for prime time... Probably never be ready for real application usage, and then it will be killed by Google because of lack of developers. Gee, who could see that coming...
The first in that space was the Newton, released almost 14 years before the iPhone, when used with a modem card attached to a cheap cell phone.
Check out my sci-fi/humor trilogy at PatriotsBooks.
I seem to recall hearing this story time and again. First there was the promise of Java. I've continued disliking it since I tried to load the JDK in the late '90s. Then .NET (a.k.a. Microsoft Java) was going to solve all of our cross-platform issues. Then Android -we can all code in Java but using the Android libraries. Finally, the Windows team bought de Icaza's Xamarin (formerly Mono) and have done...?
Please wake me when it is over.
The Kai's Semi-Updated Website Thingy
Newton was more like a tablet than a PDA/smart phone sized device that fit in a standard pocket, not to mention you could not make calls directly off the newton like the 1st windows mobile based smart phones, nor needed a separate tethered cellular device
Yeah, but the point is that the overall interface design started way back then. Palm copied it into a smaller form factor, and PocketPC copied it from them. So although iOS wasn't first, Apple was.
Check out my sci-fi/humor trilogy at PatriotsBooks.
Who gives a flying rat's ass about who was first or not? Newton was a POS. Palm polished it up and made it almost useful. PocketPC turned it back into a POS. As another AC noted, iOS is a walled garden while Android is fairly open. Thankfully Android seems to be winning out in terms of marketshare, so yay, we the people get to hang on to some software freedom for a little while longer. Without Steve Jobs' reality distortion field, we maybe we'll even see Apple finally rot away someday.
Codename One ( https://www.codenameone.com/ ) solved this problem several years ago.
I've built several apps with their system.
Debugging in the simulator is lightning fast. Their build farm saves hours of work setting up tools. And it is the closest thing you'll find to WORA for mobile since they provide interfaces to access native functionality and map to it on your behalf.
Best of all, their free tier lets you write small- to medium-sized apps for free!
It is the latest crush of every developer. Learn what are the top features of this new app framework.
This article is top trending this week on https://mobilehackers.io !