Android 外部链接内容未出现在AppBrowser视图中

Android 外部链接内容未出现在AppBrowser视图中,android,cordova,phonegap-plugins,inappbrowser,phonegap,Android,Cordova,Phonegap Plugins,Inappbrowser,Phonegap,我开发了一个应用程序,用户可以上传任何类型的文档。成功上传后,我将发送回相应的url作为响应。通过使用该响应,我以预览模式显示上传的文档。现在我的问题是 在我点击预览后,我想使用inAppBrowser cordova插件在应用程序中而不是移动浏览器中显示该文档。为此,我编写了以下代码。它在IOS设备而不是安卓系统中正常工作。为了调试这个用例,我只是硬编码了一些google图像url并尝试了一下。即使在安卓系统中,我也能在appbrowser中看到这幅图像。只有用户通过我的应用程序上传的文档有问

我开发了一个应用程序,用户可以上传任何类型的文档。成功上传后,我将发送回相应的url作为响应。通过使用该响应,我以预览模式显示上传的文档。现在我的问题是

在我点击预览后,我想使用inAppBrowser cordova插件在应用程序中而不是移动浏览器中显示该文档。为此,我编写了以下代码。它在IOS设备而不是安卓系统中正常工作。为了调试这个用例,我只是硬编码了一些google图像url并尝试了一下。即使在安卓系统中,我也能在appbrowser中看到这幅图像。只有用户通过我的应用程序上传的文档有问题

window.open(url, '_blank');
如果某个东西是有问题的w.r.t权限,即使在IOS中也不应该工作,但它正在工作。所以我猜安卓有个问题。我怎样才能做到这一点

当我点击外部链接时,它如下所示。我无法看到内容,但我可以看到URL

谢谢编辑

您可能需要添加白名单插件。这就解释了为什么它可以在iOS上运行,而不能在android上运行

装置

 cordova plugin add cordova-plugin-whitelist
然后,在配置xml检查中,有以下行:

 <access origin="*" />
这将允许将任何window.open呼叫路由到应用程序内浏览器

此外,您还需要将location参数添加到window.open调用:

window.open(url, '_blank', 'location=yes');

另外,请确保在使用window.open方法之前等待DeviceRady被激发。我发现一些设备加载插件的速度比其他设备快

问题在于Android webview,它无法渲染某些文件(大多数),只能渲染简单的文件,比如图像,或者txt


您可以选择使用
“u system”
而不是
“u blank”
,这将启动系统的意图,以便其他应用程序可以打开该文件。另一种选择是使用文件开启器插件而不是InApp Browser插件(有很多文件开启器插件)

编辑以添加更多信息,如果有帮助,请告诉我。尝试了您的方法,但没有运气,我猜根据@jcesarmobile注释,在android中不可能这样做。白名单不会影响InApp Browser。问题是Android WebView无法呈现这些文件。按照你的方法,即使是硬编码的图像url也不应该出现在WebView中,但它正在出现。我说过,它只能呈现一些简单的文件,比如图像和txt文件,但不能呈现复杂的文件,比如pdf或docTo。要在应用程序中打开文件,我想你可以使用cordova-plugin-file-opener2。
window.open(url, '_blank', 'location=yes');