¿Por qué ver un archivo .htm en la carpeta Dropbox de Android muestra imágenes rotas?

Tengo un archivo .htm en una carpeta de Dropbox con el siguiente contenido:

<p>this is a <b>test</b> of html</p>
<img src="test.png"/>

Cuando lo veo en mi PC, muestra la imagen (que está en el mismo directorio que el archivo htm).

Sin embargo, cuando lo veo en mi HTC Wildfire y elijo como aplicación de visualización "HTMLViewer", me muestra la representación HTML correcta (en negrita) pero me muestra una imagen rota.

¿Cómo puedo ver archivos HTML con etiquetas de imagen en mi carpeta de Dropbox en mi teléfono Android?

Se han informado problemas similares (aunque tiene 1 año). Supongo que el problema está en la aplicación. ¿Su navegador predeterminado de Android no abre archivos HTML?
¿Está la imagen realmente en su dispositivo? La aplicación de Dropbox no descarga archivos automáticamente a tu teléfono, solo enumera los archivos en tu cuenta. Debe abrir un archivo (o mantener presionado y presionar descargar) para obtenerlo en su dispositivo. Probé esto y, siempre que descargue la imagen primero, funciona bien. Si habilita los íconos de estado del archivo en la configuración de Dropbox, cualquier cosa que no tenga una marca verde aún no se ha descargado en su teléfono.
@eldarerathis fue una buena idea, pero incluso después de cargar la imagen en mi teléfono, la página html todavía muestra que está rota, como si hubiera algo mal en la ruta, es decir, como si hubiera una ruta absoluta, extraño.
@CustomiZer cuando mantengo el dedo presionado en index.htm, luego elijo abrir, me da la opción entre (1) Text Editor DB, (2) HTMLViewer, (3) HTML Visualizer DB. ¿Cómo le digo que "use el navegador de Android"?
Hice algunas pruebas en diferentes teléfonos y descubrí que algunos como el mío permiten la apertura de archivos htm utilizando el navegador predeterminado (Dropbox no instalado) y algunos ofrecen una opción como texto, visor HTML. Realmente no soy capaz de entender la causa del problema. Pruebe con otra página web y verifique si aún obtiene las imágenes rotas.

Respuestas (2)

Tengo DropBox instalado en mi Moto DROID v1 (Android OS 2.2.2). Coloqué un archivo HTML que hacía referencia a una imagen en una carpeta de DropBox. La imagen estaba en una subcarpeta.

  • DropBox\Carpeta\index.html
  • DropBox\Carpeta\img\imagen.jpg

Primero descargué solo index.html y lo abrí en HTMLViewer. El enlace de la imagen está roto. Luego descargué el archivo image.jpg, luego volví a index.html y lo vi en HTMLViewer. La imagen ahora aparece correctamente.

No estoy seguro de si tiene algo que ver con eso, pero es posible que desee intentar cambiar la extensión de su archivo a .html y verificar que el tipo de documento de su archivo esté configurado correctamente:

<!DOCTYPE html>

La aplicación de Dropbox para Android no guarda archivos en una "carpeta" como lo hace la versión para PC. Android tiene una seguridad más sólida y no permite que las aplicaciones accedan a los archivos de otras aplicaciones, por lo que incluso si lo hiciera, el navegador no podría leer la imagen.

Cuando elige abrir un archivo que aparece en Dropbox, la aplicación de Dropbox crea un URI especial que apunta a ese archivo. Utiliza una intención de iniciar una actividad para ver ese URI y establece un indicador especial para decir que la nueva actividad (en este caso, el navegador web) tiene permiso para acceder solo a ese URI . Eso significa que no hay una ruta que pueda poner en el archivo HTML que le permita al navegador leer la imagen: tiene el permiso de Dropbox para leer solo el archivo en el que hizo clic.

Si desea tener un directorio de archivos HTML e imágenes que se carguen en el navegador, debe almacenarlo en la tarjeta SD (en lugar de en los datos de una aplicación) donde cualquier aplicación puede leer y escribir cualquier archivo. No creo que la aplicación de Dropbox tenga la función de poder sincronizar directorios en la tarjeta SD, pero podría usar otra aplicación para lograrlo. Por ejemplo, podría usar un cliente FTP para sincronizar el directorio con uno en un servidor FTP.

Las respuestas a esta pregunta tienen muchas sugerencias sobre cómo mantener los directorios sincronizados con Dropbox u otro servidor.