самоподписанный сертификат. проблема в том, что не полуается его в доверенные добавть
1. Запустить эмулятор, потом добавить сертификат в sdcard/Download
adb push "/home/tatyana/Рабочий стол/ssl_test/localhost.crt" /sdcard/Download/
tatyana@fedora:~/Рабочий стол/ssl_test$ adb push "/home/tatyana/Рабочий стол/ssl_test/localhost.crt"
/sdcard/Download/
/home/tatyana/Рабочий стол/...pped. 12.2 MB/s (1046 bytes in 0.000s)
tatyana@fedora:~/Рабочий стол/ssl_test$
2. Сверзу нажать груг = хоум, Зайти в настройки устройства в самом эмуляторе
3. Найти "Encryption and Credentials /«Шифрование и учетные данные
4. Выбираем установка (второй пункт vpn ....)
5. сертификат будет в загрузках (пункт 1) на карте
6. Объединить ключ и сертификат
openssl pkcs12 -export -inkey localhost.key -in localhost.crt -out localhost.p12
7. перенести на устройство
adb push /home/tatyana/Рабочий\ стол/ssl_test/localhost.p12 /sdcard/Download/
/////////////////////////////////////////
2 способ поместить в доверенные в ручную
app/
src/
main/
res/
raw/
your_cert.der
Конечно! Ниже я подробно объясню, как доверять самоподписанному сертификату в эмуляторе Android для разработки, используя network_security_config.xml. Это наиболее безопасный и удобный способ для тестирования в приложениях без необходимости рутировать устройство или эмулятор.
Подробная инструкция: доверие к самоподписанному сертификату в Android через network_security_config.xml
Шаг 1. Подготовьте ваш сертификат
1.1. Экспортируйте сертификат в нужном формате
Если у вас есть .p12 или .crt, убедитесь, что он в формате .der или .pem.
Для этого используйте команду OpenSSL:
bash
# Извлечь сертификат из p12 в PEM
openssl pkcs12 -in localhost.p12 -clcerts -nokeys -out localhost.pem
или
bash
# Конвертировать PEM в DER (бинарный формат)
openssl x509 -in localhost.pem -outform DER -out localhost.der
Важно: Назовите файл, например, your_cert.der.
1.2. Поместите сертификат в проект
В вашем проекте Android создайте папку res/raw/ (если ее еще нет).
Поместите туда файл your_cert.der.
Шаг 2. Создайте файл конфигурации network_security_config.xml
Этот файл укажет вашему приложению доверять вашему сертификату.
2.1. Создайте папку и файл
В вашем проекте перейдите по пути: app/src/main/res/xml/
Если папки xml нет, создайте ее.
Внутри создайте файл network_security_config.xml.
2.2. Напишите содержимое файла
xml
your.server.domain
Обратите внимание:
Замените your.server.domain на ваш реальный сервер или IP, к которому вы подключаетесь.
Если вы хотите доверять всему трафику (не рекомендуется), можно оставить , а не указывать конкретный.
Шаг 3. Обновите AndroidManifest.xml
Добавьте ссылку на конфигурацию безопасности в ваш манифест:
xml
...