【问题标题】:img not displaying on Androidimg 不显示在 Android 上
【发布时间】:2022-01-04 12:03:43
【问题描述】:

我的 html 中有一个简单的图像,它在我的电脑上可以很好地呈现,但在我的智能手机上却不行:

<div id="welcomebox">
        <img src="geschenk.jpg"/>      
</div>

我的文件夹结构如下:

C:/Maus
  - index.html
  - geschenk.jpg

在我的智能手机上,我将该文件夹复制到我的下载文件夹并从那里打开 index.html。没有包含网络服务器,我直接从文件系统打开文件。

但在我的智能手机上,图像没有显示。

【问题讨论】:

  • 如何打开一个html文件?您使用哪个应用程序?以及在哪个应用中显示 html?
  • @blackapps 我用 chrome for android 打开它。
  • Chrome 哪里有像“打开文件”这样的菜单项?
  • @blackapps 它没有,但是文件系统有“open-with”-item
  • 请准确!!!在我的第一条评论中,我已经询问了您/用户使用哪个应用程序来选择 html 文件。您应该命名一个应用程序。文件系统有所不同。

标签: android html android-9.0-pie


【解决方案1】:

Chrome 将从“文件”应用接收内容方案,例如:

content://com.google.android.apps.nbu.files.provider/1/file:// ...../index.html

一旦 Chrome '看到'一个内容方案,它就无法显示图片,即使 Chrome 将方案更改为:

content://com.google.android.apps.nbu.files.provider/1/file:// ...../geschenk.jpg

提供者不会让它访问,因为它没有读取权限。

【讨论】:

  • 所以除了在任何服务器上创建网络服务并将文件上传到那里之外,没有办法显示图像?
  • 是的,这是可能的。您可以使用自己的提供商来提供 html 和图片。但我知道您目前没有编写 Android 应用程序。
  • 您也可以在手机上安装网络服务器应用程序。
【解决方案2】:

Android 文件系统结构无法像其他系统一样打开相对文件路径。 所以答案是您需要使用完整的硬编码file:/// 路径。

这不是一个很好的方法,因为您需要替换 HTML 文件中的所有 URL/路径。

如果您确定要这样做,另一种方法是,您可以将所有项目资源(例如图像、CSS、javascript)上传到云端,例如使用 SDN 访问这些文件并让项目运行。但是使用 SDN 方法,将包括 HTML 文件在内的所有内容上传到托管帐户会更容易。

【讨论】:

  • The Android filesystem structure can't open relative file paths the same way other systems do. 这与文件系统无关,而是与可以处理相对路径的应用程序有关。 Chrome 可以。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-07-12
  • 2015-04-30
  • 2023-02-10
  • 1970-01-01
相关资源
最近更新 更多