Форум программистов, компьютерный форум CyberForum.ru

Https в приложении - Android

Восстановить пароль Регистрация
 
Hank
42 / 33 / 2
Регистрация: 28.12.2011
Сообщений: 209
02.04.2016, 10:08     Https в приложении #1
Приветствую!

Подскажите, пожалуйста, как вы реализуете в своих приложениях https подключения.
Спасибо!
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
02.04.2016, 10:08     Https в приложении
Посмотрите здесь:

Android Получение JSON с https сервера
Android AdMob в приложении
Android Https соединение с сертфикатам пользователя и сервера
Анимация в приложении Android
Android Музыка в приложении
Jsoup и https Android
Android Приложении на андроид
Android Баг в приложении
Android Перехват HTTPS трафика андроид приложения, запущенного на эмуляторе
Чат в приложении Android
Https и http Android
Basic-authentication Https SSL Android, loopj library Android

Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Паблито
не спать!
1868 / 1602 / 493
Регистрация: 12.05.2014
Сообщений: 5,796
Завершенные тесты: 1
02.04.2016, 11:59     Https в приложении #2
http://square.github.io/okhttp/
Hank
42 / 33 / 2
Регистрация: 28.12.2011
Сообщений: 209
03.04.2016, 17:03  [ТС]     Https в приложении #3
Слышал про эту библиотеку, но плотно с ней не работал.
Дело в том, что приложение отправляет на сервер фото, при этом нужно обновлять прогрессбар. Сейчас это делается в с помощью такого кода:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
...
dos = new DataOutputStream(conn.getOutputStream());
dos.writeBytes(getPostParams());
bytesAvailable = fileInputStream.available();
buffer = new byte[maxBufferSize];
int progress = 0;
while ((bytesRead = fileInputStream.read(buffer)) > 0) {
                dos.write(buffer, 0, bytesRead);
                if (onChangeSenderListener != null){
                    onChangeSenderListener.onSenderChange(progress * 360 / bytesAvailable, String.valueOf(progress * 100 / startProcess));
                }
                progress += bytesRead;
            }
Скажите, можно ли что-то подобное сделать через эту библиотеку?
YuraAAA
 Аватар для YuraAAA
1563 / 1305 / 269
Регистрация: 25.10.2009
Сообщений: 3,424
Записей в блоге: 2
03.04.2016, 20:32     Https в приложении #4
Hank, то же самое будет. В okhttp надо будет так же реализовывать progress listener
Hank
42 / 33 / 2
Регистрация: 28.12.2011
Сообщений: 209
04.04.2016, 16:32  [ТС]     Https в приложении #5
Цитата Сообщение от Паблито Посмотреть сообщение
http://square.github.io/okhttp/
Можно пример кода?
Сам я делал так
Java
1
2
3
4
5
6
7
8
9
10
11
conn = (HttpURLConnection) url.openConnection();
sslContext = SSLContext.getInstance("TLS");
sslContext.init(null, getArrayTrustManager(), new SecureRandom());
SSLSocketFactory sslSocketFactory = sslContext.getSocketFactory();
conn.setSSLSocketFactory(sslSocketFactory);
conn.setHostnameVerifier(new HostnameVerifier() {
   @Override
   public boolean verify(String s, SSLSession sslSession) {
      return true;
                }
            });
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
TrustManager[] getArrayTrustManager(){
        return new TrustManager[]{new X509TrustManager() {
            @Override
            public void checkClientTrusted(X509Certificate[] x509Certificates, String s) throws CertificateException {
 
            }
 
            @Override
            public void checkServerTrusted(X509Certificate[] x509Certificates, String s) throws CertificateException {
 
            }
 
            @Override
            public X509Certificate[] getAcceptedIssuers() {
                return new X509Certificate[0];
            }
        }
        };
    }
Это решение устраивало всем, до того момента пока от гугла не пришло письмо, в котором сказано, что данная реализация небезопасна, т.к. нет проверки передаваемого сервером сертификата.
Hank
42 / 33 / 2
Регистрация: 28.12.2011
Сообщений: 209
10.04.2016, 13:39  [ТС]     Https в приложении #6
Цитата Сообщение от Hank Посмотреть сообщение
Можно пример кода?
Ребят, подскажите, пожалуйста, очень надо!
Нашел в сети один вариант, но там требуется сертификат, видимо с которым сервер работает. Возможно ли без сертификата?
Yandex
Объявления
10.04.2016, 13:39     Https в приложении
Ответ Создать тему
Опции темы

Текущее время: 01:36. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru