Cómo publicar HTTPS en Android
He mirado los acoplamientos siguientes, pero nada parece concreto. Secure HTTP Post en Android Este no funciona ya, lo he probado y hay comentarios de otras personas diciendo que no funciona.
También he comprobado esto: DefaultHttpClient, Certificados, Https y el problema de publicación! Esto parece que podría funcionar, pero el blogger sólo te deja colgando. Más instrucciones paso a paso serían útiles. Me las arreglé para obtener mi certificado por no haber sido capaz de seguir a través de su segundo paso.
- Android no puede obtener EditText getText (). ToString () en un diálogo
- Problemas de obfuscación de Proguard después de agregar un nuevo inicio de sesión de Google a la aplicación de Android
- Cortar la imagen después de seleccionar el área mediante la detección de bordes en android
- Android cambia el ancho del panel del cajón de navegación mediante programación
- Cómo establecer encabezados HttpPost para una solicitud de cliente en Java Android
Http://www.makeurownrules.com/secure-rest-web-service-mobile-application-android.html Este parece bueno, pero de nuevo, suelto al autor en el último paso: "Volver a nuestro código de cliente de descanso original . " Él también está por todas partes, no tengo idea de qué bibliotecas está usando. No está explicando su código y con el
RestTemplate restTemplate = new RestTemplate();
Es otro cliffhanger. Porque esa clase no ha sido proporcionada. Por lo tanto, si alguien podría explicar cómo hacer HTTPS solicitud de correo en detalle que sería genial. Tengo que aceptar el certificado auto firmado.
- Cómo mostrar sólo el mes actual en la vista de calendario de Android
- Vista superficial en capas en un FrameLayout en Android
- Cambio de comportamiento de SimpleDateFormat en Android Marshmallow
- RelativeLayout no se puede convertir en android.support.v7.widget.Toolbar
- Arquitectura de la aplicación de Android: RxJava
- ¿Cómo aprender un marco sin tutoriales
- Flip imágenes en un viewpager
- La orientación de la vista previa en el modo horizontal se gira en el sentido de las agujas del reloj con Camera2 api
Espero que ayude. Este es el código que usé y funcionó perfectamente bien.
private HttpClient createHttpClient() { HttpParams params = new BasicHttpParams(); HttpProtocolParams.setVersion(params, HttpVersion.HTTP_1_1); HttpProtocolParams.setContentCharset(params, HTTP.DEFAULT_CONTENT_CHARSET); HttpProtocolParams.setUseExpectContinue(params, true); SchemeRegistry schReg = new SchemeRegistry(); schReg.register(new Scheme("http", PlainSocketFactory.getSocketFactory(), 80)); schReg.register(new Scheme("https", SSLSocketFactory.getSocketFactory(), 443)); ClientConnectionManager conMgr = new ThreadSafeClientConnManager(params, schReg); return new DefaultHttpClient(conMgr, params); }
A continuación, cree un HttpClient como este: –
HttpClient httpClient = createHttpClient();
Y utilizarlo con HttpPost.
¡¡Aclamaciones!!
EDITAR
Y no utilicé RestTemplate en mi código. Hice una simple solicitud de correos. Si necesita más ayuda, háganmelo saber. Parece que recientemente he hecho algo similar a lo que usted está buscando.
Este es el método que utilicé para HTTPS Post y aquí he usado Custom Certificate, así que cambia la asignación HttpClient con la tuya …
public String postData(String url, String xmlQuery) { final String urlStr = url; final String xmlStr = xmlQuery; final StringBuilder sb = new StringBuilder(); Thread t1 = new Thread(new Runnable() { public void run() { HttpClient httpclient = MySSLSocketFactory.getNewHttpClient(); HttpPost httppost = new HttpPost(urlStr); try { List<NameValuePair> nameValuePairs = new ArrayList<NameValuePair>( 1); nameValuePairs.add(new BasicNameValuePair("xml", xmlStr)); httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs)); HttpResponse response = httpclient.execute(httppost); Log.d("Vivek", response.toString()); HttpEntity entity = response.getEntity(); InputStream i = entity.getContent(); Log.d("Vivek", i.toString()); InputStreamReader isr = new InputStreamReader(i); BufferedReader br = new BufferedReader(isr); String s = null; while ((s = br.readLine()) != null) { Log.d("YumZing", s); sb.append(s); } Log.d("Check Now",sb+""); } catch (ClientProtocolException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } /* * catch (ParserConfigurationException e) { // TODO * Auto-generated catch block e.printStackTrace(); } catch * (SAXException e) { // TODO Auto-generated catch block * e.printStackTrace(); } */ } }); t1.start(); try { t1.join(); } catch (InterruptedException e) { // TODO Auto-generated catch block e.printStackTrace(); } System.out.println("Getting from Post Data Method "+sb.toString()); return sb.toString(); }
- Manejo del hardware de Android Botón Atrás
- Cómo grabar archivos de audio con mejor calidad en android?