Android OKHttp網(wǎng)絡(luò)請求出錯:"java.net.UnknownServiceException: CLEARTEXT communication to *** not permit...

最近最項目遇到個問題萧落,如下:

java.net.UnknownServiceException: CLEARTEXT communication to *** not permitted by network security policy

這玩意已經(jīng)看過 n 次,一直不知道是什么導(dǎo)致的辐真,今天剛好有空晒衩,就一探究竟吧。

在 Google 官網(wǎng)上,官方解釋道:

為保證用戶數(shù)據(jù)和設(shè)備的安全逃沿,Google針對下一代 Android 系統(tǒng)(Android P) 的應(yīng)用程序腾降,將要求默認使用加密連接,這意味著 Android P 將禁止 App 使用所有未加密的連接,因此運行 Android P 系統(tǒng)的安卓設(shè)備無論是接收或者發(fā)送流量臼予,未來都不能明碼傳輸。

需要使用下一代(Transport Layer Security)傳輸層安全協(xié)議梁剔,而 Android Nougat 和 Oreo 則不受影響怯晕。因此在Android P 使用HttpUrlConnection進行http請求會出現(xiàn)以下異常悠汽。

?W/System.err: java.io.IOException: Cleartext HTTP traffic to **** not permitted

使用OKHttp請求則出現(xiàn)

?java.net.UnknownServiceException: CLEARTEXT communication ** not permitted by network security policy

在Android P系統(tǒng)的設(shè)備上,如果應(yīng)用使用的是非加密的明文流量的http網(wǎng)絡(luò)請求芥驳,則會導(dǎo)致該應(yīng)用無法進行網(wǎng)絡(luò)請求柿冲,https則不會受影響,同樣地兆旬,如果應(yīng)用嵌套了webview假抄,webview也只能使用https請求。

總的來說丽猬,就是開發(fā)Android P系統(tǒng)及以上的App宿饱,禁止使用未加密的鏈接進行網(wǎng)絡(luò)請求,否則報錯脚祟。


針對這個問題谬以,有以下三種解決方法:

1、APP改用 https 請求

2由桌、targetSdkVersion 降到27以下

3为黎、更改網(wǎng)絡(luò)安全配置

前面兩個方法容易理解和實現(xiàn),具體說說第三種方法行您,更改網(wǎng)絡(luò)安全配置铭乾。

? ? 首先,在res文件夾下創(chuàng)建一個xml文件夾娃循,然后創(chuàng)建一個network_security_config.xml文件炕檩,文件內(nèi)容如下:

? <?xml version="1.0" encoding="utf-8"?>
? <network-security-config>
?????????????<base-config cleartextTrafficPermitted="true" />
? </network-security-config>

? ??接著,在AndroidManifest.xml文件下的application標(biāo)簽增加以下屬性

<application
?????...
?????android:networkSecurityConfig="@xml/network_security_config"
????... />

完成捌斧,這個時候App就可以訪問網(wǎng)絡(luò)了笛质。


推薦使用第一種方法,直接讓服務(wù)器支持HTTPS捞蚂,目前也有很多免費的方式可以實現(xiàn)HTTPS的訪問方式经瓷,或者使用第二種方式,把targetSdkVersion 降到27以下洞难。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末舆吮,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子队贱,更是在濱河造成了極大的恐慌色冀,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,496評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件柱嫌,死亡現(xiàn)場離奇詭異锋恬,居然都是意外死亡,警方通過查閱死者的電腦和手機编丘,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,407評論 3 392
  • 文/潘曉璐 我一進店門与学,熙熙樓的掌柜王于貴愁眉苦臉地迎上來彤悔,“玉大人,你說我怎么就攤上這事索守≡我ぃ” “怎么了?”我有些...
    開封第一講書人閱讀 162,632評論 0 353
  • 文/不壞的土叔 我叫張陵卵佛,是天一觀的道長杨赤。 經(jīng)常有香客問我,道長截汪,這世上最難降的妖魔是什么疾牲? 我笑而不...
    開封第一講書人閱讀 58,180評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮衙解,結(jié)果婚禮上阳柔,老公的妹妹穿的比我還像新娘。我一直安慰自己蚓峦,他們只是感情好舌剂,可當(dāng)我...
    茶點故事閱讀 67,198評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著枫匾,像睡著了一般架诞。 火紅的嫁衣襯著肌膚如雪拟淮。 梳的紋絲不亂的頭發(fā)上干茉,一...
    開封第一講書人閱讀 51,165評論 1 299
  • 那天,我揣著相機與錄音很泊,去河邊找鬼角虫。 笑死,一個胖子當(dāng)著我的面吹牛委造,可吹牛的內(nèi)容都是我干的戳鹅。 我是一名探鬼主播,決...
    沈念sama閱讀 40,052評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼昏兆,長吁一口氣:“原來是場噩夢啊……” “哼枫虏!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起爬虱,我...
    開封第一講書人閱讀 38,910評論 0 274
  • 序言:老撾萬榮一對情侶失蹤隶债,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后跑筝,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體死讹,經(jīng)...
    沈念sama閱讀 45,324評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,542評論 2 332
  • 正文 我和宋清朗相戀三年曲梗,在試婚紗的時候發(fā)現(xiàn)自己被綠了赞警。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片妓忍。...
    茶點故事閱讀 39,711評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖愧旦,靈堂內(nèi)的尸體忽然破棺而出世剖,到底是詐尸還是另有隱情,我是刑警寧澤忘瓦,帶...
    沈念sama閱讀 35,424評論 5 343
  • 正文 年R本政府宣布搁廓,位于F島的核電站,受9級特大地震影響耕皮,放射性物質(zhì)發(fā)生泄漏境蜕。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,017評論 3 326
  • 文/蒙蒙 一凌停、第九天 我趴在偏房一處隱蔽的房頂上張望粱年。 院中可真熱鬧,春花似錦罚拟、人聲如沸台诗。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,668評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽拉队。三九已至,卻和暖如春阻逮,著一層夾襖步出監(jiān)牢的瞬間粱快,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,823評論 1 269
  • 我被黑心中介騙來泰國打工叔扼, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留事哭,地道東北人。 一個月前我還...
    沈念sama閱讀 47,722評論 2 368
  • 正文 我出身青樓瓜富,卻偏偏與公主長得像鳍咱,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子与柑,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,611評論 2 353