2010-06-21 8 views
7

मेरे पास एक एंड्रॉइड एप्लिकेशन है जिसे लॉगिन करने के लिए उपयोगकर्ता नाम और पासवर्ड की आवश्यकता है। मैं यूज़रनेम और पासवर्ड स्वचालित रूप से लॉगिन स्क्रीनएंड्रॉइड ऐप के लॉगिन विवरण को कैसे सहेजना है?

EditText input1 = (EditText) findViewById(R.id.usertext); 
    EditText input2 = (EditText) findViewById(R.id.Passtext); 
    String username = input1.getText().toString(); 
    String password = input2.getText().toString(); 

लॉगिन सफल होता है, यह बिना दिखाए जब उपयोगकर्ता एप्लिकेशन अगली बार और एप्लिकेशन के लिए लॉगिन खोलता फोन में स्थानीय रूप से बचाने के लिए या कहीं उन्हें इस्तेमाल करने की जरूरत है इरादे के माध्यम से गतिविधि को बुलाओ।

उत्तर

13

हो सकता है एक संभावित जगह।

+0

अच्छा, यह :) – RvdK

+2

अस्तित्व में प्रति Android दस्तावेज़ के रूप में नहीं पता था कि "यह समझना महत्वपूर्ण है कि खाता प्रबंधक एक एन्क्रिप्शन सेवा या कीचेन नहीं है महत्वपूर्ण है। ** यह सादा पाठ में, जैसे ही आप उन्हें पास करते हैं, खाता लेखा-पत्रों को संग्रहीत करता है। ** अधिकांश उपकरणों पर, यह एक विशेष चिंता नहीं है, क्योंकि यह उन्हें ऐसे डेटाबेस में संग्रहीत करता है जो रूट के लिए केवल पहुंच योग्य है। लेकिन रूट डिवाइस पर, क्रेडेंशियल्स डिवाइस पर एडीबी एक्सेस के साथ किसी भी व्यक्ति द्वारा पठनीय होगा " यह प्राइ में सादा पाठ में पासवर्ड संग्रहीत करने के बराबर है vate SharedPreference, मैं wd md5 उत्पन्न करने के लिए किसी भी कुंजी का उपयोग करने का सुझाव देता हूं और फिर उसे निजी साझाकरण या खाता प्रबंधक में संग्रहीत करता हूं। –

0

यदि आप वास्तव में सुरक्षा की परवाह नहीं करते हैं तो आप वरीयताओं या फ़ाइल का उपयोग कर सकते हैं। यदि आप उन्हें स्टोर करने वाले हैं तो आपको पासवर्ड एन्क्रिप्ट करना चाहिए। विकल्पों के बेहतर विवरण के लिए here देखें।

3

मैं स्टोर करने से पहले अपना पासवर्ड हैशिंग करने के लिए एमडी 5 या SHA1 जैसे कुछ का उपयोग करने की सिफारिश करता हूं।

स्टोर करने के लिए या तो आप उपयोग कर रहे हैं ApiLevel> = 5 AccountManager के बारे में पढ़ा "वरीयताएं" या SQLite DB (केवल एक एकल डेटासेट के लिए इस तरह के नहीं उपयोगी)

2

उपयोगकर्ता नाम को बचाने के लिए sharepref में & पासवर्ड की कोशिश

SharedPreferences.Editor editor=mPreferences.edit(); 
private SharedPreferences mPreferences; 
mPreferences = getSharedPreferences("CurrentUser", MODE_PRIVATE); 
editor.putString("UserName", username); 
editor.putString("PassWord", password); 
editor.commit(); 
+4

ईक, कृपया पासवर्ड का हैश बचाएं और पासवर्ड ही नहीं ... – RvdK

+1

यह एक बहुत बुरा विचार है, क्योंकि इसे रूट विशेषाधिकार रखने वाले किसी भी व्यक्ति द्वारा आज तक पहुंचा जा सकता है (आजकल प्राप्त करना काफी आसान है)। –

संबंधित मुद्दे