无法从 Cordova 中的手机存储访问 CSS
Posted
技术标签:
【中文标题】无法从 Cordova 中的手机存储访问 CSS【英文标题】:Not able to access CSS from the phone storage in Cordova 【发布时间】:2021-07-24 10:03:26 【问题描述】:我正在尝试从 Cordova 的手机存储中访问 CSS 文件。简单的用例是使用动态 CSS。以特定的时间间隔从服务器下载 CSS,将其存储在手机存储中并以样式使用。
路径将在 html 页面上静态定义。
<link rel="stylesheet" type="text/css" href="file:///storage/emulated/0/MYAPP_FOLDER/stlyefromstorage.css">
CSS 路径(手机存储): file:///storage/emulated/0/MYAPP_FOLDER/stlyefromstorage.css
我尝试使用静态 CSS 文件内容和该路径,但没有成功。
在科尔多瓦有可能吗?
stlyefromstorage.css
body
background-color: powderblue;
h1
color: blue;
font-family: verdana;
font-size: 300%;
p
color: red;
font-family: courier;
font-size: 160%;
Index.html(从 Cordova APK 调用)
<html>
<head>
<title>
Hello File Storage CSS
</title>
<link rel="stylesheet" type="text/css" href="file:///storage/emulated/0/MYAPP_FOLDER/stlyefromstorage.css">
</head>
<body>
<h1>This is a heading</h1>
<p>This is a paragraph.</p>
</body>
</html>
【问题讨论】:
【参考方案1】:在发布我的问题后,我找到了如下解决方案:
您可以从安装的应用文件夹路径read/write your file如下:
file:///storage/emulated/0/android/data/APP_PACKAGE/files/stlyefromstorage.css
另外,我们可以通过以下方式访问:
file:///storage/emulated/0/APP_FOLDER/stlyefromstorage.css
注意:为确保您必须在 Androidmanifest.xml 中设置 android:requestLegacyExternalStorage="true"
- Android 10+ 操作系统的标记。
现在我的外部 CSS 文件工作如下:
<link rel="stylesheet" type="text/css" href="file:///storage/emulated/0/Android/data/APP_PACKAGE/files/stlyefromstorage.css" />
希望这对其他人有所帮助。
【讨论】:
以上是关于无法从 Cordova 中的手机存储访问 CSS的主要内容,如果未能解决你的问题,请参考以下文章
谷歌地理编码 api 在 Apache Cordova 中的 Ripple 系统中工作时无法在 Android 手机中工作