एंड्रॉइड डिवाइस में डेटा / डेटा फ़ोल्डर कैसे एक्सेस करें?


316

मैं एक ऐप विकसित कर रहा हूं और मुझे पता है कि मेरा डेटाबेस इसमें *.dbदिखाई देगाdata/data/com.****.***

मैं इस फ़ाइल को एवीडी से एक्लिप्स में साइक्लाइट मैनेजर की मदद से एक्सेस कर सकता हूं

लेकिन मैं इस फ़ाइल को अपने Android फ़ोन में एक्सेस नहीं कर सकता।
मैं इसे Google करता हूं और यह कहता है कि मुझे इसे करने के लिए अपने फोन को रूट करने की आवश्यकता है, लेकिन मैं ऐसा नहीं करना चाहता। (नया फोन, वारंटी मुद्दे और सुरक्षा मुद्दे)

तो यहाँ मेरा सवाल है: मैं data/data/.....अपने एंड्रॉइड फोन में " बिना रूट किए " अपनी निर्देशिका कैसे एक्सेस कर सकता हूं ?

क्या मैं निर्देशिका data/data.....को रूट किए बिना उपयोगकर्ता अनुमतियाँ बदल सकता हूँ ?


1
क्या आपके पास database.db फ़ाइल है .. ???
अमित प्रजापति

si डेटाबेस का उपयोग कर रहा है - "OpenOrCreateDatabase (....)"
नवीन प्रिंस P

5
आपको निश्चित रूप से सबसे पहले फोन को रूट करना होगा। फिर आपको एक सक्षम फ़ाइल प्रबंधक ऐप की आवश्यकता होगी जिसका आप उपयोग कर सकते हैं। ASTRO फ़ाइल प्रबंधक लोकप्रिय है, लेकिन इसका कोई रूट एक्सेस समर्थन नहीं है, इसलिए यह बिजली उपयोगकर्ताओं के लिए बेकार है। आपको ES फ़ाइल एक्सप्लोरर या फ़ाइल विशेषज्ञ का उपयोग करने में सक्षम होना चाहिए। मुझे हाल ही में ES फ़ाइल एक्सप्लोरर के साथ / डेटा / डेटा या अन्य संरक्षित फ़ोल्डर देखने में समस्याएँ आई हैं और इसे बहुत हद तक छोड़ दिया है, और मैं अब फ़ाइल विशेषज्ञ के साथ हूं। उन्हें दोनों की आवश्यकता होती है कि आप सेटिंग्स में जाएं और रूट एक्सप्लोरर विकल्प को सक्षम करें (और कभी-कभी फ़ाइल सिस्टम को लिखने योग्य के रूप में भी माउंट करें)। इसलिए आपको पहले ऐसा करने की जरूरत है।
समीर

यह प्रोग्रामिंग संबंधित प्रश्न नहीं है और न ही उत्तर।
स्काईवॉकर

जवाबों:


375

फ़ाइलों को सीधे अपने फ़ोन पर एक्सेस करना मुश्किल है, लेकिन आप उन्हें अपने कंप्यूटर पर कॉपी करने में सक्षम हो सकते हैं, जहाँ आप इसके साथ कुछ भी कर सकते हैं। बिना रूट किए आपके पास 2 विकल्प हैं:

  1. यदि एप्लिकेशन डीबग करने योग्य है, तो आप run-asकमांड शेल में कमांड का उपयोग कर सकते हैं

    adb shell
    run-as com.your.packagename 
    cp /data/data/com.your.packagename/
    
  2. वैकल्पिक रूप से आप Android के बैकअप फ़ंक्शन का उपयोग कर सकते हैं।

    adb backup -noapk com.your.packagename

    अब आपको 'अपने डिवाइस को अनलॉक करने और बैकअप ऑपरेशन की पुष्टि करने' के लिए प्रेरित किया जाएगा। पासवर्ड प्रदान करना सबसे अच्छा नहीं है, अन्यथा डेटा पढ़ना अधिक कठिन हो जाता है। बस 'बैकअप माय डेटा' पर क्लिक करें। आपके कंप्यूटर पर परिणामस्वरूप 'backup.ab' फ़ाइल में एंड्रॉइड बैकअप प्रारूप में सभी एप्लिकेशन डेटा शामिल हैं। मूल रूप से यह एक संकुचित टार फाइल है। यह पृष्ठ बताता है कि आप इसे ओपन करने के लिए OpenSSL के zlib कमांड का उपयोग कैसे कर सकते हैं। आप adb restore backup.dbबैकअप को पुनर्स्थापित करने के लिए कमांड का उपयोग कर सकते हैं ।


15
adb backup -f \location\on\local\drive -noapk app.package.nameमेरे लिए बिना रूट के काम किया
theblang

24
अपनी बैकअप फ़ाइल को dd if=backup.ab bs=24 skip=1|openssl zlib -d > backup.tar
अनकम्प्रेस्ड

11
विकल्प 1 में, मैं अपने लैपटॉप (मैक) पर उन्हें बचाने के लिए cp कमांड को कैसे बताऊं? यदि आप एक विन उदाहरण देते हैं, तो मैं भी जानना चाहता हूं, और बस इसका अनुवाद करूंगा। धन्यवाद।
जेरार्ड

10
महत्वपूर्ण: चल रहा है adb backup -noapk com.your.packagenameपर अब फ़ाइल की बचत होगी वर्तमान निर्देशिका है, तो सुनिश्चित करें कि आप सही निर्देशिका में नेविगेट किया है बनाने के (जैसे cd Desktop..)
Menelaos Kotsollaris

6
ध्यान दें कि यदि आपके ऐप ने android:allowBackup="false"मैनिफ़ेस्ट में बैकअप अक्षम कर दिया है, तो बैकअप दृष्टिकोण एक खाली बैकअप देगा ।
टॉम

130

यदि आप एंड्रॉइड स्टूडियो 3.0 या बाद के संस्करण का उपयोग कर रहे हैं तो इन चरणों का पालन करें।

  1. व्यू > टूल विंडोज > डिवाइस फाइल एक्सप्लोरर पर क्लिक करें
  2. विस्तार / डेटा / डेटा / [पैकेज-नाम] नोड्स।

आप केवल उन पैकेजों का विस्तार कर सकते हैं जो गैर-रूट किए गए डिवाइस पर डिबग मोड में चलते हैं।

एंड्रॉइड स्टूडियो 3.0 में चरणों का पालन किया गया


1
मैं इस गोदी में कोई भी चीज नहीं देख सकता। और कहो मुझे कुछ नहीं दिखा। क्या आप जानते हैं कि समस्या क्या है?
महदी आज़ादबर

1
यह केवल डिबग-मोड में काम करता है, रिलीज़-बिल्ड के लिए नहीं
itinance

फ़ाइल सिस्टम में देखने के लिए नो-पीटा रास्ता दिखाने के लिए धन्यवाद!
लैंसफ्लरे

मुझे लगता है कि संस्करण में विकल्प नहीं है 3.0.1, क्या यह स्थानांतरित हो गया है?
कोडिंगेल

1
यह कमाल का है। काश मुझे यह कुछ समय पहले पता होता।
चेकमेट 711

59

आप रूट एक्सप्लोरर ऐप का उपयोग करके db प्राप्त करने का भी प्रयास कर सकते हैं। और अगर वह काम नहीं करता है तो आप यह कोशिश कर सकते हैं:

  1. सेमी खोलें
  2. अपनी निर्देशिका बदलें और 'प्लेटफ़ॉर्म टूल' में जाएं
  3. टाइप ' adb shell'
  4. su
  5. डिवाइस पर 'अनुमति दें' दबाएं
  6. chmod 777 /data /data/data /data/data/com.application.package /data/data/com.application.package/*
  7. ग्रहण में डीडीएमएस दृश्य खोलें और अपनी इच्छित फ़ाइल प्राप्त करने के लिए 'FileExplorer' खोलें

इसके बाद आपको रूट किए गए डिवाइस पर फ़ाइलों को ब्राउज़ करने में सक्षम होना चाहिए।


2
मुझे लगता है कि रूट एक्सप्लोर ऐप केवल रूट किए गए फोन के लिए काम करता है। मैं दूसरी विधि की कोशिश करूँगा
नवीन प्रिंस पी।

5
Chmod / डेटा के लिए असमर्थ: ऑपरेशन की अनुमति नहीं है
bofredo

@bofredo मुझे लगता है कि इसका कारण यह है कि आपका फोन जड़ नहीं है। आपको अपना फोन रूट करना चाहिए और फिर यह प्रयास करना चाहिए
शेराज़ अहमद खिलजी

1
@mahemadhi हां, आपको संभवतः हर निर्देशिका के लिए मैन्युअल रूप से यह कमांड चलाना होगा क्योंकि सभी निर्देशिकाओं के पास अनुमतियाँ हैं जो उनके लिए निजी हैं।
शेराज़ अहमद खिलजी

1
@VivekChavda युप के लिए उन्हें रूट किए गए फोन की आवश्यकता होती है
अहमद खिलजी

21

उपरोक्त में से कोई भी करने के लिए (यानी अपने फोन से ही संरक्षित फ़ोल्डरों तक पहुंच), आपको अभी भी रूट की आवश्यकता है। (जिसमें / डेटा फ़ोल्डर पर माउंट-अनुमतियाँ बदलना और इसे एक्सेस करना शामिल है)

रूट के बिना, कोड के माध्यम से आपके एप्लिकेशन के अलावा/data पढ़ने के लिए सीधे एक्सेस करना संभव नहीं है। तो आप उस फ़ाइल को sdcard या कहीं पहुँच योग्य बनाने की कोशिश कर सकते हैं, और फिर, आपको इसे सामान्य रूप से एक्सेस करने में सक्षम होना चाहिए।

यदि आपके पास डेवलपर डिवाइस है तो रूटिंग आपकी वारंटी को शून्य नहीं करेगी। मुझे क्षमा करें, AFAIK का कोई अन्य तरीका नहीं है।


मैं एक डेवलपर डिवाइस का उपयोग नहीं कर रहा हूं। मेरा एक्सपीरिया यू
नवीन प्रिंस पी

क्या मैं chmode कमांड के साथ डेटा फ़ोल्डर की उपयोगकर्ता अनुमति संपादित कर सकता हूं?
नवीन प्रिन्स

पूरा विभाजन केवल पढ़ने के लिए रखा गया है। मैं कहता हूं कि adb pullनीचे दिए गए उत्तर में आपका सबसे अच्छा दांव होगा ।
अनिरुद्ध रामनाथन

अगर आवेदन इसकी अनुमति देता है तो मैं संभव हूं। सभी निर्देशिकाओं में हर किसी के लिए एक्स अनुमति है (लेकिन हर किसी के लिए कोई आर नहीं है, इसलिए आपको रास्ता जानना होगा)। यह इस बात पर निर्भर करता है कि आवेदन ने फ़ाइल को विश्व सुलभ बनाया है या नहीं। कुछ फाइलें हैं, ज्यादातर नहीं हैं।
Jan Hudec

पहले आप कहते हैं कि इसे पढ़ना असंभव है, फिर आप फ़ाइल को कहीं और कॉपी करने का सुझाव देते हैं। लेकिन, किसी फाइल को पहली बार में पढ़े बिना कॉपी कैसे करें? मुझे लगता है कि यह जवाब छोटी गाड़ी है।
तक

13

अपने डिबग करने योग्य एप्लिकेशन फ़ोल्डर से एक फ़ाइल खींचने के लिए सबसे आसान तरीका (सिर्फ एक सरल कदम) (चलो कहते हैं /data/data/package.name/databases/file) एक एंड्रॉइड 5.0+ डिवाइस पर इस कमांड का उपयोग करके है:

adb exec-out run-as package.name cat databases/file > file

12
  1. अपने कमांड प्रॉम्प्ट खोलें
  2. निर्देशिका को E: \ Android \ adt-bundle-windows-x86_64-20140702 \ adt-bundle-windows-x86_64-20140702 \ sdk \ platform-tools में बदलें
  3. नीचे कमांड दर्ज करें
  4. adb -d shell
  5. run-as com.your.packagename cat databases/database.db > /sdcard/database.db
  6. cd /sdcardयह सुनिश्चित करने के लिए निर्देशिका बदलें database.db
  7. adb pull /sdcard/database.db या बस आप डिवाइस से database.db को कॉपी कर सकते हैं।

मेरे लिए एकदम सही काम करता है। धन्यवाद! लेकिन मेरे मामले में, डेटाबेस फ़ाइल नाम में कोई .db एक्सटेंशन नहीं है।
टेक्निक

10

ग्रहण में फाइल एक्सप्लोरर का उपयोग करें। Windows => दृश्य देखें => अन्य ... => फ़ाइल एक्सप्लोरर का चयन करें।

एक और तरीका है फ़ाइल को adb के माध्यम से खींचना है:

adb pull /system/data/data/<yourpackagename>/databases/<databasename> /sdcard

5

मुझे भी एक बार यही समस्या हुई थी। एंड्रॉइड डिवाइस के भीतर फ़ाइल को सीधे एक्सेस करने का कोई तरीका नहीं है सिवाय adb शेल या रूटिंग डिवाइस के।

यहाँ 02 विकल्प हैं:

1)

 public void exportDatabse(String databaseName)
   {
     try {
        File sd = Environment.getExternalStorageDirectory();
        File data = Environment.getDataDirectory();

        if (sd.canWrite()) {
            String currentDBPath = "//data//"+getPackageName()+"//databases//"+databaseName+"";
            String backupDBPath = "backupname.db";
            File currentDB = new File(data, currentDBPath);
            File backupDB = new File(sd, backupDBPath);

            if (currentDB.exists()) {
                FileChannel src = new FileInputStream(currentDB).getChannel();
                FileChannel dst = new FileOutputStream(backupDB).getChannel();
                dst.transferFrom(src, 0, src.size());
                src.close();
                dst.close();
            }
        }
    } catch (Exception e) {

    }
}

2) इसे आज़माएँ: https://github.com/sanathp/DatabaseManager_For_Android


5

Android से डेस्कटॉप पर बैकअप के लिए

कमांड लाइन cmd खोलें और इसे चलाएं: adb backup -f C: \ Intel \ xxx.ab -noapk your.app.package । पासवर्ड न डालें और बैकअप माय डेटा पर क्लिक करें। सुनिश्चित करें कि ड्राइव C रूट पर सेव न करें। आपको नकारा जा सकता है। यही कारण है कि मैंने C: \ Intel पर बचाया।

* .Ab फ़ाइल को निकालने के लिए

  1. यहां जाएं और डाउनलोड करें: https://sourceforge.net/projects/adbextractor/
  2. डाउनलोड की गई फ़ाइल को निकालें और उस फ़ोल्डर में नेविगेट करें जहां आपने निकाला था।
  3. इसे अपने स्वयं के फ़ाइल नामों से चलाएं : java -jar abe.jar unpack c: \ Intel \ xxx.ab c: \ Intel \ xxx.tar

1
यह एक शानदार जवाब है, धन्यवाद। Xiaomi डिवाइस (.bak एक्सटेंशन के साथ) पर बनाए गए एकल-ऐप बैकअप को निकालने के लिए मेरे लिए काम किया। कोई मूल आवश्यकता नहीं
रूसी

4

एक निहित डिवाइस पर, सही समाधान यह है:

Open cmd
Change your directory and go into 'Platform tools'
Type 'adb shell'
su
Press 'Allow' on device
chmod 777 /data /data/data /data/data/*
Open DDMS view in Eclipse/IntelliJ and from there open 'FileExplorer' to get your desired file

मूल समाधान ने काम किया, लेकिन चामोद अज्ञात निर्देशिका को लौटा देगा। Chmod कमांड को / data / data / * में बदलने से Intellij में DDMS से डेटा डायरेक्टरी में सभी सबफोल्डर्स को एक्सेस मिलता है। मुझे लगता है कि ग्रहण डीडीएमएस के लिए एक ही समाधान सही है।

अद्यतन करें , तो मुझे जो मिला है वह अजीब है। मैं IntelliJ (Android डिवाइस मॉनिटर) में DDMS का उपयोग करके एक Nexus 6 चला रहा हूं। मैंने थोड़ा स्टार्टर ऐप बनाया है। कहा ऐप डेटा / डेटा / com.example.myapp / फ़ाइलों में .csv फ़ाइल के लिए डेटा बचाता है

जब मैंने पहली बार अपने नेक्सस 6 पर इस फ़ाइल को एक्सेस करने की कोशिश शुरू की, तो मैंने पाया कि मुझे डिवाइस को रूट करना होगा .. मैं डेटा फ़ोल्डर देख सकता था, लेकिन इसे खोलने की कोशिश नहीं की जाएगी। जैसा कि अन्य स्थानों पर ऑनलाइन उल्लेख किया गया है, विस्तार + तब गायब हो जाएगा, उसके तुरंत बाद फिर से नोट करें (ध्यान दें, वेब पर ऐसे समाधान हैं जो इन फ़ोल्डरों को बिना रूट किए एक्सेस की अनुमति देने का दावा करते हैं, मैंने उन्हें बहुत देर तक नहीं पाया, और मैं सुनिश्चित नहीं है कि अगर मैं किसी भी तरह से रूट नहीं करना चाहता हूं ((मैं इसे मैन्युअल रूप से एक ऐप पर भरोसा करने या मेरे समाधान देने के लिए कमांड प्रॉम्प्ट कर सकता हूं))। मैंने अपने 6 को रूट किया और फिर से डीडीएमएस की कोशिश की।

इस बिंदु पर, इसने मुझे डेटा फ़ोल्डर दिखाया और मैं फ़ोल्डर का विस्तार कर सकता हूं और कॉम देख सकता हूं। निर्देशिकाएं, लेकिन मैं उनमें से कोई भी नहीं खोल सकता था। यही कारण है कि जब मैंने उपरोक्त समाधान की खोज की। प्रारंभिक निर्देश इस भाग पर काम नहीं करेंगे:

chmod 777 /data /data/data /data/data/com.application.pacakage /data/data/com.application.pacakage/*

जब मैंने अपने द्वारा हल किए गए समाधान की कोशिश की:

chmod 777 /data /data/data /data/data/*

यह समाधान काम करने के लिए लग रहा था, लेकिन केवल कुछ फ़ोल्डरों पर। मैं अब अपने myapp फोल्डर का विस्तार कर सकता हूं, लेकिन इसमें फाइल डायरेक्टरी का विस्तार नहीं कर सकता।

इस बिंदु पर, मैं थोड़ी देर के लिए इधर-उधर खेलता रहा और सोचा कि क्यों न मैं इन वाइल्डकार्ड प्रविष्टियों की कोशिश करने की बजाय उस निर्देशिका पर कोशिश करूं जो मुझे चाहिए।

chmod 777 /data /data/data /data/data/com.example.myapp/*

के बाद:

chmod 777 /data /data/data /data/data/com.example.myapp/files

इन आदेशों ने मुझे पुष्टि करने के लिए अपने एप्लिकेशन की निर्देशिका में फ़ाइलों को विस्तारित करने और देखने की अनुमति दी है कि .csv को सही ढंग से सहेजा जा रहा है।

आशा है कि यह किसी की मदद करता है। मैं इससे घंटों जूझता रहा!

(इस पर आगे एक बालक को कंपाउंड करने के लिए, अजीब तरह से पर्याप्त, अनुमतियाँ .csv फ़ाइल में पास नहीं हुईं जो कि फ़ाइल निर्देशिका में पास हुई हैं। मेरी फ़ाइलें निर्देशिका अनुमतियाँ drwxrwxrwx पढ़ती हैं और मेरा log.csv फ़ाइल अनुमतियाँ -rw-rw --- पढ़ती हैं। - .. सिर्फ आपकी जानकारी के लिए)


2

आप इस तरह से एक फ़ाइल को डाउनलोड कर सकते हैं:

adb exec-out run-as debuggable.app.package.name cat files/file.mp4 > file.mp4

डाउनलोड करने से पहले आप अपने ऐप-डायरेक्टरी में फ़ाइल संरचना पर एक नज़र नहीं डाल सकते हैं। इसके लिए निम्न चरणों का THelperध्यान रखें:

adb shell
run-as com.your.packagename 
cd files
ls -als .

एंड्रॉयड-स्टूडियो तरह से Shahidulउल्लेख किया ( https://stackoverflow.com/a/44089388/1256697 ) भी काम करते हैं। उन लोगों के लिए जो DeviceFile Explorerमेनू में विकल्प नहीं देखते हैं : Android स्टूडियो में / android-Directory को खोलना सुनिश्चित करें। उदाहरण के लिए प्रतिक्रिया-मूल उपयोगकर्ताओं के पास अपने प्रोजेक्ट-फोल्डर के अंदर समान / ios-Directory के समान स्तर पर अधिकार होता है।


1

एसडी-कार्ड पर अपना डेटाबेस बनाने का एक सरल तरीका है। क्योंकि आप आंतरिक मेमोरी में अपने फ़ोन के डेटा फ़ोल्डर तक पहुँच प्राप्त नहीं कर सकते, जब तक कि आप अपना फ़ोन रूट नहीं करते। तो क्यों न आप एसडी-कार्ड पर अपना डेटाबेस बनाएं।

इसके अलावा, यदि आप चाहें, तो आप किसी भी रूट की आवश्यकता के बिना अपने मौजूदा डेटाबेस फ़ाइल (आंतरिक मेमोरी से) को बाहरी मेमोरी में कॉपी करने के लिए कुछ फाइल कॉपी-कोड लिख सकते हैं।


इसे कैसे करना है? मैं sdcard में एक db कैसे बना सकता हूँ
नवीन प्रिंस P

यह विधि आपको sd-card पर डेटाबेस बनाने में मदद करेगी। बस Fileएसडी-कार्ड को इंगित करने का एक मार्ग प्रदान करें और आप जाने के लिए अच्छा है
वकासलम

1

इस फ़ोल्डर तक पहुँचने के लिए आपको प्रशासनिक अधिकारों की आवश्यकता हो सकती है।

तो आपके पास दो विकल्प हैं: -

  1. अपने डिवाइस को रूट करें और इस फ़ोल्डर तक पहुंचने का प्रयास करें
  2. एमुलेटर का उपयोग करें

ps: यदि आप उपरोक्त दो विकल्पों में से किसी का उपयोग कर रहे हैं, तो आप इन चरणों का पालन करके इस फ़ोल्डर तक पहुँच सकते हैं

DDMS परिप्रेक्ष्य खोलें -> आपका डिवाइस -> (राइट विंडो विकल्पों में से फ़ाइल एक्सप्लोरर का चयन करें) पैकेज चुनें -> डेटा -> डेटा -> पैकेज का नाम>> फाइलें

और वहां से आप अपनी फ़ाइल को खींच सकते हैं


1

adb backupमेरे लिए काम नहीं किया, इसलिए यहां मैंने क्या किया (Xiaomi Redmi Note 4X, Android 6.0):
1. सेटिंग्स> अतिरिक्त सेटिंग्स> बैकअप और रीसेट> स्थानीय बैकअप पर जाएं
2. स्क्रीन के निचले भाग पर 'बैक अप' पर टैप करें।
3. 'सिस्टम' और 'ऐप्स' चेकमार्क को अनचेक करें।
4. एप्लिकेशन चयन स्क्रीन पर नेविगेट करने के लिए 'एप्लिकेशन' सेल के दाईं ओर विस्तार प्रकटीकरण बटन टैप करें।
5. इच्छित एप्लिकेशन का चयन करें और ठीक पर टैप करें।
6. बैकअप पूरा होने के बाद, वास्तविक फ़ाइल को किसी तरह स्थित करने की आवश्यकता होती है। मेरा / MIUI / बैकअप / AllBackup / _FOLDER_NAMED_AFTER_BACKUP_CREATION_DATE_ को मिल सकता है
7. फिर मैंने RonTLV द्वारा इस उत्तर के चरणों का पालन कियावास्तव में बैकअप फ़ाइल (मेरे मामले में .bak) को टार में बदलने के लिए (मूल उत्तर से अनुलिपि):
"
क) यहां जाएं और डाउनलोड करें: https://sourceforge.net/projects/adbextractor/
b) डाउनलोड की गई फ़ाइल निकालें फ़ोल्डर में नेविगेट करें जहाँ आपने निकाला था।
c) इसे अपने स्वयं के फ़ाइल नामों से चलाएं: java -jar abe.jar unpack c: \ Intel \ xxx.ab c: \ Intel \ xxx.tar
"


0

आप इस db फ़ाइल को ग्रहण एक्सप्लोरर (जैसे: sdcard या PC) में कहीं पर कॉपी कर सकते हैं, और आप इस db फ़ाइल को एक्सेस और अपडेट करने के लिए sqlite का उपयोग कर सकते हैं।


0

सवाल यह है कि कैसे-से-एक्सेस-डेटा-डेटा-फ़ोल्डर-इन-एंड्रॉइड-डिवाइस?


अगर android-device ब्लूस्टैक्स है * रूट ब्राउज़र एपीके डेटा / डेटा / दिखाता है।


रूट ब्राउज़र को https://apkpure.com/root-browser/com.jrummy.root.bserserree से डाउनलोड करने का प्रयास करें


यदि फ़ाइल एक पाठ फ़ाइल है, तो आपको "Open as", "Text file", "Open as", "R पाठ पाठ" पर क्लिक करना होगा।


0

आप फ़ाइल को एसडी कार्ड फ़ोल्डर में कॉपी करने का भी प्रयास कर सकते हैं, जो एक सार्वजनिक फ़ोल्डर है, फिर आप फ़ाइल को अपने पीसी पर कॉपी कर सकते हैं जहां आप इसे एक्सेस करने के लिए साइक्लाइट का उपयोग कर सकते हैं।

यहाँ कुछ कोड है जिसका उपयोग आप डेटा / डेटा से सार्वजनिक भंडारण फ़ोल्डर में फ़ाइल को कॉपी करने के लिए कर सकते हैं:

private void copyFile(final Context context) {
    try {
        File sd = Environment.getExternalStorageDirectory();
        File data = Environment.getDataDirectory();

        if (sd.canWrite()) {
            String currentDBPath =
                    context.getDatabasePath(DATABASE_NAME).getAbsolutePath();

            String backupDBPath = "data.db";

            File currentDB = new File(currentDBPath);
            File backupDB = new File(sd, backupDBPath);

            if (currentDB.exists()) {
                FileChannel src = new FileInputStream(currentDB).getChannel();
                FileChannel dst = new FileOutputStream(backupDB).getChannel();
                dst.transferFrom(src, 0, src.size());
                src.close();
                dst.close();
            }
        }
    } catch (Exception e) {
        e.printStackTrace();
    }
}

मैनिफ़ेस्ट:

<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.WRITE_INTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_INTERNAL_STORAGE" />

कॉपी फ़ाइल के लिए सभी कार्रवाई सुलभ नहीं है अगर फ़ाइल साझा नहीं करती है तो दूसरों को पढ़ें अनुमति
स्टीव लक

0

SQLlite डेटाबेस उपयोगकर्ता के फोन पर संग्रहीत है और यह पथ के नीचे छिपा है:

/Data/Data/com.companyname.AppName/File/

आपके पास यहां 2 विकल्प हैं:

  1. आप अपने फोन को रूट कर सकते हैं ताकि आप अपनी छुपी हुई db3 फ़ाइल को देखने के लिए पहुँच प्राप्त कर सकें
  2. यह एक समाधान नहीं है बल्कि एक काम है। केवल परीक्षण पृष्ठ ही क्यों न बनाएं, जिसमें 'सेलेक्ट' स्टेटमेंट का उपयोग करके अपनी डेटाबेस तालिका प्रदर्शित करें।
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.