Sencha Touch 2 Vs. Phonegap - mobile

We are in the process of analyzing the best platform for a Hybrid mobile application. The requirement will be an app that will be available on Android/iPhone/BB devices. On all other decvices, the mobile website can be accessed from the inbuilt browser.
I understand Sencha Touch does cover Android, iPhone and Blackberry devices - which means the mobile website will not be available from the browsers in the other devices (non-webkit browsers like Windows,Palm....)
While Phonegap has the compatibility across different browsers. I'm looking to see what advantages are of using Sencha over Phonegap considering all other features?

The main difference is that PhoneGap is a framework which does not include an inbuilt UI framework. Instead, it just acts as a cross-platform wrapper for the native APIs, exposing you a Javascript based API to access native capabilities. With PhoneGap, you have the option of using pure HTML5, or using a UI framework such as Sencha Touch 2 itself, jQueryMobile, jQTouch, Kendo UI, etc. Sencha Touch on the other hand, is a UI framework, but it does not have the out of the box capability to expose a cross platform JavaScript API for the native capabilities.
From the below statement from you, I suppose you do not plan to access any native APIs in your application, and what you will be writing is a pure mobile web application.
The requirement will be an app that will be available on
Android/iPhone/BB devices. On all other devices, the mobile website
can be accessed from the inbuilt browser.
If that is the case, I don't see any reason to use PhoneGap for your application. You could just write it entirely using Sencha Touch 2, and use it's build and packaging tools to package it for the target platforms.
However, if you are planning to use native APIs, then Sencha Touch 2 alone will not be able to provide you that capability, in which case you should wrap Sencha Touch 2 in a PhoneGap application. Have a look at this video from Sencha Docs regarding this http://docs.sencha.com/touch/2.2.0/#!/video/native-apis-from-touch

Related

Ionic Framework for Mobile WEBSITE

I want to use Ionic Framework for my mobile website.
I wonder that is there any risk for run Ionic Framework on mobile browsers.
I'll only use framework's CSS and JS which includes modals, popups, menus etc.
I built a prototype and I tested it on all versions of iPhone and 2-3 versions of Samsung. I haven't seen any problem on these devices. But I want to learn all risks before I start to real project which includes static pages and quotation steps. I'll use UI router by using HTML5 pushstate.
To learn your opinions, makes me more confident.
Thanks in advance.
Kindest...
There are certain caveats to this:
1. Ionic doesn't have a web server, and its testing server uses UIWebview and will not allow for POST requests.
2. Ionic is more optimized for app that is resident on the device. There are certain capabilities (ngCordova plugins for camera...etc.) that won't be available on mobile web.
Your scenario ("framework's CSS and JS which includes modals, popups, menus etc.") - should be fine, since you're only using functionality within Webview. You'd have to build a custom JS library that would only include presentation layer features.

Can you use the Ionic framework to build Mac apps?

The title pretty much says it all. I was asked this question today and really didn't know the answer.
Ionic is not intended to build desktop, or even desktop browser based applications.
From the official docs :
Ionic is focused on building native/hybrid mobile apps rather than
mobile websites.
As such, our browser support tends to be whatever Web View API is
available to native apps on a given platform. For Ionic 1.0.0
"uranium-unicorn", that means UIWebView for iOS 7+, and Android 4.1
and up. Windows Phone and FirefoxOS support is on our roadmap.
Even if you implement a browser website using ionic, the rendered output would rather weird.
Infact, Ionic has itself implemented it's website using bootstrap ;)

Can we use sencha touch to develop web application?

I am familiar to both Sencha Touch and ExtJs. My next project is web application. I am planning to use Sencha Touch to develop web application, because in sencha touch contains lot of graph components and also touch components events available. Can I use sencha Touch to develop web application?. Please anybody can suggest me. Great appreciate.
The selection of ExtJS or Touch framework is not about web or non-web applications, but about the device you want to run the result on. For desktop, use Ext JS, for mobiles use Sencha Touch.
Both have rich charting.
By web application if you mean HTML client side code your answer will be yes you can.
Sencha touch is by nature HTML based.
For native applications you used builder tools to obtain native ports.
In other words, yes you can develop web applications.
Also (as usual) check out the documentation for both ExtJS and SenchaTouch as they will both describe how to deploy as a web application.
Just a heads up, i've developed on both and Touch Interfaces wouldn't look very good on a web browser, they are designed and optimized for html 5 enabled mobile devices like tablets.
ExtJS however is developed for a desktop web experience, and the components look a lot better on a computer when rendered in an html 5 web page.

Cross platform mobile framework

I am looking into building an intranet based app which can support different mobile platforms.
I have looked into phonegap, sencha touch and jquery mobile. I am confused as to how the business logic can be incorporated on the client side ? Any input will be appreciated.
Phonegap is just a web browser that has an access to native apis. So you can use more or less any technology that a normal web browser can interpret.
With that in mind, for a business logic you have to general options: 1) create an api somewhere on you server and just make ajax calls from you application and/or 2) use javascript. This is the only language that can be used for business logic inside phonegap (beside the native java, objective-c and etc).
Out of all those mobile frameworks available, I would suggest you to go for Sencha Touch with PhoneGap. The reason I prefer Sencha Touch over Jquery Mobile is that Sencha Touch is far more smoother than JQM when it comes to page transition and navigation. Also, the extensive documentation from Sencha gives you a quick start on building mobile apps for both Android and iOS.
You may use PhoneGap if you would like to access any of the native features like Camera, Contacts etc.,
Here are some useful links:
http://www.sencha.com/learn/touch/
http://www.sencha.com/learn/getting-started-with-sencha-touch-2
http://miamicoder.com/sencha-touch-tutorials/

clarification needed on phonegap vs sencha touch

Phonegap
allows access to native features, camera, address book, etc.
has no built-in UI elements, something else is needed for that (JQM for example)
(anything else?)
Phonegap build
allows cross-compiling of an app, it could be sencha, phonegap, etc.
Sencha Touch 2
has UI elements that display natively on each OS
has its own build that allows cross-compiling
can be supplemented with phonegap if access to native features if required?
Is all of this information correct? If not please clarify.
Phonegap (Cordova) essentially generates an app that uses a web browser internally to run a webapp. The webapp that it runs can be made however you wish to make it, with any number of frameworks.
Sencha Touch is just one of those frameworks that can be used. ST can also, however, be used to generate the native apps, but it will not allow as much access to native functionality as packaging your ST app into a Cordova app.
FWIW, it was made public last week that the new version of ST (2.3) will have easier integration with Cordova, allowing a Cordova build using the Sencha Cmd tool.

Resources