When using PhoneGap, I have a full web like capabilities? - facebook

I'm studying the best plataform for developing a mobile app (for Android, first) which will have a lot of web interactions, like loading XML, images and interactions with Facebook(loading contacts, for example).
I want know if a app created with PhoneGap can behave like a normal web page(if can use Jquery for Ajax, etc), or I'll have problems doing that.
Thanks!

Yes, you can use jQuery and Ajax with PhoneGap.

Related

iOS toolkit/framework/component for building news like app

Is there some-kind of open-source (or commercial) toolkit, framework or iOS component that would simplify process of making iPhone app for news-like website?
I know there are on-line services that create a native iPhone app from your blog (Wordpress, Blogger, ...), but we have a custom-build news site and we need a native iPhone app. Is there something cool to begin with, some kind of framework or toolkit that would offer you a basic setup like data fetching, caching, categorizing and common UI in terms of native iOS UIKit elements? Or is the only way to go do-it-yourself-from-beginning-to-the-end?
As far as I know, there are a couple of SDKs that will allow you to create full Apps using html, css and javascript.
Phonegap (http://phonegap.com/)
Cordova (http://cordova.apache.org/)

Is Titanium's HTML5 (and JS) really native?

I'm a little confused about this. Titanium is bragging about being able to style with CSS, program with javascript and create with HTML5, whilst making the final product native to the platform. How is this possible? If I'm writing in JS/HTML/CSS then won't they be run within the browser? Making them non-native?
See jhaynie's explanation of how the Titanium Mobile SDK is used to compile to native code. In essence, the Titanium Mobile SDK creates a mapping between their APIs in javascript and the native APIs of the target platform.
Titanium code are written in core JavaScript and code is then converted into native code(i.e. objective c or java) But when you use HTML and CSS into titanium you need to render them into "WebView" a browser without address bar. So in that sense titanium is completely native.
You code a Titanium Mobile app in js using their API that 'bridges' your code to the native API.
You don't use html/css at all unless you want to include a webview with local content.
It's possible you are looking at old documentation. Titanium used to use HTML/CSS/JavaScript for creating applications which did not use native UIs but as of 0.9 is more of a JavaScript abstraction of a generic mobile device. This means you won't be using HTML or CSS to build your app and the process bears little resemblance to building a web app. Other tools like PhoneGap use the web app model in place of a native UI.
That said, you can create a web view (in-app web browser) in Titanium which you can use to show HTML5 content if you so desire. Also, as of Titanium 1.5, you can also use a CSS-style language called JSS to separate your JavaScript application model from your content.
Apple iOS has a "WebView" which is basically a browser window under control of the program. They take your code, plop it in to a WebView and wrap some infrastructure around it, and compile and ship it as a "native" program.

What is a Hybrid App for mobile?

What is a hybrid app for mobiles? What is basic architecture to follow while developing? What are the components? What will be the back end and what will be the UI? Is it for only iPhone or can be for any mobile device?
With iOS, you can create an application that combines features of native applications and webpages.
A hybrid application is a native iPhone application that provides most of its structure and functionality through a web viewing area, but also tends to contain standard iOS user interface elements.
A hybrid application gives users access to web content with an element called a web view (described in “Web Views”).
Precisely how you use a web view in your application is up to you, but it’s important to avoid giving users the impression that your application is merely a mini web browser.
A hybrid application should behave and appear like a native iPhone application; it should not draw attention to the fact that it depends upon web sources.
You can create Phonegap app and still using native controls of cocoa for powerful features like Mapkit api, UIWebview (Childbrowser plugin) etc
A hybrid app is a mobile application in which the same app can be worked in different mobile operating systems like iOS, Android, Windows, etc…, and even in browsers (Mozilla, Chrome, IE, etc.. ). It is the same as mobile applications for users, which can be installed from App Store or Google Play store. But technically it’s different, its works with a combination of HTML, CSS and JavaScript.
More read-: http://webduratech.com/what-is-hybrid-app-how-it-can-help-small-scale-business/+
A hybrid application blends web views (loading a webpage into the app) and native code together to create a single seamless application. In most cases it is faster than developing the entire app in native code, because developing for the web is easier (there are tons of web frameworks and it is just easier to develop good looking content on the web vs via native code, such as swift).
Ex: Amazon uses web views for the products page on the iOS app, being able to reuse the code on iOS, Android and the web saves them a ton of time.
In a hybrid app, the core of the app (navigation, location) are normally done in native code and stuff such as showing images and information is generally done via web views.
Since web views are a web page, you can develop them in any HTML 5 framework you would like to use.
The most important part is to have an app that works and runs super well for your users, and having web views in the app is very tricky, but a huge time saver.

How can I develop an iPhone app in HTML5?

I have seen a blog which claims that we can develop iPhone applications in HTML5. Untill then I was aware about Objective-C on Mac.
Can we develop an interface with backend support application in HTML5 on iPhone? Will it be secure and scalable?
If HTML5 is a markup language, then how can I make conditional statements in it? Would it be via jQuery or Javascript?
Which IDE should I use to develop an iPhone app in HTML5?
A great place to start when developing an iPhone app in HTML5 is PhoneGap.
You could either go the full-blown app route by developing an iOS app using PhoneGap, or only selecting certain tools/frameworks to help build a web-based app for mobile devices.
And very much like how it works with websites, HTML is used for the structure, CSS for presentation and JavaScript for behaviour. So yes, JS is used for conditional statements, etc.
Yes.
You can develop an HTML5/CSS3/Javascript app, then wrap it in PhoneGap or Apache Cordova to make it native and put it in the App Store (or Android Market...), as well as publish it on the web. You can do this with whatever tools you're comfortable with.
Using a tool like PhoneGap has many benefits over browser-based Mobile Web Apps, such as allowing you to parse iPhone contacts and access the local hardware.
It's great in combination with jQuery Mobile, but since performance is a MAJOR issue you must be very cautious to really streamline your images, CSS, and Javascript.
See this link to learn more about Mobile Frameworks.
I have seen a blog which claims that we can develop iPhone applications in HTML5. Untill then I was aware about Objective-C on Mac.
If you want to write a native iPhone application, then Objective-C is your only option. However, as the iPhone’s web browser has a lot of capabilities (e.g. offline caching), you can develop applications that run in its web browser, as opposed to natively. They can’t access all the features of the iPhone, and they are simply websites (so you need a server to serve them), but before the iPhone SDK was released, Steve Jobs himself described web apps as the way to write software for the iPhone.
Can we develop an interface with backend support application in HTML5 on iPhone? Will it be secure and scalable?
I have no idea what that means.
If HTML5 is a markup language, then how can I make conditional statements in it? Would it be via jQuery or Javascript?
Correct: JavaScript. (jQuery is just a JavaScript framework, and it’s probably a bit heavy to use on current iPhones.)
The HTML5 spec blurs the distinction between HTML and JavaScript by defining the DOM interface for the HTML elements it specifies, and defining new DOM features (e.g. offline caching) that aren’t technically part of HTML. Apple (and other people) have further blurred the term “HTML5” by using it to encompass various CSS features like animations and transforms, which you’ll probably find very useful for making web apps feel more like native apps.

What are the iphone/android specific Web features?

I'm trying to list Web features (HTML, CSS, Javascript, APIs)
that can be used for mobile web pages, things we don't usually
use on Desktop browsers.
So far, I have:
geolocation
orientation
viewport (width, scale)
touch-events
tap-highlight-color
map and youtube links open in a dedicated app
tel: links support
specific keyboard layout depending on the form (type=number, email, ...)
What do I miss here?
The question would be: "If I am a Desktop Web developer, what should I consider to build a mobile version of my website?"
Actually, a lot of these are already in the HTML5 standard. They are not, in fact, Android/iPhone specific.
For example, the following are part of the HTML5 spec:
Geolocation: already implemented in Gecko (Firefox) and Webkit (Safari/Chrome)
Viewport: accessible using Javascript
Number/email/phone number-specific fields: implemented in part by several browsers
Your major concern when dealing with mobile versions of your site (assuming you mean touch-enabled smartphone) is the size of your icons/buttons/text/controls/etc. Anything else, including multi-touch, is simply an extra.
As for other extras, you could consider using something like JQTouch (http://www.jqtouch.com/) to provide a more "native" look and feel on the mobile client. JQTouch provides things like native animations, AJAX interface, specialized buttons/toggles/text fields, and themes that make iPhone web apps look better. It should also work on Android, since its browser is also based on Webkit.
For more information on iPhone/Android web frameworks, see http://distractable.net/coding/iphone-android-web-application-frameworks/.