A computer-implemented method comprising: by a computing system comprising one or more user devices , one or more external systems , a social networking system 630, and a network , connecting to a server associated with an application in response to access of a stub application associated with the application, the stub application installed on a mobile device ; sending, by the computing system, device information associated with the mobile device to a universal stub application server module of the server, the universal stub application server module including an application version determination module and an application version parameter module , the device information including information relating to one or more of: a memory, a processor, a display, a storage, a network connection, a language, a geographical region, a model, and a manufacturer; specifying and managing, by the application version parameter module , parameters for different versions of a plurality of versions of the application, each version of the application having one or more of said parameters associated with it, the parameters relating to one or more of: a memory, a processor, a display, a storage, a network connection, a language, a geographical region, a model, and a manufacturer; comparing, by the application version determination module , the device information with the parameters associated with the plurality of versions of the application; determining, by the application version determination module , based on the comparison, a version of the plurality of versions of the application to install on the mobile device; and obtaining, by the computing system, the version of the plurality of versions of the application to install on the mobile device from the server. by a computing system comprising one or more user devices , one or more external systems , a social networking system 630, and a network , connecting to a server associated with an application in response to access of a stub application associated with the application, the stub application installed on a mobile device ; sending, by the computing system, device information associated with the mobile device to a universal stub application server module of the server, the universal stub application server module including an application version determination module and an application version parameter module , the device information including information relating to one or more of: a memory, a processor, a display, a storage, a network connection, a language, a geographical region, a model, and a manufacturer; specifying and managing, by the application version parameter module , parameters for different versions of a plurality of versions of the application, each version of the application having one or more of said parameters associated with it, the parameters relating to one or more of: a memory, a processor, a display, a storage, a network connection, a language, a geographical region, a model, and a manufacturer; comparing, by the application version determination module , the device information with the parameters associated with the plurality of versions of the application; determining, by the application version determination module , based on the comparison, a version of the plurality of versions of the application to install on the mobile device; and obtaining, by the computing system, the version of the plurality of versions of the application to install on the mobile device from the server. <EOS>