As a result of the ubiquity of smartphones, the number of mobile applications is extensively growing. In order to build native apps that reach all devices, developers should deal with many different operating systems, SDKs, development tools and programming languages, which implies serious effects on cost, time and success of the mobile project. In this study, the main objective is to propose a pragmatic approach for modeling and generating native cross-platform mobile applications, respecting a multilayer architecture. The proposed approach is an MDA based technique which combines UML formals and DSL. The paper is illustrated with the modeling of a typical CRUD based app.