यह उदाहरण दर्शाता है कि मैं एसडी कार्ड पर एक फ़ोल्डर/फ़ाइल पर एंड्रॉइड अनुमति कैसे सेट कर सकता हूं ताकि इसे लिखने में सक्षम हो सकें।
चरण 1 - एंड्रॉइड स्टूडियो में एक नया प्रोजेक्ट बनाएं, फाइल ⇒ न्यू प्रोजेक्ट पर जाएं और एक नया प्रोजेक्ट बनाने के लिए सभी आवश्यक विवरण भरें।
चरण 2 - निम्न कोड को res/layout/activity_main.xml में जोड़ें।
एडिटटेक्स्ट> <लाइनियरलाउट एंड्रॉइड:लेआउट_विड्थ ="मैच_पेरेंट" एंड्रॉइड:लेआउट_हाइट ="रैप_कंटेंट" एंड्रॉइड:लेआउट_मार्जिनटॉप ="2 0dp" एंड्रॉइड:ओरिएंटेशन ="क्षैतिज" एंड्रॉइड:वेटसम ="1.0"> <बटन एंड्रॉइड:आईडी ="@ + आईडी / सेव एक्सटर्नल स्टोरेज" एंड्रॉइड:लेआउट_विड्थ ="मैच_पेरेंट" एंड्रॉइड:लेआउट_हाइट ="रैप_कंटेंट" एंड्रॉइड:लेआउट_वेट ="0.5 "एंड्रॉइड:टेक्स्ट ="सेव" /> <बटन एंड्रॉइड:आईडी ="@ + आईडी / गेट एक्सटर्नल स्टोरेज" एंड्रॉइड:लेआउट_विड्थ ="मैच_पेरेंट" एंड्रॉइड:लेआउट_हाइट ="रैप_कंटेंट" एंड्रॉइड:लेआउट_वेट ="0.5" एंड्रॉइड:टेक्स्ट ="पढ़ें। " />
चरण 3 - निम्न कोड को src/MainActivity.java
में जोड़ेंimport androidx.appcompat.app.AppCompatActivity;import android.os.Bundle;import android.os.Environment;import android.view.View;import android.widget.Button;import android.widget.EditText;import android. विजेट.टेक्स्टव्यू;आयात java.io.BufferedReader;आयात java.io.DataInputStream;import java.io.File;आयात java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.io .InputStreamReader; सार्वजनिक वर्ग MainActivity AppCompatActivity को बढ़ाता है {EditText editText; टेक्स्ट व्यू टेक्स्ट व्यू; बटन सेवबटन, रीडबटन; फ़ाइल myExternalFile; स्ट्रिंग myData =""; @Override संरक्षित शून्य पर क्रिएट (बंडल सेव किया गया इंस्टेंसस्टेट) {super.onCreate (savedInstanceState); setContentView(R.layout.activity_main); संपादित टेक्स्ट =findViewById (R.id.myInputText); टेक्स्ट व्यू =findViewById (R.id.response); saveButton =findViewById (R.id.saveExternalStorage); saveButton.setOnClickListener (नया दृश्य। OnClickListener () {@ ओवरराइड सार्वजनिक शून्य पर क्लिक करें (देखें v) {कोशिश करें {FileOutputStream fos =नया फ़ाइलऑटपुटस्ट्रीम (myExternalFile); fos.write (editText.getText ()। toString ()। getBytes ()); fos.close (); } कैच (IOException e) { e.printStackTrace (); } editText.setText (""); textView.setText ("SampleFile.txt बाहरी संग्रहण में सहेजा गया ..."); }}); readButton =findViewById (R.id.getExternalStorage); readButton.setOnClickListener (नया दृश्य। OnClickListener () {@ ओवरराइड सार्वजनिक शून्य पर क्लिक करें (देखें v) {कोशिश करें {FileInputStream fis =new FileInputStream (myExternalFile); DataInputStream in =new DataInputStream (fis); BufferedReader br =नया BufferedReader (नया इनपुटस्ट्रीम रीडर ( in)); स्ट्रिंग strLine; जबकि ((strLine =br.readLine ())! =नल) {myData =myData + strLine; } in.close (); } कैच (IOException e) {e.printStackTrace (); } editText.setText(myData); textView.setText("SampleFile.txt डेटा आंतरिक संग्रहण से पुनर्प्राप्त..."); }}); अगर (!isExternalStorageAvailable() || isExternalStorageReadOnly ()) { saveButton.setEnabled(false); } और {स्ट्रिंग फ़ाइलनाम ="नमूनाफ़ाइल.txt"; स्ट्रिंग फ़ाइलपाथ ="माईफोल्डर"; myExternalFile =नई फ़ाइल (getExternalFilesDir (filePath), फ़ाइल नाम); } } निजी स्थिर बूलियन isExternalStorageReadOnly () {स्ट्रिंग extStorageState =Environment.getExternalStorageState (); पर्यावरण लौटें।MEDIA_MOUNTED_READ_ONLY.equals(extStorageState); } निजी स्थिर बूलियन isExternalStorageAvailable () {स्ट्रिंग extStorageState =Environment.getExternalStorageState (); पर्यावरण लौटें।MEDIA_MOUNTED.equals(extStorageState); }}पूर्व>चरण 4 - निम्न कोड को androidManifest.xml में जोड़ें
<उपयोग-अनुमति android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> <गतिविधि android:name=".MainActivity"> <इरादे-फ़िल्टर> <कार्रवाई android:name="android.intent.action.MAIN" /> <श्रेणी android:name="android.intent.category.LAUNCHER" /> गतिविधि> एप्लिकेशन>प्रकट> आइए अपना एप्लिकेशन चलाने का प्रयास करें। मुझे लगता है कि आपने अपने वास्तविक Android मोबाइल डिवाइस को अपने कंप्यूटर से कनेक्ट कर लिया है। एंड्रॉइड स्टूडियो से ऐप चलाने के लिए, अपने प्रोजेक्ट की गतिविधि फ़ाइलों में से एक खोलें और टूलबार से रन आइकन पर क्लिक करें। एक विकल्प के रूप में अपने मोबाइल डिवाइस का चयन करें और फिर अपने मोबाइल डिवाइस की जांच करें जो आपकी डिफ़ॉल्ट स्क्रीन प्रदर्शित करेगा -