2013-03-10 9 views
20

मैंने अपने फोन पर एक एंड्रॉइड ऐप इंस्टॉल किया है जिसे मैंने जावा पर बनाया है। ऐप को डिवाइस पर सफलतापूर्वक इंस्टॉल किया गया है लेकिन मैं उस पैकेज को ढूँढने में सक्षम नहीं हूं जहां उसने इंस्टॉल किया है।फ़ोन पर एंड्रॉइड ऐप पैकेज इंस्टॉल हो जाता है

इंस्टॉल किए गए एप्लिकेशन का मार्ग कैसे ढूंढें? आप अपने एम्यूलेटर के लिए इस फ़ोल्डर डी डी एम एस का उपयोग कर का उपयोग कर सकते

/data/data/"your package name" 

:

+0

प्रोग्रामेटिक रूप से http://stackoverflow.com/questions/5527764/get-application-directory –

उत्तर

30

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

+0

मैं एमुलेटर में स्थापना फ़ाइल ढूंढने में सक्षम हूं। लेकिन इसे वास्तविक डिवाइस में नहीं मिला क्योंकि डिवाइस रूट नहीं हो सकता है। इससे मुझे नीचे दिए गए जैसे फॉलोअप प्रश्नों की ओर अग्रसर किया जाता है: 1) यह जांचने के लिए कि डिवाइस को रूट किया गया है या नहीं 2) मान लीजिए कि डिवाइस रूट नहीं है और मैं अपने कोड में कुछ डीक_PATH = "/ डेटा/डेटा /" + डेटाबेस फ़ोल्डर तक पहुंचने के लिए context.getPackageName() + "/ डेटाबेस /'।क्या यह उस डिवाइस पर काम करेगा जहां मुझे/डेटा/डेटा/"पैकेज नाम" नहीं मिल सकता है – user2129794

+1

आपके पहले सवाल के लिए आप रूट चेकर का उपयोग कर सकते हैं: http://theunlockr.com/2012/06/20/how-to-check- चाहे-आपका-एंड्रॉइड-डिवाइस-रूट-या-नहीं/ http://androidforums.com/rezound-all-things-root/499372-how-now-if-you-rooted.html आपके लिए दूसरा प्रश्न: यदि आप डिवाइस रूट नहीं हैं तो आपके पास इस स्थान तक किसी भी तरह से पहुंच नहीं होगी क्योंकि इस तरह एंड्रॉइड को स्थापित अनुप्रयोगों की जानकारी की रक्षा के लिए डिज़ाइन किया गया है। –

+0

okk ... तो अगर मैं 'DB_PATH ="/डेटा/डेटा/"+ context.getPackageName() +"/डेटाबेस/'जैसे कुछ का उपयोग करता हूं तो यह केवल रूट डिवाइस के लिए काम करेगा, न कि अवांछित के लिए ?? – user2129794

5

एक आवेदन जब एक डिवाइस पर या एक एमुलेटर पर स्थापित पर स्थापित हो जाएगा:

/data/data/APP_PACKAGE_NAME 

APK ही /data/app/ फ़ोल्डर में रखा गया है।

हालांकि, ये पथ सिस्टम विभाजन में हैं और उन्हें एक्सेस करने के लिए, आपको रूट होना आवश्यक है। यह एक डिवाइस के लिए है। एमुलेटर पर, आप इसे फ़ाइल एक्सप्लोरर टैब

वैसे में अपने logcat (डी डी एम एस) में देख सकते हैं, यह केवल पैकेज नाम को package="APP_PACKAGE_NAME" विशेषता के तहत अपने Manifest.XML में परिभाषित किया गया है पता चलता है। ग्रहण में आपके प्रोजेक्ट में आपके द्वारा बनाए गए किसी अन्य पैकेज को यहां दिखाई नहीं दे रहा है।

+0

@ सिद्धार्थ ... मैं एमुलेटर में स्थापना फ़ाइल ढूंढने में सक्षम हूं। लेकिन इसे वास्तविक डिवाइस में नहीं मिला क्योंकि डिवाइस रूट नहीं हो सकता है। इससे मुझे नीचे दिए गए जैसे फॉलोअप प्रश्नों की ओर अग्रसर किया जाता है: 1) यह जांचने के लिए कि डिवाइस को रूट किया गया है या नहीं 2) मान लीजिए कि डिवाइस रूट नहीं है और मैं अपने कोड में कुछ डीक_PATH = "/ डेटा/डेटा /" + डेटाबेस फ़ोल्डर तक पहुंचने के लिए context.getPackageName() + "/ डेटाबेस/'। क्या यह उस डिवाइस पर काम करेगा जहां मुझे/डेटा/डेटा /" पैकेज नाम "नहीं मिल सकता है – user2129794

+0

@ user2129794: यदि आप डेटाबेस को अपने डिफ़ॉल्ट पर संग्रहीत करना चाहते हैं स्थान, आपको उस हिस्से के बारे में चिंता करने की आवश्यकता नहीं है। यहां एक अच्छा ट्यूटोरियल है जो इसे समझाता है: http://www.vogella.com/articles/AndroidSQLite/article.html#overview_sqliteandroid –

+0

@ user2129794 उपयोगकर्ता को यह नहीं दिखाई देगा/डेटा/डेटा फ़ोल्डर बिना रूट के। लेकिन ओएस हमेशा इसके बारे में जानता है। –

1
/data/data/"your app package name " 

लेकिन आप उस पढ़ने में सक्षम अभ्यस्त जब तक आप एक निहित डिवाइस

2

पैकेज यह आत्म /data/app/com.company.appname-xxx.apk के नीचे स्थित है है।

/data/app/com.company.appname केवल एक देशी libs, कैश, ईसीसी की तरह फ़ाइलों को स्टोर करने के लिए बनाया निर्देशिका है ...

आप Context.getPackageCodePath() समारोह कॉल के साथ पैकेज स्थापना पथ प्राप्त कर सकते हैं।

3

सिस्टम ऐप्स इंस्टॉल/सिस्टम/ऐप/या/सिस्टम/निजी-ऐप। अन्य ऐप्स/डेटा/ऐप या/डेटा/प्रीलोड/में स्थापित किए जा सकते हैं।

यूएसबी के साथ अपने एंड्रॉइड मोबाइल से कनेक्ट करें और निम्न आदेश चलाएं। आप सभी स्थापित संकुल देखेंगे।

$ adb shell 

$ pm list packages -f 
1

-> सभी संकुल द्वारा सूची:

adb shell su 0 pm list packages -f 

-> अपने पैकेज का नाम के लिए खोज कुंजियों को पकड़ कर "Ctrl + Alt + f"।

-> एक बार मिला, इसके साथ जुड़े स्थान की तलाश करें।

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