我已经完成了一个使用InAppBrowser的Ionic 4应用程序,当目标为_self但目标为_blank时,它在iOS设备上运行良好,InAppBrowser尝试加载网页但仍显示在白色屏幕上。>
我已安装
def download_pkg(self):
(...)
def download_several_apps(self):
global inputFileName_download,listbox_input
if(listbox_input.size() == 0):
print("NO INPUT FILE")
elif(listbox_input.size() == 1):
print("filename :" + str(self.inputFileName_download))
with open(self.inputFileName_download, 'r') as f:
for line in f:
print(line)
download_pkg(line)
else:
print("Problem while downloading several apps")
我已在相应的ts页面和app.module.ts中导入
ionic cordova plugin add cordova-plugin-inappbrowser
npm install @ionic-native/in-app-browser
我已在app.module.ts中将其声明为提供程序
import { InAppBrowser } from '@ionic-native/in-app-browser/ngx';
这是代码
providers: [
InAppBrowser,
StatusBar,
SplashScreen,
CallNumber,
{ provide: RouteReuseStrategy, useClass: IonicRouteStrategy }
],
答案 0 :(得分:0)
我记得这个错误是专门针对ios设备的。对我来说,原因是使用localhost:XXXX
代替了有效的URL,其中XXXX是端口号。如果您的XXXX端口上没有运行任何应用程序,则会发生这种情况。
我意识到是在iOS上,当您使用无效的URL(例如localhost:XXXX)时,inappbrowser
无法呈现404错误页面。它只是无法显示任何内容:(.。在android设备上,您会得到一个404页面,说没有找到URL。但是在iOS上却没有发生。花了我一段时间才能弄清楚。
出现问题时,如果使用有效的有效网址获取此问题,请检查是否已连接到Internet。
答案 1 :(得分:0)
尽管该问题在Ionic Dev App中仍然存在,但在我通过TestFlight测试过的最终应用程序版本中并没有出现。看来这只是一个Ionic Dev App问题。
答案 2 :(得分:0)
截至今天,2021 年 2 月 26 日。使用 ionic 6。 我遇到了这个问题,但我发现这个问题正在发生,因为我在添加cordova InAppBrowser插件之前已经构建了我的项目。
我的解决方案
打开你的项目目录。找到文件夹 android(或 iOS,具体取决于您构建的平台)和文件夹平台。
在项目目录之外的某处复制上面列出的两个文件夹,或者您只需重命名它们。
打开您的 CLI 并导航到项目目录,然后按顺序运行以下代码。
npm run build
ionic capacitor add android
ionic capacitor copy android && cd android && gradlew assembleDebug && cd ..
答案 3 :(得分:-1)
您不需要添加以下代码
browser.show();