1. A method comprising: storing in a memory one or more unmanaged applications each comprising a corresponding application bundle; retrieving information associated with the one or more unmanaged applications; displaying via a user interface a selectable object for each unmanaged application, each selectable object comprising the retrieved information associated with the corresponding unmanaged application; receiving, via the user interface, a selection of a first selectable object associated with a first unmanaged application of the one or more unmanaged application; retrieving, from the memory, the application bundle corresponding to the first unmanaged application; decoding the retrieved application bundle corresponding to the first unmanaged application; modifying the decoded application bundle corresponding to the first unmanaged application by adding a set of one or more policy-based control instructions; compiling the modified application bundle to generate a first managed application, the first managed application being configured to operate in accordance with the set of one or more policy-based control instructions; and providing the first managed application for installation on a mobile device.