導航:首頁 > 操作系統 > androidapi24

androidapi24

發布時間:2025-05-28 21:08:20

android 7.0 以上 Charles 和 Fiddler 無法抓取 HTTPS 包的解決方式

最近升級了 targetSdkVersion 到 28 後發現在 Android 7.0 以上機型 Charles 抓取 https 包時顯示找不到證書,但是 Android 6.0 機型還是可以正常抓包。原因是因為從 Android 7.0 開始,默認的網路安全性配置修改了,具體請閱讀官方文檔 網路安全性配置 。

Android 6.0(API 23)及更低版本應用的默認網路安全性配置如下:

而在 Android 7.0(API 24)到 Android 8.1(API 27)的默認網路安全性配置如下:

而在 Android 9.0(API 28)及更高版本的默認網路安全性配置如下:

對比很容易發現,在 Android 7.0(API 24)到 Android 8.1(API 27),默認不再信任用戶添加的 CA 證書,所以也就不再信任 Charles 和 Fiddler 抓包工具的證書,所以抓取 HTTPS 包時才會失敗。而且在 Android 9.0(API 28)及更高版本上,不僅默認只系統預裝的 CA 證書,還默認禁止所有明文通信(不允許 http 請求)。

所以解決該問題就需要應用信任 Charles 和 Fiddler 抓包工具的證書抓包工具即可。

最簡單的解決方式是使用 Android 6.0 以下的網路安全性配置:

添加 res/xml/network_security_config.xml :

然後在清單文件中指向該文件:

這種解決方式有一個安全風險:正式版的應用會有被他人抓包的風險。

如何只在調試模式下允許抓包呢?

使用 <debug-overrides> 即可實現只在 android:debuggable 為 true 時才生效的配置:

網上有些解決方式是將 Charles 和 Fiddler 的證書添加到 raw 文件夾下的方式也可以,但是繁瑣了點。

在 Android 9.0(API 28)以上允許部分 http 請求

最佳的解決方式肯定是全部使用 https 請求,安全性更高,如果有些請求或測試環境下還是需要使用 http 請求,需要在網路安全性配置添加白名單:

⑵ 【Android初級】如何正確獲取WiFi列表

獲取Android設備上的WiFi列表是一項常見的需求,但實現過程中需注意正確的步驟和方法。以下為簡化版步驟,確保能獲取到最新且准確的WiFi列表信息。

本地環境設定如下:

Android Studio版本:3.0.1;DEMO APK的Min SDK Version為API 23,Target SDK Version為API 24,Compile SDK Version為API 26;真機運行於Android 7.0系統。

獲取WiFi列表的完整流程:

1. 開啟WiFi並激活定位服務,確保設備能被正確識別和使用。

2. 在`onCreate`方法中動態申請`ACCESS_FINE_LOCATION`許可權,以獲取定位信息。

3. 同樣在`onCreate`內注冊廣播接收器,以便在定位服務改變時接收通知。

4. 定義`mReceiver`類,並在布局文件中加入一個`Button`,以便觸發WiFi掃描。

5. 在`AndroidManifest.xml`文件中聲明`ACCESS_FINE_LOCATION`許可權。

值得注意的是,申請許可權的操作可能在`onCreate`中重復進行,這是因為Android系統可能在運行時才對應用許可權進行檢查,確保應用僅在實際需要時請求許可權,而非僅在編譯時聲明。

實現過程中的常見誤區:

一些開發者可能會在調用`startScan`方法後立刻調用`getScanResults`獲取結果,但這會得到上一次掃描的WiFi列表,而非最新的信息。正確的做法是在接收器的`onReceive`方法中處理並獲取掃描結果。

在實現過程中遇到任何問題或有不同見解,歡迎與我一起探討,共享解決方案。

⑶ 如何查看android api

查看android api有兩種方式:在線查看離線查看


1. 在線查看

在線查看一般是指在安卓開發者官網上直接查看,但這需要你的網路環境可以訪問谷歌。

官方地址如下:

https://developer.android.com/reference/packages.html

目前最新的API是android 24,如下圖,左邊可以切換API的版本,右邊可以切換顯示包索引還是類索引。

依次打開Develop-->Reference,然後就可以看到API文檔了。這個docs幾乎包含了開發者官網的全部內容,所以除了查看API,還可以查看官方教程等資源。


另外,雖說這是離線文檔,但裡麵包含了谷歌字體服務和幾個連接谷歌的腳本,所以打開時可能會很慢。解決方案是用一個編輯器比如Notepad++,搜索各文件中包含的訪問谷歌服務的網址字串,並將其替換為空串就可以了。

⑷ 如何查看Android SDK API文檔

查看android api有兩種方式:在線查看與離線查看。

1. 在線查看

在線查看一般是指在安卓開發者官網上直接查看,但這需要你的網路環境可以訪問谷歌。

官方地址如下:

https://developer.android.com/reference/packages.html

目前最新的API是android 24,如下圖,左邊可以切換API的版本,右邊可以切換顯示包索引還是類索引。

依次打開Develop-->Reference,然後就可以看到API文檔了。這個docs幾乎包含了開發者官網的全部內容,所以除了查看API,還可以查看官方教程等資源。

另外,雖說這是離線文檔,但裡麵包含了谷歌字體服務和幾個連接谷歌的腳本,所以打開時可能會很慢。解決方案是用一個編輯器比如Notepad++,搜索各文件中包含的訪問谷歌服務的網址字串,並將其替換為空串就可以了。

閱讀全文

與androidapi24相關的資料

熱點內容
程序員雲筆記軟體 瀏覽:938
oppo手機在桌面移除的app如何恢復 瀏覽:138
靜心解壓助眠音樂 瀏覽:994
說瓷PDF 瀏覽:45
壓縮機占冰箱成本的多少 瀏覽:744
廣聯達加密鎖怎麼樣是正版 瀏覽:802
outlook加密怎麼查伺服器和埠 瀏覽:219
如何讓app自動更新 瀏覽:463
得力考勤機數據被加密了 瀏覽:216
刪除思科某一條命令 瀏覽:518
c程序編譯器手機 瀏覽:929
加密咸魚等級 瀏覽:644
編程加機器人具體學的是什麼 瀏覽:791
騰訊手機管家加密相冊是哪個文件 瀏覽:850
對講機頻道怎麼加密 瀏覽:568
華為北京伺服器代理雲空間 瀏覽:324
好多拉app怎麼樣 瀏覽:748
excel表格打開顯示編譯錯誤 瀏覽:420
java鏈接阿里雲伺服器 瀏覽:23
程序員眼中的中國人 瀏覽:118