2011-02-23 34 views
9

हमारे एप्लिकेशन का पता लगाएँ ब्लूटूथ इनबॉक्स से कुछ फ़ाइलों को आकर्षित करने के बाद वे एक बाहरी हार्डवेयर डिवाइस से धकेल दिया जाता है की जरूरत है। प्रोग्रामेटिक रूप से ब्लूटूथ फ़ोल्डर स्थान खोजने का कोई तरीका है? गैलेक्सी पर यह /mnt/sdcard/bluetooth है, और इच्छा पर यह /mnt/sdcard/downloads/bluetooth हो रहा है।ब्लूटूथ इनबॉक्स

धन्यवाद!

उत्तर

1

जहां तक ​​मेरा बता सकते हैं, वहाँ API के माध्यम से ऐसा करने के लिए (हालांकि वहाँ होना चाहिए!)

दो समाधान (उपयोग संदर्भ के आधार पर है कि काम कर सकता था कोई सरल और आसान तरीका है, पहले एक लगता है आम तौर पर बेहतर):

  1. स्टार्ट-अप पर, आप चेकों एप्लिकेशन अगर वहाँ एक SharedPreference (जैसे) "bluetoothLocation"। यह, एप्लिकेशन के अंतर्गत खोजों या तो (क) एफएस या नहीं मिल रहा है, तो (ख) एफएस पर/MNT/जब तक यह एक फ़ाइल पाता है (शायद (ख) बेहतर है) निहित ऐसी है कि:

    • name.equals("bluetooth"), और isDirectory()

तो यह पथ की बचत होती है, और वहाँ तुम जाओ। वैकल्पिक रूप से (संदर्भ के आधार पर) आप कर सकते थे,

  1. पहली बार अपने बाहरी उपकरण को जोड़ता है, यह कुछ लंबे, हार्ड-कोडेड (उदा greoermmvemoper190erjvw0j9e2.txt) के साथ एक फ़ाइल भेजता है। फिर आपका ऐप एफएस के माध्यम से खोजता है जब तक कि इसे इस साझा, हार्ड-कोड वाले नाम वाली फ़ाइल नहीं मिलती, और उस स्थान को सहेज लेती है।

ये दोनों सही से दूर हैं, और उनकी व्यवहार्यता आपके संदर्भ पर निर्भर करती है। मैंने सोचा कि मैं इसे वहां फेंक दूंगा। आशा करता हूँ की ये काम करेगा।

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