flutter_webview_plugin 無法加載網頁的異常處理


Flutter 本身並未集成webview,所以當需要使用webview 的時候,使用flutter_webview_plugin插件,也就是使用的原生webview組件,

flutter_webview_plugin 在使用過程中會iOS出現無法加載HTTP請求的情況, 但是Flutter 卻可以加載HTTP請求。這就與兩個的框架有關了,Flutter是獨立於UIKit框架的。
解決方案就是在iOS 的info.plist中添加對HTTP的信任。


   <key>NSAppTransportSecurity</key>
    <dict>
        <key>NSAllowsArbitraryLoads</key>
        <true/>
    </dict>

  

安卓端 9.0之前的系統,使用過程中並未發生異常。 9.0之后,也不支持HTTP,同樣也得添加信任

第一步:在清單文件AndroidManifest.xml的application標簽里面設置networkSecurityConfig屬性如下:

 

<?xml version="1.0" encoding="utf-8"?>
<manifest ... >
    <application android:networkSecurityConfig="@xml/network_security_config">
         <!-- ... -->
    </application>
</manifest>

  

第二步:在資源文件夾res/xml下面創建network_security_config.xml如下:

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <base-config cleartextTrafficPermitted="true">
        <trust-anchors>
            <certificates src="system" />
        </trust-anchors>
    </base-config>
</network-security-config>

  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM