A method for providing, at an online distribution service, an application dedicated to a terminal type, characterized in that it comprises: a step of identifying a terminal type associated with a terminal connected to said online distribution service, delivering a terminal type identifier; a step of obtaining at least one characteristic of said terminal according to said terminal type identifier, said at least one characteristic belonging to a group comprising: the version of supported API programming interfaces; the supported binary or intermediate code; the version of the supported binary or intermediate code; a step of compiling said dedicated application from a generic application based on said at least one characteristic of said terminal type, said compilation step comprising: a step of selecting, among a plurality of available compilers, at least one compiler associated with said type of said terminal; a step of selecting, according to said at least one characteristic of said terminal, at least one optimization to be applied to said application, wherein said at least one optimization comprises an optimization of intermediate code to be dependent on said supported APIs and compressed to limit the size of said application; a step of compiling said application using said at least one selected compiler, said at least one selected optimization, and said generic application; a step of transmitting said dedicated application to said connected terminal. a step of identifying a terminal type associated with a terminal connected to said online distribution service, delivering a terminal type identifier; a step of obtaining at least one characteristic of said terminal according to said terminal type identifier, said at least one characteristic belonging to a group comprising: the version of supported API programming interfaces; the supported binary or intermediate code; the version of the supported binary or intermediate code; the version of supported API programming interfaces; the supported binary or intermediate code; the version of the supported binary or intermediate code; a step of compiling said dedicated application from a generic application based on said at least one characteristic of said terminal type, said compilation step comprising: a step of selecting, among a plurality of available compilers, at least one compiler associated with said type of said terminal; a step of selecting, according to said at least one characteristic of said terminal, at least one optimization to be applied to said application, wherein said at least one optimization comprises an optimization of intermediate code to be dependent on said supported APIs and compressed to limit the size of said application; a step of compiling said application using said at least one selected compiler, said at least one selected optimization, and said generic application; a step of selecting, among a plurality of available compilers, at least one compiler associated with said type of said terminal; a step of selecting, according to said at least one characteristic of said terminal, at least one optimization to be applied to said application, wherein said at least one optimization comprises an optimization of intermediate code to be dependent on said supported APIs and compressed to limit the size of said application; a step of compiling said application using said at least one selected compiler, said at least one selected optimization, and said generic application; a step of transmitting said dedicated application to said connected terminal.