yamaken1343’s blog

技術ブログもどき

Androidでhttp通信の挙動がおかしい

Androidのバージョンを上げたら詰まった https化の流れ, つらい

原因

英語版のサイトを見てください*1 developer.android.com

Note: The guidance in this section applies only to apps that target Android 8.1 (API level 27) or lower. Starting with Android 9 (API level 28), cleartext support is disabled by default.

だそうでした どうやらデフォルトではhttps通信を使用しなければならないように変わったようです

解決策

http通信を有効にするには以下のようにします developer.android.com

<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    ...
    <application
        ...
        android:usesCleartextTraffic="true"
        ...
        >

これで良いはずです.

参考:

stackoverflow.com

症状

WebViewのURIをhttpで指定してたのだけれど, 異様に動画の読み込みが遅いので困っていた Couldn't open requested URIとかjava.io.FileNotFoundException: No content providerとか出てたが関係あるのかしら 今回の方策を適用してもまだ出るしな

*1:日本語版にはないのでやっぱり英語のドキュメント当たらないとだめですね