我用 krpano 创建了几张全景图,我正在开发一个显示它们的移动应用程序 (iOS + Android)。
如果我从服务器在线访问 krpano 文件,一切正常,但是当我将文件包含为应用程序资源并尝试在本地访问它们时,我无法使其正常工作。我发现的错误如下:
我做了很多测试:只有 krpano 文件加载失败;其他本地html+js文件在本地加载没有问题。
什么会阻止 krpano 文件在本地加载?
在 Android 中,我使用 WebView 对象来加载全景图,并且从在线 url 可以正常工作,但不能在本地工作。
这是我在 Android 上的代码:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
WebView myWebView = (WebView) findViewById(R.id.webview);
//para no salir de mi webview al pinchar
//y cargar una pantalla SPLASH mientras carga la web
myWebView.setWebViewClient(new WebViewClient()
{
});
WebSettings webSettings = myWebView.getSettings();
webSettings.setJavaScriptEnabled(true); //activa javascript
webSettings.setBlockNetworkLoads(false); //para que no de bloqueos de red
webSettings.setDomStorageEnabled(true); //recomiendan poner tb esto
//no está funcionando la carga de la web desde local
myWebView.loadUrl("file:///android_asset/asuncion.html");
// myWebView.loadUrl("http://coolab.umh.es/360/alcudia/alcudia.html");
}
我收到以下错误:
但是我可以从 Eclipse 中看到全景:
非常欢迎任何建议!
Best Answer-推荐答案 strong>
沉迷于 ilovebali 所说的,您可以尝试 CrossWalk(Android 默认 web View 的替代方案),在我看来,这本身就是一个很好的解决方案对于这种事情。
这是一个显示您所问内容的代码示例:
xWalkView = (XWalkView) this.findViewById(R.id.your_xwalk_webview);
xWalkView.load(filePath, null);
XWalkPreferences.setValue(XWalkPreferences.REMOTE_DEBUGGING, true);
XWalkPreferences.setValue(XWalkPreferences.ALLOW_UNIVERSAL_ACCESS_FROM_FILE, true);
XWalkPreferences.setValue(XWalkPreferences.JAVASCRIPT_CAN_OPEN_WINDOW, true);
如果需要更多信息,请查看此链接:https://diego.org/2015/01/07/embedding-crosswalk-in-android-studio/
关于java - 在 Android 和 iOS 本地使用 krpano 的问题,我们在Stack Overflow上找到一个类似的问题:
https://stackoverflow.com/questions/21631874/
|