For a while now, I’ve been eying Ionic as an alternative to building a native application. Everything looks solid, especially when compared to other HTML5/JavaScript frameworks. However, I have a few concerns, none of which have been addressed by the various demo applications.
Case in point: I received an email this morning highlighting SongHop, a clever little app that showcases new and popular music. I opened it, chose a category, and favorited several tracks. I then when to my profile and started playing back the songs in full. Up until this action, the application was snappy and truthfully, I didn’t know it was a hybrid app.
But when I backgrounded SongHop (just by pressing the home button on my iPhone 6), the music stuttered. This is something I’ve never encountered on a native app (unless it was playing high-res video). I also noticed that when the phone was locked, while audio continued to play, the artwork wasn’t displayed on the home screen.
To the creators: please understand that I’m not criticizing the application itself — but rather using it as an example of the framework’s limitations, as I see them.
So here are my questions. These are the only things that are preventing me from using Ionic for my application, and I would love some concise, honest answers.
Is there a way to make sure currently playing audio doesn’t stutter when the application is backgrounded or reactivated? If so, how, and why aren’t projects like SongHop (mind you, a featured application) employing these techniques?
Most native applications have the ability to display the media title, artist, and artwork on the lock screen. Is this functionality possible with Ionic?
Outside of the examples above (which I would like to see fixed, or be pointed to a technique to resolve them), I also haven’t seen many applications that use Ionic on the iPad. Is there a way to create universal applications for larger screens?
All of these issues are show-stoppers for me. If I can find a way to handle these cases with Ionic, I’ll be very happy. (I’m willing to live on the bleeding edge, if these are concerns that have been fixed in master or nightly releases.) Otherwise, I’m afraid it’s the native path for me.