This translation is older than the original page and might be outdated. See what has changed.



El cliente de xonelive se descargará de la dirección http://www.servidor.es/start/xoneandroid/install.asp

Para ello, habrá que generar un xonelive desde el SUPPORT de XOne para un cliente concreto, especificando:


Si no se genera el xonelive para un proyecto concreto, se puede poner uno genérico que cogerá los valores anteriores de la caché del navegador, pero para su correcto funcionamiento hay que tener en cuenta lo siguiente:

  • Hay que descargarlo desde el navegador por defecto en Android.
  • Poner la ruta completa hasta el xoneandroid/install.asp del server, no quedarse en el START, pues algunos dispositivos no guardan la redirección que provoca el start como página visitada en caché.
  • Si ya lo habíamos descargado previamente de algún otro sitio, hay que borrar primero la caché del navegador.

En ocasiones, cuando un teléfono tiene varios IMEIs, hemos de saber a ciencia cierta cuál es el que está utilizando para intentar comunicar con el servidor, de forma que pueda comprobar su licencia correctamente. Para saber exactamente este dato, cuando tengamos instalado el XOneLive, tendremos disponible un WIDGET que nos da información del XOneLive que hemos instalado.

Para añadir un widget en el “escritorio” de un teléfono android:

1.- Mantén pulsado un espacio vacío de una pantalla de inicio.
2.- Toca Widgets.
3.- Mantén pulsado un widget. A continuación, verás imágenes de tus pantallas de inicio.
4.- Desliza el widget a la ubicación que quieras. Levanta el dedo.
5.- Una vez tenemos el widget en el escritorio, debemos pulsar sobre el botón, que hay al inicio del mismo, para que nos aparezca la pantalla con la información.

En esa ventana podremos ver exactamente el IMEI ó identificador del teléfono que utilizará para validarse en el sistema remoto.

xonelive chequea en busca de actualizaciones cada cierto tiempo, que puede ser configurable.

1.- En ANDROID, por defecto cada hora, la frecuencia vendrá dada por la configuración que tenga el xonelive.
2.- En Windows Mobile, por defecto es cada media hora, aunque puede cambiarse (en minutos) en la clave del registro:

[HKEY_LOCAL_MACHINE\SOFTWARE\CGSoft\XoneLive]
Interval="30"

En Android, a partir del Framework 3.16.49, se pueden obtener por SCRIPT las funcionalidades del WIDGET del xonelive del dispositivo.

<action name="runscript">
	<script language="VBScript">
		obj01 = CreateObject("DebugTools")
 
		' Para obtener el IMEI del dispositivo
		ui.MsgBox "PIN dispositivo: " + obj01.GetDeviceID, "Mensaje", 0
 
		' Para obtener el log de operaciones del dispositivo (La dirección es opcional)
		resultado = obj01.SendLog("http://www.xoneisp.com/XoneLogRec/reclog.aspx")
		if resultado = -1 then
			ui.MsgBox "No se pudo enviar el log de operaciones", "Mensaje", 0
		end if
 
		' Para obtener la base de datos del dispositivo (La dirección es opcional)
		resultado = obj01.SendDatabase("http://www.xoneisp.com/XoneLogRec/reclog.aspx")
		if resultado = -1 then
			ui.MsgBox "No se pudo enviar la base de datos", "Mensaje", 0
		end if
 
		' Para obtener log de réplica de la base de datos del dispositivo (La dirección es opcional). Activar debug="true" en APP.XML.
		resultado = obj01.SendReplicaDebugDatabase("http://www.xoneisp.com/XoneLogRec/reclog.aspx")
		if resultado = -1 then
			ui.MsgBox "No se pudo enviar el log de replica de operaciones", "Mensaje", 0
		end if
 
		' Para obtener la base de datos de réplica de ficheros (La dirección es opcional)
		resultado = obj01.SendReplicaFilesDatabase
		if resultado = -1 then
			ui.MsgBox "No se pudo enviar la base de datos de replica de ficheros", "Mensaje", 0
		end if
	</script>
</action>


Para poder iniciar el XOneLive desde el framework:

function lanzarXOneLive() 
	If appData.GlobalMacro("##DEVICE_OS##") = "android" Then
		Set intent = CreateObject("AndroidIntent")
		intent.SetClassName "com.xone.android.framework", "com.xone.live.services.CheckServiceStatus"
		intent.SetAction "android.content.Intent", "ACTION_VIEW"
		intent.StartActivity
		Set intent = nothing
	End If
end function

Donde pone SetClassName hay que especificar el nombre de la aplicación.


Por regla general, únicamente habrá que configurar el valor de hostname, el resto sólo habrá que ponerlos si queremos alguna configuración específica.

[HKEY_LOCAL_MACHINE\SOFTWARE\CGSoft\XoneLive]
HostName="http://server:port/XoneLive/XoneLiveWS.asmx"
 
HostName2="http://server:port/XoneLive/XoneLiveWS.asmx" 
Log="0" 
LogPath="\Temp\LogXoneLive.txt" 
NetWork="0" 
NetWork2="Por defecto, el valor de NetWork" 
BlockSize="20480"  (20 kb)
Interval="30"  (minutos)
CGMobilePath="\Archivos de Programa\CGMobile"
PathInstall="La subcarpeta donde este XOneLive" 
 
Proxy="Opcional, si no aparecen no toma valor por defecto"
ProxyPort="Opcional, si no aparecen no toma valor por defecto"
 
[HKEY_LOCAL_MACHINE\SOFTWARE\CGSoft\CGMobile\Data]
DataBase="%ProgramFiles%\CGMobile\BD\Gestion.db"
OLEProvee="Microsoft.SQLSERVER.OLEDB.CE.3.0"
 
(Es obligatorio definir “DataBase” y  "OLEProvee" si se va a hacer alguna operacion con el XOneLive que conecte con la BD, 
por el momento solo ficheros .sdf de SqlServerCE. (xonelive v3.3.0.1 versiones posteriores incluirán .db de sqlite)


Para el tema de multilenguaje, tenemos los siguientes valores en el registro:
(Cuando se arranca el xonelive, si no existen estos valores, los crea en el registro con su valor por defecto).

[HKEY_LOCAL_MACHINE\SOFTWARE\CGSoft\XoneLive\Lenguaje]
 
lbUpdate1="Se instaló una actualización."
lbUpdate2="Se instalaron &X& actualizaciones." 
    (El XoneLive sustituye &X& por el número de actualizaciones realizadas)
ErrIMEI="IMEI del dispositivo no localizado. Compruebe que el teléfono está correctamente encendido."
ErrLic="No se obtuvo licencia para el IMEI del dispositivo."
ErrUpdate="No se pudo actualizar el dispositivo. Consulte con su proveedor de software."
 
(LOS SIGUIENTES VALORES SOLO NECESARIOS SI SE PONE EL MODEICON a TRUE:)
 
[HKEY_LOCAL_MACHINE\SOFTWARE\CGSoft\XoneLive\Lenguaje]
btOK="ACEPTAR"  
    (Será el texto que aparezca en el botón de aceptar de los popups)
lbPress="Pulse <<aquí>> para obtener<br> más detalles."  
    (Texto cuando se informan de actualizaciones, para ver los detalles, 
      importante que la palabra a 'pulsar' esté entre << >> dobles, el <br> sirve para hacer un salto de línea)
lbStatus="Estado"
lbUltCnx="Ult.Conex."
lbUltAct="Ult.Act."
lbStatus1="Conectando"
lbStatus2="Conectado"
lbStatus3="Desconectado"
lbStatus4="Descargando"
lbStatus5="Descomprimiendo"
lbStatus6="Instalando"
lbStatus7="Finalizando"
lbStatus8="Completado"