-->

Which framework is the best to develop a mobile ap

2020-02-10 06:37发布

问题:

I developed a website using PHP5. Now, I want to sum up the main features of my website in a cross-platform mobile application.

I did some research about frameworks which can do this. I found 'jQuery Mobile', 'SenchaTouch' and 'Cordova' which are the most popular. But I want to develop an application which needs to have a connection to a database and which is portable on iOS and Android (at least).

I tried 'jQuery Mobile' but the application needs to be open in a web browser to display the application (like a simple website). For example, I would like to open my application like a current phone application without passing by a web browser using a database connection (to have the same behaviour than a current web site and display the content of MySQL request but without web browser).

Is it possible with jQuery Mobile or another one? Or do I have to pass by a web browser? Can anyone help me, please?

回答1:

There are 3 different types of mobile applications that exist today: native apps, hybrid apps, and web apps. A native app is one that is written in Java (for Android) or Objective-C (for iOS). Native apps have full access to low level hardware features on the phone and can be downloaded from app stores. Web apps are websites that use special JavaScript toolkits (like jQuery Mobile and Sencha Touch) and custom CSS to make websites appear to look and function like native apps. However, Web Apps can only be accessed through a browser - while you can "bookmark" websites to the Home screen on your phone to make it easier to access, they still can't be downloaded from an app store and don't have access to the hardware functions on the phone. Hybrid apps are a cross between these two. Hybrid apps are basically websites that are "wrapped" in native code. This allows you to create a native app that at its core is just a website, however, the wrapping allows you to access low level hardware like a native app and allows you to publish the app to app stores. Another major benefit of hybrid apps is that you only need to know HTML/JavaScript to create a multi-platform app that will run on all of the mobile operating systems. This is what Cordova does.

It sounds like what you want to do is create a hybrid application using jQuery mobile (or Dojo Mobile, or Sencha Touch, or one of the hundreds of other JavaScript toolkits out there.) This way you can utilize your web development skills and build a website that connects to your database. However, when end up "compiling" your HTML/CSS "mobile website" using Cordova, it will spit out native-looking apps for iOS, Android, and other platforms that you can then publish to the app store. When a user downloads your app from the app store and clicks on the launch icon, they will see your website but they will not see a browser toolbar or anything like that - most users will have no idea that they are looking at an HTML/CSS "website." This sounds like your goal, to have an app that functions like a website but will not look like a website.



回答2:

Types of App's

Three types of App's : native app, web app and hybrid app. But What’s the difference?

A web app will run on (almost) all smartphones, while native apps need to be developed specifically for each operating system (and even for different versions of these), and hybrids require at least the development of the native “container” that hosts the web language.

More info regarding the differences between these three apps.

Toolkit's for creating Hybrid App's

Converting web app into a mobile app is accomplished by wrapping the HTML, CSS and JavaScript inside a special container: usually the "web view" component provided by the standard mobile SDKs, along with some extra bits, such as JavaScript APIs to give the developer access to device features that the web view component doesn't provide (e.g. access to the device's GPS, camera, gestures, and notifications).

Some of these wrappers expect you to use their mobile JavaScript framework, whereas others let you use whatever JavaScript framework you prefer.

Toolkit's available :

Adobe AIR for HTML/JS Developers

Alpha Anywhere

AMPchroma

IBM Worklight

Intel XDK (formerly appMobi)

KonyOne

PhoneGap / Apache Cordova (probably the most widely used)

Sencha Touch 2​

Spot Specific

The M Project

Trigger.io​

More info regarding toolkit's for developing Hybrid App's.



回答3:

There is a very powerful tool that should be added to the list: Instant Developer (Inde) by Progamma. I used to use AlphaAnywhere to develop and moved to Inde, never looked back.