অ্যান্ড্রয়েড ডিভাইসে কীভাবে ডেটা / ডেটা ফোল্ডার অ্যাক্সেস করবেন?


316

আমি একটি অ্যাপ বিকাশ করছি এবং আমি জানি যে আমার ডাটাবেসটি *.dbউপস্থিত হবেdata/data/com.****.***

স্ক্লাইট ম্যানেজারের সাহায্যে আমি এভিডি থেকে এক্লিপসে এই ফাইলটি অ্যাক্সেস করতে পারি

তবে আমি আমার অ্যান্ড্রয়েড ফোনে এই ফাইলটি অ্যাক্সেস করতে পারি না।
আমি এটি গুগল করেছি এবং এটি বলছে যে এটি করার জন্য আমার ফোনটি রুট করা দরকার, তবে আমি এটি করতে চাই না। (নতুন ফোন, ওয়ারেন্টি ইস্যু এবং সুরক্ষা সমস্যা)

সুতরাং এখানে আমার প্রশ্ন: আমি কীভাবে data/data/.....আমার অ্যান্ড্রয়েড ফোনে আমার ডিরেক্টরিটি " এটির মূল না করে " অ্যাক্সেস করতে পারি ?

আমি কী ডিরেক্টরি ব্যবহার না করে ডিরেক্টরিটির ব্যবহারকারীর অনুমতিগুলি পরিবর্তন করতে পারি data/data.....?


1
আপনার কাছে ডাটাবেস.ডিবি ফাইল আছে .. ???
অমিত প্রজাপতি

si আমি ডাটাবেস ব্যবহার করছি - "ওপেনআরক্রিয়েট ডেটাবেস (....)"
নবীন প্রিন্স পি

5
আপনার অবশ্যই প্রথমে ফোনটি রুট করা দরকার। তারপরে আপনার একটি উপযুক্ত ফাইল ম্যানেজার অ্যাপ্লিকেশন প্রয়োজন যা আপনি ব্যবহার করতে পারেন। এস্ট্রো ফাইল ম্যানেজারটি জনপ্রিয় তবে এর কোনও রুট অ্যাক্সেস সমর্থন নেই তাই এটি বিদ্যুৎ ব্যবহারকারীর পক্ষে অকেজো। আপনার ES ফাইল এক্সপ্লোরার বা ফাইল বিশেষজ্ঞ ব্যবহার করতে সক্ষম হওয়া উচিত। ইএস ফাইল এক্সপ্লোরার সহ আমার সম্প্রতি / ডেটা / ডেটা বা অন্যান্য সুরক্ষিত ফোল্ডারগুলি দেখতে সমস্যা হয়েছে এবং এটিকে বেশ ত্যাগ করেছি এবং আমি এখন ফাইল বিশেষজ্ঞ ব্যবহার করছি। তাদের উভয়েরই প্রয়োজন হয় যে আপনি সেটিংসে যান এবং রুট এক্সপ্লোরার বিকল্প সক্ষম করুন (এবং কখনও কখনও লিখনযোগ্য হিসাবে ফাইল সিস্টেমকে মাউন্টও করতে পারেন)। সুতরাং আপনার প্রথমে এটি করা দরকার।
সমীর

এটি প্রোগ্রামিং সম্পর্কিত প্রশ্ন বা উত্তর নয়।
SkyWalker

উত্তর:


375

আপনার ফোনে সরাসরি ফাইল অ্যাক্সেস করা কঠিন, তবে আপনি সেগুলি আপনার কম্পিউটারে অনুলিপি করতে সক্ষম হতে পারেন যেখানে আপনি এটি দিয়ে কিছু করতে পারেন। রুট না করে আপনার কাছে দুটি বিকল্প রয়েছে:

  1. যদি অ্যাপ্লিকেশনটি ডিবাজযোগ্য হয় তবে আপনি run-asকমান্ডটি অ্যাডবি শেল ব্যবহার করতে পারেন

    adb shell
    run-as com.your.packagename 
    cp /data/data/com.your.packagename/
  2. বিকল্পভাবে আপনি অ্যান্ড্রয়েডের ব্যাকআপ ফাংশনটি ব্যবহার করতে পারেন।

    adb backup -noapk com.your.packagename

    আপনাকে এখন 'আপনার ডিভাইসটি আনলক করতে এবং ব্যাকআপ অপারেশনটি নিশ্চিত করতে' অনুরোধ করা হবে। পাসওয়ার্ড সরবরাহ না করাই সেরা, অন্যথায় ডেটা পড়া আরও কঠিন হয়ে পড়ে। শুধু 'আমার ডেটা ব্যাকআপ' এ ক্লিক করুন। আপনার কম্পিউটারে ফলস্বরূপ 'ব্যাকআপ.এব' ফাইলটিতে অ্যান্ড্রয়েড ব্যাকআপ ফর্ম্যাটে সমস্ত অ্যাপ্লিকেশন ডেটা রয়েছে। মূলত এটি একটি সংকুচিত টার ফাইল। এই পৃষ্ঠাটি ব্যাখ্যা করে যে আপনি কীভাবে ওপেনএসএসএল এর 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-এ, আমি কীভাবে সিপি কমান্ডকে তাদের আমার ল্যাপটপে (ম্যাক) এ সংরক্ষণ করতে বলব? আপনি যদি বিজয়ের উদাহরণ দেন তবে আমি এটিও জানতে চাই এবং এটি অনুবাদ করব। ধন্যবাদ।
জেরার্ড

10
গুরুত্বপূর্ণ: চলমান adb backup -noapk com.your.packagenameউপর AB ফাইল সংরক্ষণ করতে হবে বর্তমান ডিরেক্টরী , তাই আপনার কাছে সঠিক ডিরেক্টরির মধ্যে নেভিগেট আছে করতে (যেমন cd Desktop..)
Menelaos Kotsollaris

6
নোট করুন যে আপনার অ্যাপ্লিকেশনটি android:allowBackup="false"ম্যানিফেস্টের মাধ্যমে ব্যাকআপগুলি অক্ষম করে রাখলে ব্যাকআপ পদ্ধতির একটি খালি ব্যাকআপ পাওয়া যাবে ।
টম

130

আপনি যদি অ্যান্ড্রয়েড স্টুডিও 3.0.০ বা তারপরের সংস্করণ ব্যবহার করছেন তবে এই পদক্ষেপগুলি অনুসরণ করুন।

  1. ক্লিক করুন দেখুন > টুল উইন্ডোজ > ডিভাইস ফাইল এক্সপ্লোরার
  2. ডেটা / ডেটা / ডেটা / [প্যাকেজ-নাম] নোডগুলি প্রসারিত করুন ।

আপনি কেবল প্যাকেজগুলি প্রসারিত করতে পারবেন যা অ-রুটযুক্ত ডিভাইসে ডিবাগ মোডে চলে।

অ্যান্ড্রয়েড স্টুডিও 3.0 এ অনুসরণ করা পদক্ষেপগুলি


1
আমি এই ডকের কোনও জিনিস দেখতে পাচ্ছি না। এবং আমাকে কিছুই দেখাবে না। তুমি কি জানো সমস্যা কি?
মাহদী আজাদবার

1
এটি কেবলমাত্র ডিবাগ-মোডে কাজ করে, রিলিজ-বিল্ডগুলির জন্য নয়
এটি

ফাইল সিস্টেমটি দেখার জন্য নো-পিটা উপায়টি দেখানোর জন্য আপনাকে ধন্যবাদ!
লেন্সফ্লেয়ার

সংস্করণে আমার বিকল্প আছে বলে মনে হয় না 3.0.1, এটি কি সরানো হয়েছে?
কোডিংলে

1
এটা সত্যিই দারুন. আশা করি আমি কিছুক্ষণ আগে এটি জানতাম।
চেকমেট 711

59

রুট এক্সপ্লোরার অ্যাপ্লিকেশন ব্যবহার করে আপনি ডিবি আনার চেষ্টাও করতে পারেন। এবং যদি এটি কাজ না করে তবে আপনি এটি চেষ্টা করতে পারেন:

  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. ডিগ্রি ভিউ এক্সিলিপসে খুলুন এবং সেখান থেকে আপনার পছন্দসই ফাইলটি পেতে 'ফাইল এক্সপ্লোরার' খুলুন

এর পরে আপনার রুটযুক্ত ডিভাইসে ফাইলগুলি ব্রাউজ করতে সক্ষম হওয়া উচিত।


2
আমি মনে করি রুট এক্সপ্লোরেশন অ্যাপ্লিকেশন কেবল রুটযুক্ত ফোনের জন্যই কাজ করে। আমি দ্বিতীয় পদ্ধতিটি চেষ্টা করব
নবীন প্রিন্স পি

5
Chmod

@ বোফ্রেডো আমি মনে করি এটি কারণ এটি আপনার ফোনটি মূল নয়। আপনার আপনার ফোনটি রুট করা উচিত এবং তারপরে এটি চেষ্টা করা উচিত
শেরাজ আহমেদ খিলজি

1
@ মাহেমাধী হ্যাঁ আপনাকে সম্ভবত প্রতিটি কমান্ডের জন্য এই কমান্ডটি ম্যানুয়ালি চালাতে হবে কারণ সমস্ত ডিরেক্টরিতে তাদের ব্যক্তিগত রয়েছে এমন অনুমতি রয়েছে।
শেরাজ আহমেদ খিলজি

1
@ বিবেকচভদা হ্যাঁ তাদের জন্য মূলযুক্ত ফোনটি দরকার
শেরাজ আহমদ খিলজি

21

উপরের যে কোনওটি করতে (যেমন আপনার ফোনের মধ্যে থেকেই সুরক্ষিত ফোল্ডারগুলি অ্যাক্সেস করতে পারেন), আপনাকে এখনও মূলের প্রয়োজন। (এর মধ্যে / ডেটা ফোল্ডারে মাউন্ট-অনুমতি পরিবর্তন এবং এটি অ্যাক্সেস অন্তর্ভুক্ত)

রুট ব্যতীত কোডের মাধ্যমে আপনার অ্যাপ্লিকেশনটি বাদ দিয়ে /dataসরাসরি পড়তে সরাসরি অ্যাক্সেস করা সম্ভব নয়। সুতরাং আপনি সেই ফাইলটি এসডিকার্ডে বা অন্য কোথাও অ্যাক্সেসযোগ্য অনুলিপি করে দেখতে চেষ্টা করতে পারেন এবং তারপরে আপনার এটিকে স্বাভাবিকভাবে অ্যাক্সেস করতে সক্ষম হওয়া উচিত।

আপনার যদি বিকাশকারী ডিভাইস থাকে তবে রুটিং আপনার ওয়্যারেন্টি বাতিল করবে না। আমি দুঃখিত, আফাইক ছাড়া আর কোনও উপায় নেই।


আমি কোনও বিকাশকারী ডিভাইস ব্যবহার করছি না। খনিটি এক্স্পেরিয়া ইউ
নবীন প্রিন্স পি

আমি কি chmode কমান্ড দিয়ে ডেটা ফোল্ডারের ব্যবহারকারীর অনুমতি সম্পাদনা করতে পারি?
নবীন যুবরাজ পি

পুরো পার্টিশনটি কেবল পঠনযোগ্য হিসাবে মাউন্ট করা হয়েছে। আমি বলব আপনার সেরা বাজি adb pullনীচের উত্তরে বর্ণিত হিসাবে হবে ।
অনিরুধ রমনাথন

অ্যাপ্লিকেশন এটি অনুমতি দেয় আমি সম্ভব। ডিরেক্টরিগুলির সকলের জন্য এক্স অনুমতি রয়েছে (তবে প্রত্যেকের জন্য কোনও আর নেই, সুতরাং আপনাকে পথটি জানতে হবে)। এর চেয়ে বেশি নির্ভর করে যে অ্যাপ্লিকেশনটি ফাইলকে বিশ্বের অ্যাক্সেসযোগ্য করেছে কিনা on কিছু ফাইল হ'ল, বেশিরভাগটি নয়।
জানু হুডেক

প্রথমে আপনি বলছেন এটি পড়া অসম্ভব, তারপরে আপনি ফাইলটি অন্য কোথাও অনুলিপি করার পরামর্শ দিয়েছেন। তবে, কোনও ফাইল প্রথম স্থান না পড়ে এটি কীভাবে অনুলিপি করবেন? আমি মনে করি এই উত্তরটির বগী।
অবধি

13

/data/data/package.name/databases/fileএকটি অপ্রয়োজনীয় অ্যান্ড্রয়েড 5.0+ ডিভাইসে আপনার ডিবাগযোগ্য অ্যাপ্লিকেশন ফোল্ডার থেকে কোনও ফাইল টানানোর সবচেয়ে সহজ উপায় (কেবল একটি সহজ পদক্ষেপ) হ'ল এই আদেশটি ব্যবহার করে:

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

12
  1. আপনার কমান্ড প্রম্পট খুলুন
  2. ডিরেক্টরিতে ই তে পরিবর্তন করুন: \ Android \ adt-bundle-Windows-x86_64-20140702 \ adt-bundle-Windows-x86_64-20140702 d sdk \ প্ল্যাটফর্ম-সরঞ্জাম
  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

সূর্যগ্রহণে ফাইল এক্সপ্লোরার ব্যবহার করুন। উইন্ডোজ => প্রদর্শন প্রদর্শন => অন্যান্য ... => ফাইল এক্সপ্লোরার নির্বাচন করুন।

আর একটি উপায় হ'ল অ্যাডবির মাধ্যমে ফাইলটি টানুন:

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

5

আমারও একবার একই সমস্যা হয়েছিল। অ্যাডবি শেল বা রুটিং ডিভাইস ব্যতীত অ্যান্ড্রয়েড ডিভাইসের মধ্যে সরাসরি ফাইল অ্যাক্সেস করার উপায় নেই।

এখানে দুটি বিকল্প রয়েছে:

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/DatediaManager_for_Android


5

অ্যান্ড্রয়েড থেকে ডেস্কটপে ব্যাকআপ নিতে

কমান্ড লাইনটি সেমিডির ওপেন করুন এবং এটি চালান: adb ব্যাকআপ -f সি: \ ইন্টেল \ xxx.ab -noapk your.app.package । পাসওয়ার্ড প্রবেশ করবেন না এবং আমার ডেটা ব্যাকআপ এ ক্লিক করুন। ড্রাইভ সি রুটে সংরক্ষণ না করার বিষয়টি নিশ্চিত করুন। আপনাকে অস্বীকার করা যেতে পারে। এই কারণেই আমি সি: \ ইন্টেল এ সঞ্চয় করেছি।

* .Ab ফাইলটি বের করতে

  1. এখানে যান এবং ডাউনলোড করুন: https://sourceforge.net/projects/adbextractor/
  2. ডাউনলোড করা ফাইলটি এক্সট্রাক্ট করুন এবং আপনি যে ফোল্ডারটি সরিয়ে নিয়েছেন সেটিতে নেভিগেট করুন।
  3. এটি আপনার নিজের ফাইলের নাম দিয়ে চালান: জাভা-জার আবে.জার আনপ্যাক সি: \ ইন্টেল \ xxx.ab সি: \ ইন্টেল \ xxx.tar

1
এটি একটি দুর্দান্ত উত্তর, ধন্যবাদ। শাওমি ডিভাইসে (.ব্যাক এক্সটেনশন সহ) তৈরি করা একক অ্যাপ্লিকেশন ব্যাকআপ বের করার জন্য আমার পক্ষে কাজ করেছেন। কোনও রুট করার দরকার নেই
রাশিয়ান

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 অজানা ডিরেক্টরিটি ফিরে আসবে। Chmod কমান্ডটি / ডেটা / ডেটা / * এ পরিবর্তন করার ফলে ইন্টেলিজের ডিডিএমএস থেকে ডেটা ডিরেক্টরিতে সমস্ত সাবফোল্ডার অ্যাক্সেস পেয়েছিল। আমি ধরে নিই যে একই সমাধানটি এক্সিলিপ ডিডিএমএসের ক্ষেত্রে সত্য।

আপডেট করুন , আমি যা খুঁজে পেয়েছি তা আজব। আমি ইন্টেলিজজে (অ্যান্ড্রয়েড ডিভাইস মনিটর) -এ ডিডিএমএস ব্যবহার করে একটি নেক্সাস 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/*

এই সমাধানটি কাজ করেছিল বলে মনে হয়েছিল তবে কেবলমাত্র নির্দিষ্ট ফোল্ডারে। আমি এখন আমার মাইএপ ফোল্ডারটি প্রসারিত করতে পারি, তবে এতে ফাইল ডিরেক্টরিটি প্রসারিত করতে পারি না।

এই মুহুর্তে, আমি কিছুক্ষণের জন্য খেলেছি তখন বুঝতে পেরেছি কেন এই ওয়াইল্ডকার্ড এন্ট্রিগুলি চেষ্টা করার চেয়ে আমার যে ডিরেক্টরিটি প্রয়োজন তা কেবল চেষ্টা করে দেখছি না।

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

অনুসরণ করেছেন:

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

এই কমান্ডগুলি আমাকে আমার অ্যাপের ডিরেক্টরিতে ফাইলগুলি প্রসারিত করতে এবং দেখার অনুমতি দেয় যাতে .csv সঠিকভাবে সংরক্ষণ করা হচ্ছে saved

আশা করি এটি কাউকে সাহায্য করবে। আমি এই সাথে কয়েক ঘন্টা সংগ্রাম করেছি!

(এই বিষয়ে আরও বাড়াতে যৌক্তিকরূপে, অদ্ভুতভাবে যথেষ্ট পরিমাণে, অনুমতিগুলি ফাইল ডিরেক্টরিতে পাস করা .csv ফাইলের কাছে যায় নি my আমার ফাইল ডিরেক্টরি ডিরেক্টরি অনুমতিগুলি drwxrwxrwx এবং আমার লগ-সিএসভি ফাইলের অনুমতিগুলি পড়বে -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মেনুতে অপশনটি দেখতে পান না তাদের জন্য : অ্যান্ড্রয়েড স্টুডিওতে / অ্যান্ড্রয়েড-ডিরেক্টরি খুলতে ভুলবেন না। উদাহরণস্বরূপ, নেটিভ ব্যবহারকারীরা তাদের প্রকল্প-ফোল্ডারের ভিতরে / আইওস-ডিরেক্টরি হিসাবে একই স্তরে থাকে have


1

একটি সহজ উপায় হ'ল এসডি-কার্ডে আপনার ডাটাবেস তৈরি করা। কারণ আপনি নিজের ফোনটি রুট না করে আপনি অভ্যন্তরীণ মেমরির মাধ্যমে আপনার ফোনের ডেটা ফোল্ডারে অ্যাক্সেস পেতে পারবেন না। সুতরাং কেন কেবল এসডি-কার্ডে আপনার ডাটাবেস তৈরি করবেন না।

তদতিরিক্ত, আপনি যদি চান তবে কোনও রুট ছাড়াই আপনার বিদ্যমান ডাটাবেস ফাইলটি (অভ্যন্তরীণ মেমরি থেকে) বাহ্যিক মেমরিতে অনুলিপি করতে কিছু ফাইল অনুলিপি কোড লিখতে পারেন।


এটা কিভাবে করতে হবে? কীভাবে আমি এসডকার্ডে একটি ডিবি তৈরি করতে পারি
নবীন প্রিন্স পি

এই পদ্ধতিটি আপনাকে এসডি-কার্ডে ডাটাবেস তৈরি করতে সহায়তা করবে। কেবল Fileএসডি-কার্ডের দিকে নির্দেশ করার একটি পথ সরবরাহ করুন এবং আপনি যেতে ভাল
ওয়াকসলাম 20

1

আপনার এই প্রশাসনিক অধিকার প্রয়োজন এই ফোল্ডার অ্যাক্সেস হতে পারে।

সুতরাং আপনার কাছে দুটি বিকল্প রয়েছে: -

  1. আপনার ডিভাইসটি রুট করুন এবং তার চেয়ে এই ফোল্ডারটি অ্যাক্সেস করার চেষ্টা করুন
  2. এমুলেটর ব্যবহার করুন

PS: আপনি যদি উপরের দুটি বিকল্পগুলির মধ্যে কোনও ব্যবহার করে থাকেন তবে এই পদক্ষেপগুলি অনুসরণ করে আপনি এই ফোল্ডারটি অ্যাক্সেস করতে পারবেন

ডিডিএমএসের দৃষ্টিকোণটি খুলুন -> আপনার ডিভাইস -> (ডান উইন্ডো অপশন থেকে ফাইল এক্সপ্লোরার নির্বাচন করুন) প্যাকেজ -> ডেটা -> ডেটা -> প্যাকেজের নাম -> ফাইল নির্বাচন করুন

এবং সেখান থেকে আপনি আপনার ফাইলটি টানতে পারেন


1

adb backupআমার পক্ষে কাজ করেনি, তাই আমি যা করেছি তা এখানে (শাওমি রেডমি নোট 4 এক্স, অ্যান্ড্রয়েড 6.0):
1. সেটিংস> অতিরিক্ত সেটিংস> ব্যাকআপ এবং পুনরায় সেট করুন> স্থানীয় ব্যাকআপগুলিতে যান
2. স্ক্রিনের নীচে 'ব্যাক আপ' আলতো চাপুন।
৩. 'সিস্টেম' এবং 'অ্যাপস' চেকমার্কগুলি আনচেক করুন।
৪. অ্যাপ্লিকেশন নির্বাচনের স্ক্রিনে নেভিগেট করতে 'অ্যাপস' সেলটির ডানদিকে বিশদ প্রকাশ বোতামটি আলতো চাপুন।
৫. পছন্দসই অ্যাপ নির্বাচন করুন এবং ঠিক আছে আলতো চাপুন।
The. ব্যাকআপটি শেষ হওয়ার পরে, আসল ফাইলটি কোনওভাবেই অবস্থিত হওয়া দরকার। আমার / এমআইইউআই / ব্যাকআপ / অলব্যাকআপ / _FOLDER_NAMED_AFTER_BACKUP_CREATION_DATE_ এ পাওয়া যাবে ।
Then. এরপরে আমি রনটিএলভি দ্বারা এই উত্তর থেকে পদক্ষেপগুলি অনুসরণ করেছিব্যাকআপ ফাইলটি (আমার ক্ষেত্রে বাক।) রূপান্তর করতে (মূল উত্তর থেকে সদৃশ):
"
ক) এখানে যান এবং ডাউনলোড করুন: https://sourceforge.net/projects/adbextractor/
খ) ডাউনলোড করা ফাইলটি বের করুন এবং যেখানে আপনি
সরিয়েছেন সেই ফোল্ডারে নেভিগেট করুন c গ) আপনার নিজের ফাইলের নাম দিয়ে এটি চালান: জাভা-জার আবে.জার আনপ্যাক সি: \ ইন্টেল \ এক্সএক্সএক্সএক্স সি: l ইন্টেল \ xxx.tar
"


0

আপনি এই ডিবি ফাইলটি এক্সপ্লোর এক্সপ্লোরার (যেমন: এসডিকার্ড বা পিসি) এর কোথাও অনুলিপি করতে পারেন এবং আপনি এই ডিবি ফাইলটি অ্যাক্সেস এবং আপডেট করতে স্ক্লাইট ব্যবহার করতে পারেন।


0

প্রশ্নটি হল: অ্যান্ড্রয়েড-ডিভাইস-এ-অ্যাক্সেস-ডেটা-ডেটা-ফোল্ডার-এ কীভাবে?


যদি অ্যান্ড্রয়েড-ডিভাইসটি ব্লুস্ট্যাকস হয় * রুট ব্রাউজার এপিকে ডেটা / ডেটা / .. দেখায়


Https://apkpure.com/root-browser/com.jrummy.root.browserfree থেকে রুট ব্রাউজারটি ডাউনলোড করার চেষ্টা করুন


ফাইলটি যদি কোনও পাঠ্য ফাইল হয় তবে আপনাকে "ওপেন হিসাবে", "পাঠ্য ফাইল", "হিসাবে খুলুন", "আরবি পাঠ্য সম্পাদক" এ ক্লিক করতে হবে


0

আপনি এসডি কার্ড ফোল্ডারে ফাইলটি অনুলিপি করার চেষ্টা করতে পারেন, এটি একটি সর্বজনীন ফোল্ডার, তারপরে আপনি ফাইলটি আপনার পিসিতে অনুলিপি করতে পারেন যেখানে আপনি স্ক্লাইট ব্যবহার করতে পারবেন access

এখানে কিছু কোড যা আপনি পাবলিক স্টোরেজ ফোল্ডারে ডেটা / ডেটা থেকে ফাইলটি অনুলিপি করতে ব্যবহার করতে পারেন:

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

এসকিউএলাইট ডাটাবেসটি ব্যবহারকারীর ফোনে সংরক্ষণ করা হয় এবং এটি পথের নিচে লুকিয়ে রয়েছে:

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

আপনার এখানে 2 টি বিকল্প রয়েছে:

  1. আপনি আপনার ফোনটি রুট করতে পারেন যাতে আপনার হিডিং ডিবি 3 ফাইলটি দেখতে অ্যাক্সেস পান
  2. এটি সমাধান নয়, চারপাশের কাজ। কেন কেবল সেই পরীক্ষামূলক পৃষ্ঠা তৈরি করবেন না যা এতে 'নির্বাচন করুন' স্ট্যাটমেন্ট ব্যবহার করে এতে আপনার ডাটাবেস টেবিলটি প্রদর্শন করে।
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.