What is App Framework?
Recently I developed few mobile apps using Intel XDK. I learned about some HTML5 mobile UI framework that time.As Intel XDK supports multiple mobile UI framework I had to try each of them and find out the one which will work for me.During this time I had a chance to learn and work on App Framework.
App Framework is tightly integrated with Intel XDK.Most of the demo apps which you can use as a template for app coding are created using App framework.But it can be used outside Intel XDK.Though I have used it along with Intel XDK only.The library remains the same whether used along with Intel XDK or not.But the user interface of Intel XDK helps.It decreases the learning curve and many tasks which need to be done when the library is used outside it.
App Framework predefined themes
This is one of the most loved features by me of App Framework.It comes with predefined themes.In predefined themes the user interface components are of specific styles.You do not have to worry about decorating each and every component to match a pattern.
I used this feature while developing my apps.The different themes available are
- Device Native – The UI components adapt as per the platform app runs on.On Android it will take Android native look,On Windows phone it will take Windows phone native look.
- iOS – The controls take iOS 6 look and feel on all device types.On Android phone also UI components will take iOS look and feel
- iOS 7 -Your app will get styled as per iOS 7 on all device type
- Android Dark & Android light – App framework comes with two Android like UI component theme.Your app will take this style on all devices
- Windows phone 8 Dark & Windows phone 8 light – You can give your app components look and feel of Windows phone 8.Your app will have the look on all devices
- BlackBerry – Blackberry like look and feel to your apps on all devices
- App Framework – The default App framework look and feel across all devices
You can use any of the theme mentioned above and customize your controls as per your need.In my apps I have chose the Device Native option.In my opinion it is better to give native look and feel to your apps.The best part is you can change themes of your app any time.It is as easy as selecting an option from drop down.There is no code changes or any other action from your side.
I have shown the drop down in above image.The selection process or changing between themes may not be so easy in non Intel XDK mode.But with Intel XDK it is very easy task.
App Framework UI controls
Below image shows list of controls available in App framework.This is the list of controls displayed in Intel XDK UI designer.The controls are divided into six divisions
- Layout – You can use them to control positioning of other controls on your app page like Column,Grid,Side by Side.Some of the layout controls can be used for dual purpose of positioning as well as UI component like Header,Footer.
- Form – This group contains standard HTML element like Select box,Option button and Text box
- Animated Sidebars – Sidebars are often used as menu in mobile apps.This group contains different types of sidebars
- Widgets – Widgets are collection of complex controls which are often required to achieve particular task in Mobile apps.For example to display Google Maps you can use Google Maps widgets.These widgets do need additional action from your side.But once you placed them on your app page the dependency is taken care of by Intel XDK.
- Media – The contain group of controls which can be used to display resources like Image,Video,Audio.They also contain advanced version of controls present in Form section.
App Framework My Experience
I have tried to give an idea of App framework above.So that before reading my experience you are familiar with App Framework.While selecting mobile UI framework for my apps I had tried all the frameworks shipping with Intel XDK namely Topcoat,Ratchet,Bootstrap 3,App framework and jQuery.jQuery and Bootstrap are more mature and aged framework compared to other three.
Since Topcoat,Ratchet and App Framework are created with mobile in mind I tried these ones.I was looking for performance and wide support for mobile devices.On these criteria of mine App Framework out scored the other two frameworks.You can read detailed comparison of those two frameworks with App Framework (App Framework vs Topcoat and App framework vs Ratchet).
App Framework is fast and there is no outside dependency.The library is also small.It does not add up much to size of your app.The framework also has support for AJAX and server side app.The UI has some events like tap,swipe.You can handle the events as per your requirement.
The latest version of Intel XDK (version 1816) ships with App Framework version 2.2.The current App Framework version is 3.The new version does not support devices running on Android < 4.0. The support of old Android devices in version 2.2 was one reason I opted for App Framework.But this may not be bit disadvantage.The number of devices running on version lesser than Android 4 is very less and is going day by day. But in case you want to support old devices then you need to use App framework 2.2.Also App Framework website offers couple of tools to create styles online.But the tools are not yet present for version 3.For version 2.2 you can access the tools using this link.I would like to see those tools getting ported for version 3.0.Also there should be more advancement in the tools to make it easier for new users.