|How to develop Android app|
Mobile applications come in two formats: Native applications and mobile web applications. While each looks and feels similar, they are quite different. Here’s a brief explanation of each:
A native mobile application is simply a piece of software for smartphones and tablets. Native applications are built specifically for each mobile platform and installed on the device itself. Just like PC software doesn’t work on a Mac, each native mobile app only works on the platform for which it was built. If you want native apps to work across all mobile platforms, you must build separate versions for each platform.
A mobile web application is a web application formatted for use on a smartphone or tablet and accessed through the device’s web browser. Since mobile web applications are accessed through the browser without requiring installation on each device, they are platform independent.
The biggest difference between the two options: Native applications are installed directly on each device while web applications are served from a central location and accessed through a web browser. Both options come with their own unique drawbacks and benefits. Choosing between the two boils down to your company’s needs.
Questions to ask before creating mobile apps
While the differences between the two types appear minor to the user, they are really quite substantial. In order to choose the appropriate app type for your business, answer these 5 questions:
How many platforms do you need to support?
Right now, there are roughly 4 main smartphone platforms:
- Windows Phone 7
- Blackberry OS
- Blackberry OS
- Windows 8
Do you want mobile applications that work across all tablet and smartphone platforms?
If so, you must create 8 different versions of each application. Even if your company only needs internal mobile applications for one platform, you must still ask yourself this question: Are you certain that this is the platform of the future? If you ever switch platforms, you must create brand new applications. If cross-platform compatibility is a concern for your business, mobile web apps are a better choice as they are completely platform independent.
Do you need to use hardware sensors?
Native apps have access to more of the device’s hardware sensors, such as the camera and microphone. While mobile web apps can access certain sensors, like GPS, accelerometer, and gyroscope, they cannot access the camera or microphone. If you need a business app that uses these sensors, native apps are a better choice.
How important is security?
Mobile computing’s biggest advantage, portability, is also its biggest weakness. Since tablets and smartphones are so portable, they are also more likely to get lost or stolen. Native mobile apps that access important data could pose a security risk. Since native apps store data on the device itself, a lost or stolen device could lead to a security breach. On the other hand, mobile web apps store data in a centralized location, not on the device itself. In this case, a lost or stolen phone/tablet doesn’t pose a security risk as no data is stored on the device itself.
What’s the purpose of your app?
Mobile business applications generally serve one of three purposes: internal use, customer use, or revenue generation. If you’re building apps for internal or customer use, both application options are suitable. However, if you plan on selling your apps, you’ll need to build native apps and place them in each platform’s application store.
How important is data integration?
Will your apps access your database(s) and integrate into your current systems? If your apps are accessing business data, integration is crucial. Integrating native apps is difficult, if not impossible depending on your current systems. If data integration is important, mobile web apps are a better choice.
Requirements vary depending on the app format. Here are the requirements for creating both native and mobile web apps:
1. Developer(s): You’ll need a developer familiar with the mobile platform programming language. Most platforms use different programming languages. Here are the programming languages required to create native apps for the most popular mobile operating systems.
- Android - Java
- Blackberry - Java
- iOS - Objective-C
- Windows Phone 7 - C#
2. Join the developer program: You’ll need to join the developer programs for every platform you’re using. Each one requires a small entry fee.
3. Team: Ongoing, you’ll need a team together to maintain these native apps. Whenever a mobile platform releases a new update, you’ll need to update your application, or risk it not working with the updated OS. Each platform releases a new update every few months.
- Web developer: If you want full web apps that connect to a back-end database and include business logic, you’ll need a web developer. Unlike native apps, you’re not limited to one development language. You can build mobile apps in whatever language you wish, like Java, PHP, Python, etc…