6 ms·
I've extensively used Flutter for a messenging app. It's awesome in so many ways, but it's clearly not production ready! For example: - Text Fields are almost
by davexxx 5y ago
I've extensively used Flutter for a messenging app. It's awesome in so many ways, but it's clearly not production ready! For example:
- Text Fields are almost unusable for iOS users that don't have predictive keyboard enabled. Reported in 2017: https://github.com/flutter/flutter/issues/12920 https://github.com/flutter/flutter/issues/12920
- Emoji rendering is broken on iOS. Reported in 2019: https://github.com/flutter/flutter/issues/28894 https://github.com/flutter/flutter/issues/28894
This is due to the fact that everything, including the OS controls, are re-implemented in Flutter.
- davidkuennen 5y agoI don't know. I have a Flutter app in production for two years now with 200k downloads and > 10k MRR. I get consistently good reviews about performance and ux/ui. I think it's quite ready.
- jamil7 5y agoI believe you but it's hard to make a reasonable comparison without knowing what your app does. I've seen some really janky Flutter apps on iOS.
- deleted 5y ago[deleted]
- davidkuennen 5y agoIt's an investment tracking app [1]. Flutter did a lot to fight jank on iOS in the past months/years and is still improving there. So far I've heard no complains from my users. [1] https://stockevents.app https://stockevents.app
- jamil7 5y agoGreat work, I downloaded and played around, it's a useful app and am glad it's working out for you. I may be picky as I work as an iOS developer but I definitely see the places where it doesn't look or feel native to me and unfortunately list scrolling and view transitions still stutter - I understand this is a known issue the Flutter team is working on and is out of your control. Overall probably expected and reasonable trade-offs for a cross-platform framework.
- davidkuennen 5y agoCool, thanks a lot for the review and feedback! I think oftentimes it's hard to tell if it's a problem with the framework/SDK or your own code. I can't deny that there is a lot unoptimized code (for performance) in my app and I'm sure native iOS would be more forgiving. I guess it's 50/50 fault of my own negligence and flutter causing this jank.
- abeisgreat 5y agoI migrated from being a lifetime Android user to an iOS user a few years ago and I’m also a paid user of your app. StockEvents has never felt jankier than iOS as a whole. Is it perfect? No but iOS itself is filled with bugs and inconsistencies (just like Android). It’s definitely never felt out of place UX wise, I can’t think of any app I use regularly that uses much of the native iOS UI toolkit (except maybe the phone Settings) so I really have no specific expectations.
- davidkuennen 5y agoHey, thanks a lot for using Stock Events and thanks for your feedback! I'm always humbled whenever I come across one of my users. Feel free to contact me through the app or otherwise if there's anything that could be improved!
- jamil7 5y agoThese are actual issues recognised by the Flutter team themselves - you can't really hand wave them away as being standard iOS issues.
- Steltek 5y agoSaying Flutter and native iOS share the same issues is not the same as denying it as a Flutter issue.
- jklein11 5y agoI think the point was that from the perspective of the user the experience isn't any worse than a native IOS app. Your user likely doesn't know or care about the difference between a Flutter issue vs a Native IOS issue. You just don't want them to open the app and say wow this is jankier than normal, I don't trust it.
- kirbyfan64sos 5y agoWorth noting that inconsistent jank on iOS due to the way shader compilation works is a "known issue", and that whole part of Flutter is being rewritten as part of the 2022 roadmap: https://github.com/flutter/flutter/wiki/Roadmap#jank https://github.com/flutter/flutter/wiki/Roadmap#jank
- davidkuennen 5y agoYes! I'm looking forward to that update. But even before, there have always been little performance improvements here and there with every update of Flutter.
- Palmik 5y agoOff-topic: 10K MRR sounds like a lot for 200K downloads. What is your app and how is it monetized, if you don't mind me asking.
- iKlsR 5y agoYou can oft find a person/project by just checking the post author's submissions/name/comments. https://davidkunnen.com/how-my-stock-app-in-flutter-reached-1k-mrr-in-6-months/ https://davidkunnen.com/how-my-stock-app-in-flutter-reached-...
- davidkuennen 5y agoOh gosh, it's kinda embarrassing reading old blog posts I wrote.
- Palmik 5y agoTouchè, thanks.
- zerr 5y agoI'd say text inputs are notoriously hard/cumbersome to emulate/re-implement in order to match the native control behavior/functionality. I guess your app doesn't depend that critically on it? (unlike messaging app)
- davidkuennen 5y agoI will be honest. I was focusing on getting to production fast and never really bothered with the look and feel of specific inputs, so I can't really tell. And my users don't seem to care as well, since I never heard any complains from them in that category. They're just happy there is an app providing them value in this specific space.
- galosh 5y agoThe presentation of your app is gorgeous, but I was unable to open the try pro free page on LineageOS (no Play Services installed). I was just curious about how monetization worked. It just shows an endless spinner, tried repeatedly and waited 30+ seconds Just curious, how much time do you think you put into it in total? App / web Also curious how you marketed it, if at all
- davidkuennen 5y agoThanks for downloading and reviewing! Yes, you can't buy the pro version without Play Services or the Apple equivalent right now. I'm monetizing only through subscription. I made it part of my mission to refrain from all ads and focus on privacy as much as possible. For the next version I have removed Firebase Analytics and Crashlytics as well. The subscription for my app is half as expensive as the one from other apps on the market. But there is a rather hard point where you kinda have to buy PRO. That's if you want to track more than 15 stocks. I put in around 1000 hours so far.
- iKlsR 5y agoWhat library are you using for your charts in Stock Events? Looks very clean.
- davidkuennen 5y agoThanks for the compliment! I use a simple sparkline package: https://pub.dev/packages/chart_sparkline https://pub.dev/packages/chart_sparkline
- HWR_14 5y agoWould you mind sharing the iOS/Android breakdown? The claim was it doesn't work as well on iOS.
- davidkuennen 5y agoSure! Android 70% of the downloads and 60% of the revenue iOS 30% of the downloads and 40% of the revenue Generally, there are a lot more Android users outside of the US.
- HWR_14 5y agoInteresting. I think the conversion rate is (industry-wide) higher on Apple than Android, but you seem to have aimed at people who have money (literally) as your target audience, so I'm guessing that helps even out the converters. But also, you don't offer an ad-based option, so any tendency among Android users to lean towards ad-based software is likely overcome. Thanks.
- gfarah 5y agoOur experience has been similarly good. 750k monthly active users between iOS (29%), Android (60%) and web (11%). Supporting low spec Android devices has proven to be a much nicer experience for us using flutter.
- novok 5y agoCurious what yours and daves apps are! Could you link?
- ricardos12 5y agoAre you using flutter for the web, how is your experience with its performance
- miohtama 5y agoIt must largerly depend on the use case. Games, for example, might not need to deal with text input at all. A chat application on the other hand, might be more difficult nut to crack if the text controls do not work well.
- IshKebab 5y agoThat seems like a huge exaggeration of the severity of those issues: > Text Fields are almost unusable for iOS users that don't have predictive keyboard enabled. "Almost unusable" sounds like you can't type, but really it is just missing the autocorrect popups. And if you check the comments, somebody provides an implementation that does show them. > Emoji rendering is broken on iOS. This makes it sound like it doesn't show emojis, but really they're just slightly too small.
- onli 5y agoAgreed. I was thinking that we must have completely missed something (working with flutter right now) to not be aware of those bugs, but looking at them they are minor and have a solution in the issue threads. These are in no way blockers for getting apps done that users can like.
- sdflhasjd 5y agoI agree the emoji issue is a little overblown, but I think "almost unusable" could be appropriate. On a phone, the synergy of autocorrect and fat fingers is a delicate one, and even small changes can really upset the typing experience. Samsung once updated the keyboard on my phone, and the different visual cues and behaviour completely threw off my muscle memory and made typing very difficult. Even the autocorrect mode being wrong on an email input can be annoying, so a whole app acting up would be even more unpleasant.
- mort96 5y agoSaying "it is just missing the autocorrect popups" is misleading. The problem with not providing the autocorrect popups is that you _can't cancel an incorrect autocorrect_. That would 100% infuriate me.