2015-02-24 14 views
5

Tôi đang sử dụng mảnh chuẩn của mãSSL Handshake thất bại kết nối với Google từ khách hàng Android

URL url = new URL(sb.toString()); 
conn = (HttpsURLConnection) url.openConnection(); 
InputStreamReader in = new InputStreamReader(conn.getInputStream()); 

để kết nối với các API của Google Places từ một ứng dụng Android. Tuy nhiên, tôi có ngoại lệ này:

02-24 02:29:35.535: E/AdapterClass(3122): at com.android.org.conscrypt.OpenSSLSocketImpl.startHandshake(OpenSSLSocketImpl.java:374) 
02-24 02:29:35.535: E/AdapterClass(3122): at com.android.okhttp.Connection.upgradeToTls(Connection.java:197) 
02-24 02:29:35.535: E/AdapterClass(3122): Caused by: javax.net.ssl.SSLProtocolException: SSL handshake aborted: ssl=0xaf85c200: Failure in SSL library, usually a protocol error 
02-24 02:29:35.535: E/AdapterClass(3122): error:1407743E:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert inappropriate fallback (external/openssl/ssl/s23_clnt.c:765 0xac3f9e61:0x00000000) 

Bất kỳ ý tưởng nào? Tôi nhận thấy điều này chỉ xảy ra khi tôi sử dụng OkHttp cho các yêu cầu, nhưng không phải cho yêu cầu cụ thể này nhưng trong các phần khác của ứng dụng của tôi. Vậy tại sao okhttp lại đóng một vai trò ở đây (như thể hiện trong stacktrace)?

Trả lời

1

Sự cố này được giải quyết bằng cách chuyển sang phiên bản mới nhất (2.2 của bây giờ) của OkHttp (Tôi đã sử dụng phiên bản 1.6 trước đó).

+3

bạn có thể giải thích thêm một chút không? bởi vì tôi đang gặp vấn đề tương tự –

+1

@ Mr.Noob Tôi vừa thay đổi sự phụ thuộc và bắt đầu sử dụng phiên bản mới nhất và vấn đề đã biến mất. Tôi chưa hiểu tại sao nó lại xảy ra. – splinter123

Các vấn đề liên quan