A method of dynamically hosting an application program on a wireless
device, a content of the application partitioned into a plurality of
module envelopes, each of the module envelopes having a portion of the
modules comprising the application, the method comprising the steps of
initializing the loading of the application comprising referencing an
application information structure, the structure comprising relational
information of the module envelopes, selecting one of the module
envelopes from the plurality of the module envelopes according to the
relational information, configuring a state of the selected module
envelope according to a predefined envelope state, the envelope state
being selected from a set of envelope states comprising at least two
states selected from the group comprising an offline state, an executable
state, and a raw state for conversion to the executable state, and
providing the selected module envelope, when configured in the executable
state, to an application manager for changing the configuration of the
application on the device according to the configured module envelope.