single.php

.NET MAUI で”ERR_CLEARTEXT_NOT_PERMITTED”が表示される場合の対処法

.NET MAUI プロジェクトで[WebView]を利用する場合に[Webpage not available net::ERR_CLEARTEXT_NOT_PERMITTED]が表示される場合の対処法を備忘録的に投稿します。

既定値では[HTTP]接続が使えない

原因は配置した[WebView]コントロールの[Source]プロパティ。

[ERR_CLEARTEXT_NOT_PERMITTED]の場合、クリアテキストが許可されていないというのが理由です。

一昔前は、HTTP接続を許可しているサーバーも多かったですが現在は、HTTPS接続のみが一般的という潮流で[WebView]コントロールも既定値ではHTTP接続のURLを許可してくれません。

マニュフェストの編集で許可

実際にインターネット上で稼働させる場合には推奨されませんが、開発時にはHTTP接続の方が都合が良い場合があります。

[AndroidManifest.xml]を編集して[HTTP接続]を許可できます。

具体的には次の手順で[HTTP接続]が許可できます。

1.[ソリューション エクスプローラー]画面で[Platforms|Android]フォルダー内の[AndroidManifest.xml]を右クリックして表示されたポップアップメニューで[ファイルを開くアプリケーションの選択]をクリックします。

2. 表示された[プログラムから開く]画面で[ソース コード(テキスト)エディター]を選択して開きます。

3.[AndroidManifest.xml]ファイルの[Application]に[usesCleartextTraffic]を追加します。(下コードの太字部分)

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
  <application android:allowBackup="true" android:icon="@mipmap/appicon" android:usesCleartextTraffic="true" android:roundIcon="@mipmap/appicon_round" android:supportsRtl="true"></application>
  <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
  <uses-permission android:name="android.permission.INTERNET" />
</manifest>

まとめ

今回は短い記事ですが、.NET MAUI プロジェクトで[WebView]を利用する場合に[Webpage not available net::ERR_CLEARTEXT_NOT_PERMITTED]が表示される場合の対処法について書きました。

エラーの原因は[WebView]の[Source]プロパティにHTTP接続のURLを設定した場合に表示されます。

[AndroidManifest.xml]ファイルの[Application]に[usesCleartextTraffic]の追加でエラー表示が解消されます。

C#の.NET MAUI アプリで[WebView]に設定したURLが表示されず[ERR_CLEARTEXT_NOT_PERMITTED]メッセージが表示されてしまう人の参考になれば幸いです。

スポンサーリンク

最後までご覧いただき、ありがとうございます。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です