5 ms·
Phonegap has great scrolling, touch events work as they should and UI quirks are not a fault of the framework. Maybe just dont make games with it. I have a su
by calsy 10y ago
Phonegap has great scrolling, touch events work as they should and UI quirks are not a fault of the framework. Maybe just dont make games with it.
I have a successful phonegap weather app with over 200,000+ users in multiple countries. As a solo dev it certainly does the job I require of it and gives me very good return on effort as I can effectively deploy the app to most any platform I wish.
Keep the JS lightweight, use CSS for all your transitions and most people won't be able to tell it's a hybrid app.
- nachtigall 10y agoMind sharing a link to the app?
- calsy 10y agohttps://appsto.re/i6797pt https://appsto.re/i6797pt Im an Aussie, my 'flagship' version is specific to Australian weather. I have weather apps designed for other countries as well.
- bschwindHN 10y agoI can't argue with a successful app. If it gets users and the users are happy, then you've succeeded. However, I disagree with with "Phonegap has great scrolling, touch events work as they should and UI quirks are not a fault of the framework" I just downloaded your app on my Nexus 5 and easily broke the UI with just a bit of button pressing. I don't know if the map is ever supposed to be displayed in a tiny portion of the app at the bottom, but here is what it looked like after some quick button presses: http://i.imgur.com/AoM5iKf.jpg http://i.imgur.com/AoM5iKf.jpg Additionally, the drawer list items don't scroll at 60FPS, and the scrolling acceleration is different from android's native acceleration. The drawer that comes into view from the right (city detail?) also doesn't scroll at 60 FPS and actually prevents the last row of details from showing on the screen unless I drag it into view (at which point it will snap back down when I release): http://imgur.com/JaZ9lMc.jpg http://imgur.com/JaZ9lMc.jpg It's also quite easy to screw up the views with multitouch pinching (which users will notice when they try to interact with your map): http://imgur.com/ojfcTV6.jpg http://imgur.com/ojfcTV6.jpg This isn't your fault, but it's very hard, if not impossible, to get all this stuff 100% correct compared to a native version. Obviously the majority of users don't notice this stuff, but I just don't think you can make the claims you do about Phonegap. For new apps these days, if you have to go the hybrid app route, I don't see how someone would justify choosing Phonegap over React Native.
- sooheon 10y agoHi, are you claiming say a re-natal app wouldn't have those quirks? Or at least fewer of them? Any writeups/experiences you'd like to share?
- bschwindHN 10y agoYes, I believe so. I'm working on an app at the moment which uses ClojureScript on top of React Native. When I finish it I'll write something up. You can see an existing writeup on using React Native with JS here: http://cmichel.io/lessons-from-building-first-react-native-app/ http://cmichel.io/lessons-from-building-first-react-native-a... It basically works by running JS in a separate thread and doing the usual virtual DOM diffing algorithm to determine when to update and swap out native view components. The fact that it uses native UI components is what matters here. You don't have to recreate the behaviors in JS. It simply determines the tree of elements to display, it doesn't do the actual work of displaying them in a canvas. Then the underlying OS will take care of rendering from there. And then you get the niceness of slicing up data and making network calls in JS or ClojureScript. And if you use re-natal in particular, you get a really simple but powerful application model. You can read about that model here: https://github.com/Day8/re-frame https://github.com/Day8/re-frame I'm sure I'll run into quirks and other weird behavior as I go, but I seriously doubt it will be anywhere near the magnitude of problems you see with JS-canvas frameworks.
- calsy 10y agoMaybe save your judgement once you have successfully deployed your app on multiple platforms and dealt with myriad of issues that arise from your users.
- bschwindHN 10y agoOf course. But you can't deny there are classes of problems you completely dodge by using native UI components instead of a web view, especially when it comes to touch events and scroll accelerations. I'll shut up now and write something up once I deploy an app to multiple platforms ;)