दिलचस्प पोस्ट
पॉइंटर को सरणी c ++ मैं एपीआई के माध्यम से गूगल ड्राइव पर फाइल कैसे बना / बना / डालने करूँ? कैसे ListView एंड्रॉइड अनुप्रयोग में केंद्र पर पाठ सेट करने के लिए? एंड्रॉइड – एक अधिसूचना बनाएं, टास्कस्टैकिबलर। एडपरचर स्टैक काम नहीं कर रहा है http: //10.0.2.2 एंड्रॉइड एमुलेटर पर काम करता है, लेकिन एयूएमलेटर के रूप में इस्तेमाल किया एंड्रॉइड डिवाइस पर नहीं क्यों LINQ है। जहां (बिंदू)। पहले () से तेज। पहले (निश्चय)? विज़ुअल सी ++ 2008 में एक यूटीएफ -8 स्ट्रिंग कैसे बनाऊं सी ++ 11 में, क्या `i + = ++ i + 1` का प्रदर्शन अनिर्धारित व्यवहार करता है? ग्राहक इकाई के लिए विशेषताएं जोड़ना HTML में प्रदर्शित करने के लिए ऊपर / नीचे त्रिकोण (बिना स्टेम के तीर) के लिए कौन-से पात्रों का उपयोग किया जा सकता है? जेएसएएन के साथ एचटीपी 415 असमर्थित मीडिया प्रकार त्रुटि ImageMagick कमांड लाइन ऑप्शन ऑर्डर (और कमांड लाइन पैरामीटर के श्रेणियाँ) कैसे एंड्रॉइड में सर्किल कस्टम प्रगति पट्टी बनाने के लिए यदि html <img> के src विशेषता को मान्य नहीं है, तो एक डिफ़ॉल्ट छवि को निविष्ट करना? रेलवे के बीच ActiveRecord तिथि

फोनगैप InAppBrowser प्रदर्शन पीडीएफ 2.7.0

मैं एंड्रॉइड में PhoneGap InAppBrowser के साथ एक बाहरी पीडीएफ प्रदर्शित करना चाहता हूं, लेकिन यह काम नहीं कर रहा है।

यह मेरा जेएस कोड है:

<script> function openPDF() { var ref = window.open('http://www.i-drain.net/userfiles/file/einbauanleitung_iboard.pdf', '_blank', 'location=yes'); ref.addEventListener('loadstart', function(event) { alert('start: ' + event.url); }); ref.addEventListener('loadstop', function(event) { alert('stop: ' + event.url); }); ref.addEventListener('loaderror', function(event) { alert('error: ' + event.message); }); ref.addEventListener('exit', function(event) { alert(event.type); }); } </script> 

मैं एक छवि पर क्लिक करने के बाद पीडीएफ खोलना चाहता हूं ताकि मैं इस एचटीएमएल कोड का उपयोग कर सकूं:

  <a href="#" onclick="openPDF()" > <img src="images/button.png"> </a> 

Solutions Collecting From Web of "फोनगैप InAppBrowser प्रदर्शन पीडीएफ 2.7.0"

जो इस समस्या से जुड़ी हुई है, वह सभी के लिए जो मैंने अंत में पाया है:

एचटीएमएल 5 ऑब्जेक्ट टैग: काम नहीं कर रहा है

एंबेडेड टैग: काम नहीं कर रहा है

childbrowser प्लगइन: मुझे लगता है कि यह काम करेगा, लेकिन यह 2.0.0 संस्करण के लिए डिज़ाइन किया गया है। तो आपको बहुत सारी त्रुटियां मिल जाएंगी, इसलिए मुझे इसे काम करने के लिए नहीं मिला।

PhoneGap InAppViewer: यदि आप इसे इस तरह प्रयोग करते हैं:

 window.open('http://www.example.com/test.pdf', '_blank', 'location=yes') 

यह काम अभ्यस्त InAppViewer पीडीएफ खोल नहीं सकता, पीडीएफ बाहरी या स्थानीय संग्रहीत है, तो यह कोई फर्क नहीं पड़ता।

मेरे समाधान अब तक (नहीं वास्तविक विचार क्या था):

आप _system के साथ विंडो फ़ंक्शन को कॉल कर सकते हैं उसके जैसा:

 window.open('http://www.example.com/test.pdf', '_system', 'location=yes') 

यह सामान्य ब्राउज़र में पीडीएफ खोल देगा और इसे डाउनलोड करेगा। डाउनलोड करने के बाद यह पूछेगा कि उसे पीडीएफ व्यूअर के साथ खोलना चाहिए। लेकिन आपको अपने ऐप पर वापस जाना होगा और इसके बाद इसे फिर से खोलना होगा।

एक और संभावना यह होगी कि आप इसे अपने एसडीसीडी फोनगैप फाइलसिस्टम एपीआई के साथ डाउनलोड कर लें।

 var fileTransfer = new FileTransfer(); fileTransfer.download( "http://img.hiwab.com/javascript/ics-android.png", "file://sdcard/ics-android.png", function(entry) { alert("download complete: " + entry.fullPath); }, function(error) { alert("download error source " + error.source); alert("download error target " + error.target); alert("upload error code" + error.code); }); 

आखिरी बात यह है कि Google डॉक्स / ड्राइव का उपयोग करने के लिए इसे Google डॉक्स से जुड़े इनपैव्यूयर के साथ खोलने के लिए है:

 document.addEventListener("deviceready", onDeviceReady, false); function onDeviceReady() { window.open('https://docs.google.com/viewer?url=http://www.example.com/test.pdf&embedded=true', '_blank', 'location=yes'); ref = window.open('index.html', '_self'); } 

यह ऐप में पीडीएफ को Google डॉक्स पर देखेगा। आप यहां अपना परिमार्जन जनरेट कर सकते हैं: https://docs.google.com/viewer यहां तक ​​कि अगर आप अपनी पीडीएफ फाइल बदलते हैं, तो यह अभी भी काम करेगा

मुझे उम्मीद है कि यह सारांश आपको समय बचाने में मदद करेगा। अगर एक और समाधान मुझे पता है

एंड्रॉइड के पास अपने ब्राउज़र में कोई देशी पीडीएफ दर्शक क्षमता नहीं है (आईओएस सफारी के विपरीत) जहाँ तक मैं देख सकता हूँ वहां दो अच्छे विकल्प हैं:

  1. पूरी तरह से डाउनलोड करना छोड़ें और Google डॉक व्यूवर की ऑनलाइन दृश्य क्षमताओं के माध्यम से पीडीएफ दिखाएं, जैसा कि इस स्टैक ओवरफ्लो उत्तर में बताया गया है

  2. DO फ़ाइल को डाउनलोड करें और एंड्रॉइड फोनगैप ऐप के लिए FileOpener प्लगइन का उपयोग करें जैसा कि इस स्टैक ओवरफ्लो उत्तर में समझाया गया है। यह या तो संस्थापित पीडीएफ रीडर में फाइल खोल देगा या विकल्प के साथ उपयोगकर्ता को पेश करेगा।

मैंने आईओएस पर पीडीएफ डाउनलोड करने और दिखाने के बारे में कुछ चीजें लिखी हैं और इन विकल्पों को मैंने एंड्रॉइड फोनगैप डेवलपर्स के लिए अपने ब्लॉग पोस्ट में दिखाया है।

इस तरह से प्रयास करें कि यह काम करेगा

 var ref = window.open('http://docs.google.com/viewer?url=http://www.i-drain.net/userfiles/file/einbauanleitung_iboard.pdf', '_system', 'location=yes'); 

मार्क स्टर का उत्तर बहुत व्यापक है। हालांकि, Google डॉक्स के साथ पीडीएफ खोलने के लिए उपयोगकर्ता को अपने Google खाते से लॉग इन करने की आवश्यकता होती है।

यदि आप ऐसे पीडीएफ प्रदर्शित कर रहे हैं जो एक ऐसे सर्वर पर स्थित हैं जो आपकी खुद की है तो आप इसे से बच सकते हैं और निम्न दृष्टिकोण का उपयोग कर सकते हैं: आप अपने सर्वर पर PDF.js लाइब्रेरी सेटअप कर सकते हैं। यह ओपन सोर्स प्रोजेक्ट है जो वेब ब्राउज़र में पीडीएफ देखने के लिए भी गूगल डॉक्स आधारित है।

आप तब अपने सर्वर पर सिर करने के लिए InAppBrowser प्लगइन का उपयोग कर सकते हैं, जहां PDF.js झूठ है, URL में प्रदर्शित करने के लिए पीडीएफ के लिए एक पथ निर्दिष्ट कर रहा है। सीओआरएस मुद्दे होने से बचने के लिए, पीडीएफ आपके सर्वर पर भी होना चाहिए। यदि यह एक बाहरी पीडीएफ है, तो आप एक वैकल्पिक हल लिख सकते हैं, जैसा कि यहां बताया गया है ।

आप पीडीएफ क्लाइंट पक्ष को इसके समान कोड के साथ प्रदर्शित कर सकते हैं (InAppBrowser प्लगइन का उपयोग करके)

 var fileName = "myPdfOnMyServer.pdf"; var url = encodeURIComponent('files/uploads/' + fileName); var ref = window.open( 'https://www.<my website>.com/pdfjs-1.0.10XX-dist/web/viewer.html?file=' + url, '_blank', 'location=no,closebuttoncaption=Close,enableViewportScale=yes'); 

एंड्रॉइड वेबव्यू में पीडीएफ व्यूअर का अंतर्निहित नहीं है उपयोगकर्ता को Google डॉक दर्शक उदाहरण के लिए रीडायरेक्ट करें: http://docs.google.com/viewer?url=http://example.com/example.pdf

निम्न चरणों का उपयोग कर यूआरएल से किसी प्रकार के दस्तावेज खोलने की कोशिश करें:

  • इस प्लगइन को इंस्टॉल करें: कॉर्डोवा प्लगइन जोड़ https://github.com/ti8m/DocumentHandler
  • इस कोड का उपयोग करें:

    (error == 53) {console.log ('कोई भी ऐसा एप्लिकेशन जो इस फ़ाइल को संभालता है) को संभालता है; टाइप करें। ');}},' http://www.example.com/path/to/document.pdf ');

यह मेरे लिए एंड्रॉइड और आईओएस पर काम करता है। मैंने इसे खुली छवियों और पीडीएफ फाइलों के लिए इस्तेमाल किया था

एंड्रॉइड : यदि उपलब्ध है, तो सिस्टम ऐप्स का उपयोग करके फ़ाइलें खुल जाती हैं, अन्यथा यह एक त्रुटि देता है, जिसे आप संभाल सकते हैं

आईओएस : यह पॉपअप में फ़ाइलें खोलता है जैसे कि डोन बटन और ऑप्शन बटन के साथ दिखाई देता है।

यह आपके दस्तावेज़ यूआरएल नहीं दिखाता है

स्रोत यहां उपलब्ध है: https://github.com/ti8m/DocumentHandler

मैंने इसे एचटीएमएल की एक ही फाइल में स्क्रिप्ट होने की कोशिश की और उसने मेरे लिए काम किया, केवल एक ही बदलाव यह था कि मैंने छवि पर "alt" विशेषता को जोड़ा है:

  <html lang="en"> <head> <meta charset="utf-8" /> <title></title> </head> <body> <a href="#" onclick="openPDF()" > <img alt="aaa" src="images/button.png"> </a> </body> </html> <script> function openPDF() { var ref = window.open('http://www.i-drain.net/userfiles/file/einbauanleitung_iboard.pdf', '_blank', 'location=yes'); ref.addEventListener('loadstart', function(event) { alert('start: ' + event.url); }); ref.addEventListener('loadstop', function(event) { alert('stop: ' + event.url); }); ref.addEventListener('loaderror', function(event) { alert('error: ' + event.message); }); ref.addEventListener('exit', function(event) { alert(event.type); }); } </script> 
 function openPDF() { var ref = window.open('http://docs.google.com/viewer?url=http://www.i-drain.net/userfiles/file/einbauanleitung_iboard.pdf', '_system', 'location=yes'); ref.addEventListener('loadstart', function(event) { alert('start: ' + event.url); }); ref.addEventListener('loadstop', function(event) { alert('stop: ' + event.url); }); ref.addEventListener('loaderror', function(event) { alert('error: ' + event.message); }); ref.addEventListener('exit', function(event) { alert(event.type); }); }