Jaz*_*Cat 9 image phonegap-build reactjs
我无法让我的图像在我的phonegap版本中工作.
我已经读过绝对路径可能不起作用,所以我尝试了绝对路径和相对路径,但仍然没有运气.
我包括这样的图像:
<Col key={1} xs={3}>
<Image src='/tire_selected.png' responsive />
</Col>
Run Code Online (Sandbox Code Playgroud)
或亲戚
<Col key={1} xs={3}>
<Image src='tire_selected.png' responsive />
</Col>
Run Code Online (Sandbox Code Playgroud)
等于
<img class="img-responsive" src="tire_deselected.png" data-reactid=".0.0.1.0.0.0.0.1.1.0.0.$4.0">
Run Code Online (Sandbox Code Playgroud)
Col&Image是使用bootstrap-react的bootstrap helper组件.这一切在Web视图中都可以正常工作,但在使用phonegap构建时却不行.但是,应该已经编译了源,并且在两种情况下都没有错误.
以下是我的config.xml
<?xml version='1.0' encoding='utf-8'?>
<widget id="com.app.exampleapp" version="1.0.0" xmlns="http://www.w3.org/ns/widgets" xmlns:gap="http://phonegap.com/ns/1.0">
<name>App</name>
<description>
App
</description>
<author email="support@example.com" href="http://www.example.com">
Author
</author>
<content src="index.html" />
<preference name="permissions" value="none" />
<preference name="orientation" value="default" />
<preference name="target-device" value="universal" />
<preference name="fullscreen" value="true" />
<preference name="webviewbounce" value="true" />
<preference name="prerendered-icon" value="true" />
<preference name="stay-in-webview" value="false" />
<preference name="ios-statusbarstyle" value="black-opaque" />
<preference name="detect-data-types" value="true" />
<preference name="exit-on-suspend" value="false" />
<preference name="show-splash-screen-spinner" value="true" />
<preference name="auto-hide-splash-screen" value="true" />
<preference name="disable-cursor" value="false" />
<preference name="android-minSdkVersion" value="14" />
<preference name="android-installLocation" value="auto" />
<gap:plugin name="org.apache.cordova.geolocation" />
<icon src="icon.png" />
<access origin="*" />
<plugin name="cordova-plugin-whitelist" version="1" />
<allow-intent href="http://*/*" />
<allow-intent href="https://*/*" />
<allow-intent href="tel:*" />
<allow-intent href="sms:*" />
<allow-intent href="mailto:*" />
<allow-intent href="geo:*" />
<platform name="android">
<allow-intent href="market:*" />
</platform>
<platform name="ios">
<allow-intent href="itms:*" />
<allow-intent href="itms-apps:*" />
</platform>
</widget>
Run Code Online (Sandbox Code Playgroud)
Git存储库:
app.js
vendor.js
config.xml
favicon.ico
humans.txt
index.html
robots.txt
tire_deselected.png
tire_selected.png
Run Code Online (Sandbox Code Playgroud)
Icon.png工作正常.我不知道什么导致其他图像不起作用.任何帮助,将不胜感激!
编辑
我已经尝试设置content-security-policy,如果这是我无法设置img-src并通过javascript显示图像的问题.
<meta http-equiv="Content-Security-Policy" content="
default-src http://10.3.10.104/ 'self' * 'unsafe-inline';
style-src http://10.3.10.104/ 'self' * 'unsafe-inline';
img-src http://10.3.10.104/ 'self' * 'unsafe-inline';
script-src http://10.3.10.104/ 'self' * 'unsafe-inline';">
Run Code Online (Sandbox Code Playgroud)
但仍然没有运气
file:///tire_deselected.png net::ERR_FILE_NOT_FOUND
Run Code Online (Sandbox Code Playgroud)
那里有文件,因为当将一个img-element插入index.html时会显示它.
我甚至尝试通过运行开发人员工具的源文件夹中显示的路径访问它.
file:///data/user/0/com.oas.exampleapp/files/downloads/app_dir/tire_deselected.png
Run Code Online (Sandbox Code Playgroud)
也不起作用,我开始认为手机机芯坏了,至少与反应相结合的工作非常糟糕.
编译完成后,build.phonegap.com将您的源文件放入"www"目录.
您可以使用以下路径"/ android_asset/www /"访问本地图像文件
<image src='/android_asset/www/tire_selected.png' responsive />
Run Code Online (Sandbox Code Playgroud)
如果您的图像放在根目录中的子目录中,那么您可以使用以下内容:
<image src='/android_asset/www/sub-direcctory/tire_selected.png' responsive />
Run Code Online (Sandbox Code Playgroud)
注意:如果存在包含本地图像文件的任何内容,请将"sub-direcctory"替换为您自己的子目录.