मैं एक ट्यूटोरियल है कि Android के आसपास मामलों नहीं किया गया था निम्नलिखित शुरू कर दिया और यह मिल गया:मैं एंड्रॉइड के माध्यम से एक एसएसएल कनेक्शन कैसे प्राप्त कर सकता हूं?
System.setProperty("javax.net.ssl.trustStore", "truststore");
System.setProperty("javax.net.ssl.trustStorePassword", "password");
SSLSocketFactory ssf = (SSLSocketFactory) SSLSocketFactory.getDefault();
try {
Socket s = ssf.createSocket("192.168.2.11", 6543);
PrintWriter out = new PrintWriter(s.getOutputStream());
while (true){
out.println("SSL TEST");
Log.d("DATA", "DATA SENT");
}
} catch (UnknownHostException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
मैं इस में कुछ प्रश्नों करने पर निर्भर करता है लगता है:
मैं अपने खुद के विश्वास की दुकान नहीं है बनाया, लेकिन ट्यूटोरियल और चीजों के माध्यम से ऑनलाइन खोज, मुझे यकीन नहीं है कि कैसे एक बनाना है। क्या कोई तरीका है कि मैं ट्रस्ट स्टोर को बना या संशोधित कर सकता हूं ताकि मुझे इसमें आवश्यक प्रमाणपत्र प्राप्त हो सकें? (यदि कोई फर्क पड़ता है तो मैं एक स्व-हस्ताक्षरित प्रमाणपत्र का उपयोग कर रहा हूं)
मैं एसएसएल हैंडशेक के साथ चीजों को आसानी से कैसे चला सकता हूं? अभी, मुझे जो त्रुटि मिल रही है वह है:
javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
ईमानदारी से, मैं वास्तव में समझ में नहीं आता कि इसका क्या अर्थ है।
यह सुनिश्चित करने के लिए कि यह कनेक्शन हो सकता है, मेरे एंड्रॉइड डिवाइस पर मुझे किन सेटिंग्स या फ़ाइलों को संशोधित करने की आवश्यकता है?
आपको गैर-एंड्रॉइड तकनीक को संशोधित करने की बजाय, इसे करने के लिए शायद एंड्रॉइड तरीके से शुरू करना चाहिए। –
मैंने अपने सर्वर से कीस्टोर फ़ाइल को रखने और इसे मेरे जेडीके/जेआर/lib/सुरक्षा फ़ोल्डर में रखने और फिर उस मैच से ट्रस्ट स्टोर स्थान और पासवर्ड बदलने के लिए भी प्रयास किया और मुझे वही अपवाद मिला। – Matt
प्रतीक्षा करें! "इसे करने का एंड्रॉइड तरीका" क्या है? – Matt