2009-02-08 19 views
24

मैं सोच रहा था कि यूआरएल डाउनलोड करने का इरादा क्या है? ब्राउज़र में, यह एक छोटी अधिसूचना आइकन के साथ सामान डाउनलोड करेगा। मैं सोच रहा था कि क्या मैं उस इरादे का उपयोग कर सकता हूं (और यह क्या है)।एंड्रॉइड डाउनलोड इरादा

+0

मुझे ईमानदारी से पता नहीं है कि आप यहां क्या पूछ रहे हैं, कृपया स्पष्ट करें। –

+0

इस पुराने प्रश्न की समीक्षा करने के लिए - यह एक निजी मंशा है। एओएसपी में DownloadManager को देखो। –

+0

क्या आपके पास इस DownloadManager को कॉल करने के तरीके पर कोई लिंक/गाइड/स्रोत है? और, यह निजी है कि यह हमारे लिए उपयोग योग्य नहीं है, क्या आपको फ़ाइल डाउनलोड करने के तरीके पर कुछ प्रकार का विकल्प मिला? – TiGer

उत्तर

58

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

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

यहां आपके द्वारा किसी यूआरआई डाउनलोड कर सकते हैं:

DownloadManager.Request r = new DownloadManager.Request(uri); 

// This put the download in the same Download dir the browser uses 
r.setDestinationInExternalPublicDir(Environment.DIRECTORY_DOWNLOADS, "fileName"); 

// When downloading music and videos they will be listed in the player 
// (Seems to be available since Honeycomb only) 
r.allowScanningByMediaScanner(); 

// Notify user when download is completed 
// (Seems to be available since Honeycomb only) 
r.setNotificationVisibility(DownloadManager.Request.VISIBILITY_VISIBLE_NOTIFY_COMPLETED); 

// Start download 
DownloadManager dm = (DownloadManager) getSystemService(DOWNLOAD_SERVICE); 
dm.enqueue(r); 

अधिसूचना को अनुकूलित, डाउनलोड राज्य लगाने और उन्हें डाउनलोड स्थान स्थापित करने के लिए अन्य विकल्पों में से एक गुच्छा रहे हैं।

This blog post दिखाता है कि आप छुपे हुए एपीआई के माध्यम से एंड्रॉइड के पिछले संस्करणों पर डाउनलोड मैनेजर का उपयोग कैसे कर सकते हैं।

+0

एंड्रॉइड 4.4 पर यह हमेशा "असफल डाउनलोड" क्यों दिखाता है? –

0

सभी एंड्रॉइड इंटेंट्स पर here देखें।

+0

यह अच्छा है लेकिन कोई भी ऐसा नहीं है जो डाउनलोड शुरू करता है (शायद ब्राउज़र एक, मैं कोशिश करूँगा)। फिर भी धन्यवाद। –

+0

नहीं, ब्राउज़र कोई काम नहीं करता है - वैसे भी धन्यवाद। मुझे इसे मैन्युअल रूप से करना पड़ सकता है। –

+0

@MBober: यह मेरे लिए काम कर रहा है ... – GregD

2

आप क्या करने की कोशिश कर रहे हैं? यदि आपका ऐप फ़ाइल डाउनलोड करना चाहता है तो आप UrlConnection कोड का उपयोग कर सकते हैं। यदि आप एक पैकेज डाउनलोड करना चाहते हैं तो ACTION_PACKAGE_INSTALL आपको जो चाहिए वो करना चाहिए।

+0

मुझे पता है, लेकिन ब्राउज़र एक डाउनलोड है - अधिसूचना - thingy और मैंने सोचा कि अगर यह एक सार्वजनिक आशय मैं सिर्फ उसका उपयोग कर सकता था। मुझे लगता है मुझे इसे मैन्युअल रूप से करना होगा। धन्यवाद, इसहाक –

+3

मुझे एहसास है कि यह पुराना है, लेकिन यह स्वीकार्य उत्तर सबसे अच्छा जवाब नहीं है, और ईमानदारी से वास्तव में कोई जवाब नहीं पूछा जा रहा है। इसके बजाए, उच्च रेटेड "सही" उत्तर नीचे अलेक्जेंड्रे जैस्मीन से है। – Josh

17

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

अपने कोड ट्रिगर

new Intent(Intent.ACTION_VIEW, Uri.parse(url)) 

से

तो और इस से चलाता ब्राउज़र में एक डाउनलोड की उम्मीद है।

+0

ब्राउज़र के साथ यह डाउनलोड, लेकिन बिना किसी प्रगति पट्टी या उपयोगकर्ता प्रतिक्रिया के - मुझे केवल एक पूर्ण अधिसूचना डाउनलोड मिलती है। –

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