1) What is Ionic framework?
Ionic is open source HTML5 framework used for hybrid mobile application development. It provides tools and services for building Mobile UI with native looks and feel.
2) What are the features provided by Ionic?
Following important features provided by Ionic are:
- It uses AngularJS MVC architecture for developing rich single page application.
- It gives implementation of CSS components to accommodate your own designs.
- Ionic license is released under MIT.
3) What are the advantages of Ionic?
Following are the advantages of Ionic framework:
- Ionic is used for Hybrid application development. It means you can develop your application for IOS, Android, Windows Phone and Firefox OS.
- Ionic provides useful pre-generated app setup with simple layout which makes very easy for starting your app.
- App developed in Ionic are very maintainable and easy to update.
4) What are the disadvantages of Ionic?
Some disadvantages of Ionic are:
- Testing is tricky because the browser does not always give right information about the phone environment.
- Hybrid application tends to be slower as compare to native application.
- It is difficult to combining different native functionalities.
5) How can you identify a platform (iOS or Android) at runtime in Ionic application?
Ionic provides platform classes when an application is loaded. It adds CSS classes to the <body> tag. For example, it adds platform-android4_4 (for Android 4.4) class to <body> tag, for iOS it adds platform-ios class to <body> tag.
6) How can you test Ionic application?
Ionic application is developed using AngularJS. AngularJS has a collection of test libraries and frameworks such as Karma and Jasmine test runner. Ionic uses these frameworks for unit tests of application.
7) What is the difference between “ionic build” and “ionic prepare” ?
ionic prepare <platform> copies all files from www folder into the target platform’s www folder.
ionic build<platform> perform the task of ionic prepare as well as it builds the app's source code which facilitate to run over simulator of emulator or a device.
8) What is the role of AngularJS in Ionic application?
AngularJS provide testing facility for application developed in Ionic, because AngularJS is set of test libraries and frameworks.
9) What are the storage types in Ionic framework?
Ionic supports both external as well as internal storage of data.
- External storage ( MySql, IndexedDB, WebSQL,MongoDB,PouchDB,).
- Internal storage (SQLite)
- Session, Cookie.
10) What is Ionic Market?
Ionic market provides ready starter, thems, plugins etc. for developer to download them for their own projects.
11) What is Native Apps?
Native Apps are those which are develop for specific platform or device. Native apps are device specific software and hardware since apps are developed byb using a particular platform.
12) What is Mobile Web Apps?
Mobile Web Apps are really websites, not real applications. Their look and feel is like native applications, but their implementation is not different from native application. It is also called as mobile website.
13) What is Hybrid Apps?
Hybrid Apps are developed by using HTML-5 and native based web features. HTML-5 is basically a web page or collection of web pages which are developed to support and run on small screen. Hybrid apps are also known as web apps.
14) Give some examples of hybrid mobile app frameworks?
There are several frameworks are available for hybrid mobile app development.
- Mobile Angular UI
- Intel XDX
- Appcelerator Titanium
- Kendo UI
15) What is Ionic header bar and where it is located?
Iconic header bar is used to build header on the application. It is located on the top of application. The bar class is a main class with bar-header used for creating header bar in your app.
<div class = "bar bar-header">
<h1 class = "title">Header</h1>
16) What is Ionic footer bar and where it is located?
Ionic footer bar is used to build footer on the application. It is located on the bottom of application. The bar-footer class is used for creating footer bar in your app.
<div class = "bar bar-footer">
<h1 class = "title">Footer</h1>