An ecosystem is an environment consisting of living and nonliving things with which one interacts. Many cloud-based companies now use the term ecosystem to describe the user’s environment. To that end, you might describe the mobile-cloud ecosystem as consisting of the following:
Phone class which may be voice or face to face
Web browsing
Apps
Voice commands and voice recognition
Facial and fingerprint recognition
Display screens
Transmission speeds for upload and download operations
Keyboard interface
Touch screens
When developers create mobile solutions, they consider how the solution interacts with or supports the various mobile-device ecosystem components.
When developers build mobile solutions, they can approach their solution in one of two ways. First, the developer can build a web page, ideally a page targeted for mobile display. As a user browses the web using a mobile browser that is built into the phone, the contents of the webpage will appear. FIGURE 14-2, for example, shows Google on a mobile device.
When developers create webpages for both traditional web access as well as mobile access, the developers should take screen sizes in consideration—the mobile device screen is much smaller than that of a desktop computer. The developers must include code within the application that determines the device type (desktop or mobile) and then display the output appropriately. Developers refer to a web application that modifies its output based upon the user’s device screen size as a responsive web application.
Second, the developer can build an “app” (short for application). Apps are typically device-specific programs that users download and install (either for a price or for free) onto their device. The app, in turn, will display an icon on the user’s device that the user will click to start the app. Depending on a user’s phone type, the user will either go to Google Play for Android apps or the Apple App Store for iPhone apps. Currently millions of business, productivity, learning, and game apps are available for user download. Apps that run on a specific phone type, such as the iPhone, are called native-mode applications. Such native-mode applications use specific features of the phone and its operating system.