Ошибка Android SSL: сертификат не доверяет… иногда

В приложении, над которым я работаю, мне нужно установить HTTPS-соединение с веб-сервером. Я получал ошибки сертификата, не доверяющие, и после консультации с stackoverflow я нашел это сообщение в блоге: http://blog.antoine.li/index.php/2010/10/android-trusting-ssl-certificates/

Похоже, что CA для этого сервера не включен в хранилище Android по умолчанию. Вкратце, я загрузил все сертификаты, создал хранилище ключей с поставщиком BKS, импортировал ключи, импортировал хранилище ключей в свой проект, создал подкласс класса DefaultHttpClient, чтобы заставить его использовать мое хранилище ключей.

После выполнения шагов в блог, он отлично работал на эмуляторе. Однако, когда я тестирую его на устройстве, он периодически дает сбой. Думаю, я выделил образец. Похоже, что по прошествии некоторого времени, и я попытаюсь установить HTTPS-соединение, это не удастся. Затем, если я снова попытаюсь подключиться к тому же самому, все будет успешно. Если я немного подожду, а затем попробую снова, с первого раза ничего не получится, повторные попытки будут успешными. Я, вероятно, смогу исправить это, просто сделав несколько неудачных попыток, но я хотел бы знать, что происходит. Поведение предполагает какой-то кеш, но я не знаю, как его найти или изменить его поведение. Есть ли у кого-нибудь предложения о том, что происходит, или знает, что я делаю не так? Любая помощь будет принята с благодарностью.

5
задан d370urn3ur 30 March 2011 в 19:25
поделиться