2010-08-01 12 views
5

पर क्लिक करें मैंने एक ऐसा ऐप्लिकेशन बनाया है जो वेबव्यू का उपयोग कर वेबसाइट लोड करता है। सब ठीक काम करता है सिवाय इसके कि मैं आवेदन के भीतर किसी भी वीडियो फाइलों को चलाने में असमर्थ हूं। इसलिए, जब मैं .mp4 के साथ समाप्त होने वाले लिंक पर क्लिक करता हूं, तो मैं जिस चीज की तलाश में हूं, वह मेरे आवेदन को मेडियाप्लेयर लॉन्च करने के लिए प्राप्त कर रहा है। किसी भी मदद और सुझावों की बहुत सराहना की जाएगी!लिंक पर लॉन्च मेडियाप्लेयर वेबव्यू

+0

आप अपने अनुप्रयोग (एसडीके के वर्ग MediaPlayer.java) के भीतर अपने स्वयं के मीडिया प्लेयर का उपयोग करना चाहते हैं, या आप सिस्टम डिफ़ॉल्ट मीडिया प्लेयर लॉन्च करना चाहते हैं? –

उत्तर

5

आप अपने webViewCient की shouldOverrideUrlLoading विधि ओवरराइड करने के लिए जरूरत है ...

final class MyWebViewClient extends WebViewClient { 
    @Override 
    public boolean shouldOverrideUrlLoading(WebView view, String url) { 
     if (url.endsWith(".mp4") { 
      Intent intent = new Intent("android.intent.action.VIEW", Uri.parse(url)); 
      view.getContext().startActivity(intent); 
      return true; 
     } else { 
      return super.shouldOverrideUrlLoading(view, url); 
     } 
    } 
} 

... है कि आप अपने वेब दृश्य करने के लिए आवंटित:

WebViewClient webViewClient = new MyWebViewClient(); 
webView.setWebViewClient(webViewClient); 

संपादित करें: भी महत्वपूर्ण है कि आप जोड़ें:

webView.getSettings().setAllowFileAccess(true); 

फ़ाइल डाउनलोड/स्ट्रीम जैसे एमपीई की अनुमति देने के लिए 4 फाइलें

+0

त्वरित प्रतिक्रिया के लिए धन्यवाद! मैंने अपने एप्लिकेशन में कोड जोड़ा है और यह त्रुटि के बिना संकलित करता है .. लेकिन जब भी लिंक क्लिक किया जाता है तो यह अभी भी मध्यस्थ लोड नहीं करता है। – Kyle

+0

webView.getSettings()। SetAllowFileAccess (सत्य) जोड़ें; वो सहायता करेगा। मैंने बस इसे अपने कोड में करने की कोशिश की और यह काम करता है। –

+0

हे माथीस, आपकी सभी मदद के लिए बहुत बहुत धन्यवाद! मैं इसे एम्यूलेटर पर काम करने में सक्षम हूं। मैंने अपने फोन पर 2.2 को चलाने वाले ऐप को लोड करने का प्रयास किया और यह वेब ब्राउज़र लॉन्च करता है और फिर बंद हो जाता है, मुझे सीधे मेरे ऐप पर डाल देता है। बिल्कुल कोई वीडियो नहीं मुझे सच में यकीन नहीं है कि क्या गलत हो सकता है, इसके अलावा मैं 1.5 पर एमुलेटर चला रहा हूं। तुम क्या सोचते हो? – Kyle

2

नोट: आप डेटा प्रकार भी सेट करना चाह सकते हैं। यह एंड्रॉइड 4.0 (आइस क्रीम सैंडविच) में कुछ मुद्दों को हल करने के लिए प्रतीत होता है। उदाहरण के लिए:

Intent intent = new Intent(Intent.ACTION_VIEW); 
intent.setDataAndType(Uri.parse(url), "video/*"); 
startActivity(intent);` 
+0

धन्यवाद यह मेरी मदद की –

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