Native App only or WebApp with Native App on top? - android

I want to build some kind of multi-user blog that should mainly be used via smartphone but CAN be used at a pc/mac too. I want it to be stored in the iOS and Android AppStores, so just a webapp with mobile-view option doesn't seem right to me. Now my question. Whats the best option to start with? Create the webapp first to get the backend, databases and stuff and than write the native app that gets access to that databases? Or start with native app first and just build a simple webapp that gets access to the native app backend? Or maybe write the webapp with mobile view option and just write a simple native app that uses the UIWebView to show the mobile version of my webbapp? I hope this question is not too confusing^^
P.S. I decided to go for ruby on rails for the webapp and store that stuff on amazon aws ;)
P.S.2 How much is the UI of a native app customizable e.g. TableViews etc? Because implementing WebApp via UIWebView may be the more stylish option?
greetz

Look, Native UI will have quite good performance event on old Android devices,
but it requires some development effort to work with Android SDK. On another had you can create some hybrid webapp using Phonegap, but you shoud keep keep in mind that you may have some performance problems with slow-slow android's web view.
As for me blog app could be implemented with lightweight JS/HTML5, but in this case please don't use Jquery/ jQuery mobile - they are extremly slow, and I experienced huge performance degradation.

Related

ASP.Net Responsive Web Design or Native Mobile App

I am working on a project requirement.the project will be a ASP.Net Web application.
Database will be Microsoft SQL Server.this ASP.Net Web application will contain all the business logic and functionalities.
I have another requirement that all the functionalities in that web application should be accessible through mobile(IOS/Android) devices.
I hope we can do this in 2 ways.
1.Develop that web application with Responsive UI Design that supports all IOS/Android mobile devices.
2.Develop the web application business logic functionalities as .Net WebServices.Then Develop Separate Android/IOS applications to communicate with .Net Web Services and provide Better user interaction in Mobile.
Which way is the best way? Is there any other ways to accomplish this task?
among above two ways,How hard to make it possible / which is the hardest way?
Please somebody give a good solution.
Thanks
It depends on how "native" the app should be. Is it ok for the client to open a browser to visit the app? Or maybe it's enough to use phone gap to "emulate" a native app. From the actual point of view it`s hard to say what solution would fullfill the requirements. However, developing a native app arises a new maintenance channel. If you develop a reponsive web app it will be the only app that needs to be maintained. With every additional app you create (android, IOS and maybe Windows) you will create an additional app that needs to be maintained and to be tested, rolled out etc. Just keep that in mind while designing the architecture.
I think you should go with responsive web application.
Because as your are developing a new application then if you go with responsive then will save you time and the version problems which users face with **Android/IOS** will not occur with you.
Although you can provide full functionality to user with responsive. If you develop mobile application then it has some limits.

Phone Gap or native Android wrapper?

I want to develop an application which works both in a regular browser and as an Android app. Both seem suitable but would I be right in saying if I went with Phone Gap, deploying the same html content as a regular, server hosted website is not trivial and would require modification? Also, are multi page applications not desirable in a Phone Gap wrapper?
Are there any alternatives I should consider? I'm surprised someone hasn't already written an Android wrapper with all the hardware access wiring done already. Or have they?
There are few things you should know,
If you are going to publish your app also on iOS, you can't use server hosted website for your app.
All of your basic functionality must stand on your app assets, is one of the iOS guidelines, and its also make-sense for best ui performance (both iOS & Android).
Use server-side wisely, when you want to fetch data which have to be up-to-date.
there are some new mobile browser features which will be available in the future, that allow your website to use the device hardware functions:
Device API on W3C
Good luck dude ;)
You can try with jquery mobile framework:
http://www.jquerymobile.com
It is jquery based framework for developing web apps that works on standard web and on multiple mobile devices (with cordova)

How can I wrap my mobile website to access native mobile features?

I would like to wrap my mobile website in a native shell. The reason for this is that I'd like to:
Allow my users to take pictures using the app via a link on the page, if they're using the wrapped native site.
Send push notifications to my users
Based on my initial research neither PhoneGap nor Titanium are really meant for this. What is the best strategy here? If it makes any difference, this is an enterprise app not a public app. I am only targeting Android and iOS.
Are you not looking for something like Rhodes?
http://docs.rhomobile.com/rhodes/build
So several months later I'm not sure why I thought PhoneGap and Titanium were poor choices, but they both would have worked fine, I'm sure. For a hybrid iOS app I ended up just using UIWebView with a native UITabBar and implementing some delegate methods on the web view to make it feel native.

Is PhoneGap the right choice for me?

I am new to PhoneGap, and I have several questions:
I need a way to develop an application that will have iOS, Android, and other platform compatibility. In other words, I want to write 1 app and get compatibility versions for different platforms.
By reading the "Get Started" guide linked by the PhoneGap website, I found there are different procedures for different platforms. So to have compatibility versions across platforms, do I have to go one-by-one and change all of them if I make a modification to my app?
Also, what exactly is PhoneGap Build? It seems like I can avoid all that hassle mentioned previously and toss my app into the PhoneGap Build? Do I really not have to do anything besides writing the app? What if I need to make changes?
And finally, I've read that PhoneGap works with HTML, CSS, and Javascript, but not PHP. What if my app needs to contact a server? Can PhoneGap handle that?
Thank you for bearing with all these questions!
PhoneGap achieves platform compatibility by embedding a webview within your application. Therefore you can apply your knowledge in HTML, CSS, JavaScript and it additionally provides ways to interact with native features (e.g. camera, gps, ...).
With PhoneGap you write one general web app, tweak parts for the specific platform (sometimes you do not have to this at all) and build it for that platform. The latter can be handled with PhoneGap Build service: It takes your webapp and bundles it for the mobile operating systems out there (Embeds it within a Java app on Android, an Objective-C app on iOs)
PhoneGap is able to communicate with a server hosting a PHP script just as every other web application. Trying to dynamically load resources from remote sites can be quite a hassle but this is another question.
traumalles is correct. All your HTML/Javascript/CSS is running from within a webview on the device. Your code is, therefore, all "client-side." You can communicate with a server just like with any other page. When they say PhoneGap isn't compatible with PHP, they mean only that PhoneGap can't execute PHP code like it's a server, because it's not. It's just loading your webapp in, basically, a browser.
One other important question is what exactly do you mean with "other platforms" phonegap does provide many functionality for nearly every platform but the different webbrowser of the mobile devices have their problems and limitations.
For example are there many problems if you want to provide your application on a WindowsPhone Device because the Webbrowser has a few limitations which will cause your app to not look and behave like a native app.
Just look a bit through the phonegap API you will see that some functions are just available for IOS or for Android and there are a few only Blackberry methods and so on.
So you really have to be careful when a framework tells you it will work on all devices.
So i really don't have a problem with phonegap i worked with it very great but there will be limitations you have to deal with.
If you primarily want to develop for IOS and Android you can really achieve great native like results !

developing smartphone apps using Rhomobile

I have been developing an Android application for about two months now, and the guy I'm writing it for wants me to use this instead of the android SDK so we can deploy the application for multiple smart phones: http://rhomobile.com/
he says you can write the application in one language and it can be deployed for most smart phones. Has anyone used this website to do something similar? Any advantages or disadvantages I should know about and tell him? Maybe someone could give me a better explanation on what this really does.
I'm current a one man army. He wants the application out for most smart phones but can afford to hire more developers.
Rhomobile will start up a small webserver on your phone and then show a webview that is directed to this webserver. You are able to write all the application logic in ruby in a way you would do it if you would write a web app that is deployed on a real web server. Rhomobile uses CSS etc. to have the app look look a little bit like a native app.
If you know Ruby you will get an App fast but it will look crappy and the user experience will be crappy too. A similar framework is appcelerator titanium they will let you write the app in Java Script and then compile it into a mix of javascript, webview and native components that run on an Iphone and on an Android phone and titanium has a much nicer user experience then rhomobile.
Visit their pages and test some of the apps that they are promoting as showcase for their frameworks.
As many developers writing apps in Objective C have learned using HTML for the view and styling with CSS styling libraries is a great way to create attractive native apps. Rhomobile's Rhodes uses this approach as well. We used to let people use whatever CSS they wanted and they could choose to use IUI, JQTouch, IWebKit, WebApp.net or any other library along with Rhodes. The best external apps all seemed to use JQTouch for styling and animated transitions.
Recently we decided to ship with our own fork of JQTouch (which we made work on Android) in order to make this even easier. The recent Rhodes master branch created apps with JQTouch builtin makes such attractive apps even easier to build, as the stylesheets are included with Rhodes scaffold-generated apps.

Categories

Resources