Description
This is currently not on Flutter's roadmap, for reasons discussed in these comments: #14330 (comment), #14330 (comment)
Code push for Flutter is available as a third-party product from shorebird.dev, as discussed in this comment: #14330 (comment)
This comment gives a brief overview of various kinds of "hot update" features, and gives terminology for referring to them, which can help if you wish to communicate unambiguously about this topic: #14330 (comment)
Often people ask if Flutter supports "code push" or "hot update" or other similar names for pushing out-of-store updates to apps.
Currently we do not offer such a solution out of the box, but the primary blockers are not technological. Flutter supports just in time (JIT) or interpreter based execution on both Android and iOS devices. Currently we remove these libraries during --release builds, however we could easily include them.
The primary blockers to this feature resolve around current quirks of the iOS ecosystem which may require apps to use JavaScript for this kind of over-the-air-updates functionality. Thankfully Dart supports compiling to JavaScript and so one could imagine several ways in which one compile parts of ones application to JavaScript instead of Dart and thus allows replacement of or augmentation with those parts in deployed binaries.
This bug tracks adding some supported solution like this. I'll dupe all the other reports here.
Activity
aam commentedon Jan 29, 2018
cc @floitschG
neiljaywarner commentedon Feb 14, 2018
also see
https://groups.google.com/forum/#!msg/flutter-dev/YwzItp1pxJo/7bFGDLvxBAAJ
I would be extremely excited about this.
I would think this would be fairly important because this is might be one of the only truly distinctive features of react native, and unfortunately some companies might consider this a dealbreaker.
Use cases
yaronlevi commentedon Mar 5, 2018
In the epic battle that is Flutter vs React Native, code push is one hell of a tool (:
As an RN dev I can't stress enough the importance of this feature. Many will pass Flutter just because the absence of hot pushes. Once you get accustomed to quickly fix bug and push new features you can't go back.
badoet commentedon Mar 14, 2018
compiling to javascript path will diminish the dart advantages right?
i found some native app used to be able to have code reload using Rollout.io but it was blocked by Apple: https://news.ycombinator.com/item?id=13817557
looking at this pattern, seems like flutter will not have a seamless code push feature like what we see on react native.
would love to get more insight to this feature possibilities from core maintainers (:
zoechi commentedon Mar 14, 2018
What advantages are you talking about?
ck-vimaljose commentedon Mar 15, 2018
Codepush is very much needed. Love to see the over-the-air upgrade release possibility on Flutter.
neiljaywarner commentedon Mar 16, 2018
we just had a live use case with a production app where we were getting lots of bad reviews for a feature that appeared to be slightly edge case (related to denying location permission in a use case that not every test account had ) but really wasn't.
a codepush feature could push critical fixes for users immediately rather than waiting for them to upgrade; for some reason it seems users are slow to upgrade sometimes :(
rockneverdies55 commentedon Apr 19, 2018
No hot code push support is a NO GO :-(
yisding commentedon Apr 25, 2018
Looks like JavascriptCore may no longer be required for interpreted code: https://www.theregister.co.uk/2017/06/07/apple_relaxes_developer_rules/?page=2
thefuzzyorange commentedon May 11, 2018
If the IOS ecosystem is a hindrance, why not implement on Android only for now? Something better than nothing and its a starting point.
339 remaining items