Для установки сертификата в системное хранилище доверенных сертификатов на устройстве под управлением Android 6 или более поздней версии требуются разрешения root для правильной работы во всех приложениях.
Без разрешений root вы можете установить сертификат только в «пользовательское» хранилище доверия, которое игнорируется приложениями, для которых targetSdkVersion
имеет значение 23 и выше.
К счастью, в В вашем случае речь идет о вашем собственном приложении, которое открывает дверь для перехвата трафика c с помощью Fiddler без root разрешений:
В вашем приложении вы должны предоставить файл конфигурации Network Security .
В этом файле у вас есть две опции:
Явно доверяет хранилищу доверия пользователей:
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<base-config>
<trust-anchors>
<certificates src="system" />
<certificates src="user" />
</trust-anchors>
</base-config>
</network-security-config>
Включите ваш Fiddler root Сертификат CA
Вы можете включить сертификат Fiddler root CA в свое приложение и определить, что ему следует доверять в отладочных сборках (добавьте файл сертификата Fiddler root CA в качестве необработанного ресурса debug_fiddler_root
):
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<debug-overrides>
<trust-anchors>
<certificates src="@raw/debug_fiddler_root"/>
</trust-anchors>
</debug-overrides>
</network-security-config>