A mobile application is a web application that's designed for a mobile device. There are two kinds of mobile applications—native applications and mobile Web applications. This page explains the requirements and best practices for designing both kinds of applications.
A mobile application is not the same as a mobile website, where you create a version of your website that works on mobile devices.
Planning a Mobile Application
Before you create a mobile application, you need to think about what will be useful for the audience or audiences who will use your application. As you develop your project charter, ask yourself some basic questions:
- Who is my intended audience?
- What are they trying to achieve in a mobile setting?
- How will I use the app? What resources can my program bring to bear, and where do I need help from Communications and Outreach in terms of promotion?
- How will I measure success?
An application may be data-centric, content-centric or both. A data-centric application may show the nearest E-85 fueling stations. A content-centric application may show energy saving tips that consumers can use while they are at home and work.
Once you've decided what type of information you have, you need to decide if you want a mobile Web application or a native application.
Mobile Web Applications
Mobile Web applications:
- Can be used on all mobile devices, regardless of operating system or browser
- Can be developed by developers who know HTML5 and CSS
- Are updated as soon as the code on the server changes
- Cannot take advantage of some of a phone's features, such as accelerometers or cameras
If you want your application to work on as many mobile devices as possible, or if you want to create your application quickly and cheaply, then you should develop a mobile Web application.
Native applications are software applications that are created for only one platform—like Android or iOS. To reach users on other platforms, you need to distribute several versions of your application.
- Are faster to use than mobile Web applications
- Take advantage of some features of your phone that mobile Web applications can't, such as the accelerometer or the camera
- Provide better control over the user interface
- Require developers who have specialized knowledge of the target operating system or device.
- Are not updated automatically. The user needs to update to new versions as they come out.
Native applications can be more expensive to create and reach a smaller audience, although they can take advantage of more of a mobile device's features.
Getting Approval for Your Mobile Application
Once you have a plan for your mobile application, you need to bring it to the Web Governance Team (WGT). Do this before you start coding.
The WGT will review your idea and give you approval to start your project. They will ensure that you are aware of the Web application standards and any other security requirements that your project will need to meet.
Before you start:
- Make sure the application is approved by WGT before development begins.
- Plan to develop your application in the EERE template. If you intend to create a unique look and feel for your application, then you will need to justify this at your initial WGT meeting.
Coding Your Application
If you're coding a Web application, then you will code it following the same guidelines you'd use for Web applications.
To develop a native application, your developers will need to register for developer accounts on either the Google or Apple websites. Follow the steps below to register. Note that some developer programs require a fee to register.
- Google Play (Android)
- Register as a Google Play developer.
- Follow the instructions and upload the released build(.apk file)
- App Store (Apple iOS)
- Create a developer account.
- Follow the instructions and upload your application (.ipa file) through iTunes Connect.
- The approval process takes about 10 days.
Sending Your Application Live
Before you can go live with your application, you must attend another Web Governance Team meeting. During this time, you should:
- Present your mobile application on a mobile simulator
- Show the team the icon you want to use for your application, if you are creating a native application
You need the WGT's approval to send your application live. All EERE applications will be branded and distributed as DOE applications unless an exception is requested and granted.
Promoting Your Application
Once the application is ready, the program team should develop a promotion plan with Communications and Outreach. A sample plan might include:
- Press release (if deemed suitably newsworthy)
- Progress Alert
- Announcement on the home page rotating Flash graphic
- Item on the EERE Facebook Wall
- Email to select stakeholders with request to amplify message
For guidance and best practice on coding a mobile Web application, see these resources: