{{indexmenu_n>1}}
====== Nodo APP / app.xml ======
\\
Nodo en el que se definen características especiales y generales de la aplicación, para todas y cada una de las colecciones.\\
\\
Está formado por:
- **Atributos** que dan esas características.
- **Nodos**.\\
\\
Un formato de ejemplo sería el siguiente:\\
\\
\\
**ATRIBUTOS DEL NODO:**\\
\\
|< 85% 15% - >|
^ ATRIBUTO ^ DESCRIPCIÓN ^
| **prefix** | Nodo para la definición de la macro ##PREF##, que es utilizada en los SQL de las colecciones del mappings. |
| **version** | Definición de la versión del mappings. El %%xonestudio%%, al guardar el mappings, aumenta automáticamente este número, de tal forma que podemos tener control de versiones. |
| **companycolor** | Para la definición de un color general para toda la aplicación. Son colores aplicados a los menús, colores de pestañas o selecciones, siempre y cuando en dichos lugares no pongamos colores para esas zonas. Se le pasan colores |
| **forecolor** | El color de los textos de forma general. Se le indican colores. |
| **compatibility-mode** | Modo en compatibilidad con versiones anteriores. Es bueno utilizarlo si tenemos una aplicación realizada con versiones anteriores de otros Frameworks, para que la visión no tenga un cambio radical. Valores “true” o “false”. Por defecto “false”. |
| **hardware-keyboard** | Mostrar automáticamente o no el teclado del dispositivo, para ello se pone a “true”, con lo que indicamos que el dispositivo tiene teclado de hardware y entonces no muestra el teclado cada vez que nos ponemos en un campo. Solo válido para el framework de WM. Por defecto es “false”. |
| **debug** | Se le indica al framework que el mismo se esta ejecutando en modo debug, con lo que nos mostrará mas información. Esto es para el dispositivo "Android", cuando se está trabajando en modo de depuración o con el %%:xonestudio%%. Valores “true” o “false”, por defecto “false”. |
| **sql-debug** | Se le indica al framework que loguee todas las SQL que se vayan ejecutando en el framework. Valores “true” o “false”, por defecto “false”. |
| **entry-point** | Se le indica al framework, que la entrada a la aplicación ya no es el appwizard, sino que es el nombre de la colección que se le pasa en este atributo. Es útil para hacer un menú customizado. |
| **screen-orientation** | Se fuerza al framework para que SIEMPRE muestre la aplicación en modo Apaisado (landscape) o bien en modo "vertical" (portrait).Los valores pueden ser landscape o portrait. Ej: screen-orientation="portrait". |
| **scale-fontsize** | Poner a true para que el tamaño de la letra también se escale según cambia el tamaño de pantalla. Si en alguna colección no queremos que nos aplique este valor por el motivo que sea, podríamos poner el atributo con valor false a nivel de la COLL que sea. |
| **resolution-height** | Al igual que el anterior es para "relativizar" los tamaños especificados en puntos, indicando la resolución "original" para la cual la aplicación fue concebida y se veía "bien", de forma que el framework recalcule los tamaños cuando esté en otro dispositivo con otra resolución distinta a la "original". |
| **hypermedia** | Valores **true** o **false**(el valor //false// es el predeterminado). Si es **true** activa las optimizaciones para aplicaciones hipermedia. **ESTE FRAMEWORK SE COMERCIALIZA POR SEPARADO** |
| **fullscreen** | Valores **true** o **false**(el valor //false// es el predeterminado). Si es **true** la aplicación se mostrará a pantalla completa ocultando las barras de estado del dispositivo móvil. Ejemplo: en el iPad la barra con la hora y estado de batería. |
| **autologon** | Valores **true** o **false**(el valor //false// es el predeterminado). Este atributo controla que se haga login automático para aplicaciones que no lo necesiten. Para que funcione es necesario tener un usuario admin con contraseña vacía en la base de datos. |
| **use-analytics** | Valores **true** o **false** (el valor //false// es el predeterminado). |
| **analytics-type** | Valores **google** o **nielsen** (http://www.google.com/intl/es/analytics/ o http://es.nielsen.com/products/ac.shtml). |
| **analytics-nielsen-domain** | Valor **string** url con el nombre del dominio siguiendo las especificaciones de Nielsen para aplicaciones nativas. |
| **analytics-uid** | Valor **string**. Indica el UID para google analytics o el **client id** para Nielsen. |
| **default-language** | Valor **string**. Indica el lenguaje por defecto para los scripts si no está especificado en la etiqueta donde se define el script. (vbscript o javascript). |
\\
\\
** ATRIBUTOS EXCLUSIVOS DE iOS **
|< 85% 15% - >|
^ATRIBUTO^DESCRIPCIÓN^
|**google-api-enable**|true o false. Por defecto, iOS utiliza los servicios de Apple para localizar las coordenadas que vayamos a mostar en un contents de tipo mapview. Si queremos utilizar las API de google para una mejor localización y que la localización sea exactamente igual que en Android, tendremos que poner este atributo a true.|
|**google-api-key**|Aquí pondremos el valor de la API key que google nos proporciona para poder utilizar sus servicios, si el atributo anterior está a true, aquí tendremos que especificar un valor.|
\\
\\
**SUBNODOS DEL NODO **APP** Y SUS ATRIBUTOS:**\\
\\
==== Nodo login-coll ====
\\
Nodo que indica cuál es la colección personalizada de login en la aplicación. \\
\\
|< 65% 10% - >|
^ ATRIBUTO ^ DESCRIPCIÓN ^
| **name** | El nombre de la colección de login. Case Sensitive. |
| **conditions** | Mismas condiciones que el resto de nodos. (Orientación, plataforma/SO, Teléfono/tablet) |
\\
==== Nodo entry-point ====
\\
Nodo que indica cuál es la colección de entrada a la aplicación una vez se ha hecho login. \\
\\
|< 65% 10% - >|
^ ATRIBUTO ^ DESCRIPCION ^
|**name**|El nombre de la colección de entrada (Menu). Case Sensitive.|
|**conditions**|Mismas condiciones que el resto de nodos. (Orientación, plataforma/SO, Teléfono/tablet) |
\\
==== Nodo style ====
\\
Nodo para la definición del CSS que se va a utilizar en la aplicación.\\
\\
|< 65% 15% - >|
^ ATRIBUTO ^ DESCRIPCIÓN ^
| **url** | Nos indica el nombre del archivo CSS que se va a utilizar en la aplicación. |
| **strict-mode="true"** | Atributo para que el framework parsee el fichero CSS y nos detecte si tiene errores que puedan provocar que otros estilos definimos a continuación de la línea errónea no nos funcionen correctamente. |
| **conditions** | El atributo conditions especifica la condición que ha de cumplirse para que se cojan las reglas definidas dentro del fichero css especificado en el atributo url. |
\\
Más información [[wiki:2.-desarrollo-app:2.3.-codigo:d.-estilos-css:start|aquí]]
\\
\\
==== Nodo battery ====
\\
Nodo para el control de batería, mostrando mensajes según las indicaciones de sus atributos. \\
**NOTA**: Solo válido para el framework Windows Mobile.\\
\\
|< 65% 10% - >|
^ATRIBUTO^DESCRIPCIÓN^
|**Limit3**|Primer mensaje de aviso, indicando que le queda el porcentaje de batería que ponemos como valor en el atributo.|
|**Limit2**|Segundo mensaje de aviso, con el porcentaje indicado.|
|**Limit1**|Tercer y último mensaje de aviso, indicando que en unos 5 segundos la aplicación se cerrará de forma controlada. Puede que tenga alguna pérdida de datos, que serán aquellos que están en pantalla sin estar guardados. Cualquier otro no se perderá.|
\\