Unlike modern apps that are installed natively onto an operating system like iOS or Android, Java ME applications were sandboxed programs. A .jar file was the executable container that held the game’s code, assets (graphics), and sounds. Because Java was cross-platform, a developer could theoretically write a game once, and it could run on a Nokia, a Sony Ericsson, or a Samsung—provided the hardware supported it.