A smartphone is a mobile communications device that uses an identifiable open OS. An open OS is supported by third-party applications written by a notable developer community. Third-party applications can be installed and removed, and they can be created for the device’s OS and application programming interfaces (APIs). Alternatively, developers must be able to access APIs through a discrete layer such as Java. The OS must support a multitasking environment and user interface that can handle multiple applications simultaneously. For example, it can display e-mail while playing music.