How can I offer my web-based HTML 5 app as a native iOS app for iPhone?
-
Let's say I've built a mobile ToDo app that runs in the browser. I want to sell that app through the app store as a native iOS app for iPhone. Is there a way I can "wrap" the application into a frame so it's bundled as a native iOS app, instead of rewriting it in objective C?
-
Answer:
I strongly advise against that because iPhone users expect a very high level of polish and responsiveness from native apps that is not achievable via a wrapped HTML5 app. Gmail tried that approach, and it went bad: just take a look at the reviews and ratings they have received on the appstore (http://itunes.apple.com/us/app/gmail/id422689480?mt=8). Not what you expect from an industry leader, right...? If you have built an HTML5 app, leave it as so, so that people don't expect something you cannot deliver. You can offer your users to add a link to their Home Screen however and it may be the best compromise.
Nils Hayat at Quora Visit the source
Other answers
As mentioned, it is very easy to wrap your application as a IWebView, using your own code or frameworks like PhoneGap. Obviously, this will not take care of any "offline" requirements, as it will just wrap your only HTML application in a WebView (like an iFrame for native component).
Jeremy Chone
Yes. It is quite simple really. I recommend using Phonegap (http://www.phonegap.com). At a minimum this will allow you to take your existing webapp and "wrap" it in the Phonegap container which will then compile down to a native iOS app.
Joe McCann
Yes, definitely. With Corona SDK (http://www.anscamobile.com/corona), this is as simple as creating a native webview and specifying the URL to your web app. It can be done in just a few lines of code. Here's an example: native.showWebPopup( "http://yourwebapp.com" ) That's the most basic-use, but there are obviously more options. If you simply need it to be a full-screen webview wrapped in a native app, then the above line is really all you need. You can also do things like specify the dimensions so your webview is in a "frame" and you can create custom chrome for your app but that is all optional. Here is the reference page for Web Popups in Corona: http://developer.anscamobile.com/reference/index/nativeshowwebpopup Then, you can click build, choose your platform (iOS, Android, Nook, Amazon) and then you'll have a binary ready to upload to your chosen app store. The cross-platform aspect is really what sets Corona apart for those who want to simply wrap a web app into a native bundle. The other benefit is that you can even do things like send network requests to get information from your web app server and then display badges on the icon for your app, and take advantage of local notifications and other native-only features that could really make your web app stand out. But of course, those "extras" are completely optional, and the basic use-case is definitely okay as well. Disclosure: I am currently employed by Ansca, Inc. so while my answer may be biased, it doesn't mean it's not true :-)
Jonathan Beebe
As Nils said, I too advise against this, more when it is completely an web app and not a native app with web views as you've mentioned. It can however be done by just writing a quick native framework on iOS and Android (if you know yourself) or get these written in few hours by an expert; or using phonegap/ sencha may be fruitful too but don't what dependency level your app will be on these third party tools. To be more honest, you can clearly mention in app's description on store that it is a web based App etc, for users to know beforehand. That will only help in credibility.
Sudeep Bhatnagar
Native experience is best. But, I don't discourage you from using a wrapped html5 app IF you are using it to test a proof of concept to a limited market before pouring money in to native development. That's about the only reason I would suggest using a wrapper. It's very hard to get traction with a non-native experience.
Jac Madsen
You could use the Cordova framework, which let you code html,css,js and then it is possible to transfer it on both iOS and android. It installs with the npm command. Normally it's made to be installed on a node server. However, I tried it on my mac and it worked great even tough some margins would not be exactly the same on the android version and the iOS one.
Alexandre Bouchard
My stuff on the Apple app store has very good sales - lots of nice reviews - released in 2011 and still selling well - all done in an early version of PhoneGap. For most purposes PhoneGap / Cordova will work - and its very easy to set up and test.My personal feeling is that unless you need every ounce of performance, in which case you will probably want to go for Objective C - a HTML wrapper is plenty good enough.
Mark Clarke
Related Q & A:
- How can I restore Sharepoint web app when the DB is in another server?Best solution by SharePoint
- How do I create a web based msn?Best solution by Yahoo! Answers
- How can i downgrade a fat psp v.5.03 down to v.1.50?Best solution by Yahoo! Answers
- How can I fix a light weight(1.5 kg) lighting fixture on the Cieling without screws/nails -Maybe stickypad/tape?Best solution by Yahoo! Answers
- How can I get a home based online job?Best solution by forbes.com
Just Added Q & A:
- How many active mobile subscribers are there in China?Best solution by Quora
- How to find the right vacation?Best solution by bookit.com
- How To Make Your Own Primer?Best solution by thekrazycouponlady.com
- How do you get the domain & range?Best solution by ChaCha
- How do you open pop up blockers?Best solution by Yahoo! Answers
For every problem there is a solution! Proved by Solucija.
-
Got an issue and looking for advice?
-
Ask Solucija to search every corner of the Web for help.
-
Get workable solutions and helpful tips in a moment.
Just ask Solucija about an issue you face and immediately get a list of ready solutions, answers and tips from other Internet users. We always provide the most suitable and complete answer to your question at the top, along with a few good alternatives below.