PDA

Ver la Versión Completa : Sincronizar dato de un fichero entre Windows y Android


miado
26-01-2016, 14:12:12
Hola a todos,
A ver si me podéis echar una mano ya que he estado buscando y no encuentro nada de información de como hacerlo, os pongo el caso:

Tengo un programa en Delphi Windows que tiene que grabar datos en un fichero txt en el dispositivo de Android, para que luego android pueda leerlos con otro programa. Todo esto funcionaba mas o menos bien hasta la aparición de Android 5, Windows 8, 10...etc y algunos móviles que no dejan conectar por USB almacenamiento.
Antes conectaba por usb y aceptando en el móvil "Activar almacenamiento usb", Ahora ya no se puede y al parecer ahora hay que conectar mediante "Portable Device" (MTP/WPD). He consiguido poder seleccionar el móvil y entrar en la carpeta para buscar el fichero desde windows pero se desactiva el botón aceptar al entrar en las carpetas del móvil en cualquier componente que pongo o directamente desde la api de windows Selectdirectory...etc. También he probado a introducir la ruta completa y sale el error que no encuentra el fichero.

Se os ocurre algo para realizar esto de forma mas o menos sencilla, se trata solamente de poder escribir y leer en un fichero txt en el móvil android desde Windows.

Se agradece cualquier ayuda o sugerencia.
Muchas gracias.

AgustinOrtu
26-01-2016, 14:16:58
Que versión de Delphi?

miado
26-01-2016, 14:18:45
Estoy trabajando actualmente con XE7.

AgustinOrtu
26-01-2016, 14:31:00
Aún así, no deberías tener problema con conectar por USB. Revisa los driver que estén bien instalados.

En el administrador de dispositivos de windows te aparece el android?

El puerto USB esta "bueno"?

Proba con los driver universales de google; sino funciona hay que bajar del fabricante

Prueba habilitando USB debugging en android

Yo tengo un teléfono android motorola 5.1, y se puede conectar sin problemas en windows desde xp, server 2003 a windows 10, en 32 o 64 bits.

Tengo una tablet genérica con android 4.4 y nunca tuve problemas

Probe conectar teléfonos con android 6 y funcionan bien. Android no tiene mucho que ver en la conexión USB, ya que windows se conecta a la tarjeta de memoria.

Otro dato importante es que (creo que es a partir de android 5) es que el dispositivo tiene que estar desbloqueado (es decir, abrirlo con el pin, patrón) sino a la hora de conectarlo no lo detecta, las razones son obvias, seguridad


Si todo esto falla, y ya que tenés Delphi xe7, podrías invertir el proceso y en lugar de mandar el archivo desde la pc podes entrar desde android y copiarlo. Eso es viable con app tethering

miado
27-01-2016, 07:56:18
Parece ser que el problema es con los nuevos móviles tipo Galaxy S6 ...etc que no llevan micro sd. Puedes ver el teléfono a través del navegador de ficheros de Windows e incluso puedes entrar en las carpetas, pero si lo haces a través de Delphi con llamadas a Selectdirectory o componentes como OpenDialog o parecidos, nada, puedes verlos pero al intentar seleccionarlos no se puede y si metes la ruta directamente dice que no encuentra ese directorio.

Seguiré intentado ver si se puede de alguna manera.

He pensado incluso en crear un base de datos sqllite en el móvil pero no se si tendré el mismo problema a la hora de conectarme desde Windows.
A ver si se os ocurre alguna otra forma o si existe algún api de Windows para conectarlo.

Gracias por vuestro tiempo y ayuda.

AgustinOrtu
27-01-2016, 13:59:35
Prueba con un fileopendialog
Hay una seríe de propiedades "options" con las que puedes jugar

Que pasa si desde otro programa haces guardar como e intentas grabar en la sd?

miado
28-01-2016, 07:53:33
Nada, imposible, la única forma es a través del explorador de Windows. Pero invoco este a través del api y nada tampoco.