2012-03-28 16 views
0

私はJavascriptとHTMLを使い慣れていません。私はPhoneGapにアプリケーションを構築しています.PDFコンバータは私のプロジェクトの一部です。次のように私のHTMLコードがあるjavascriptを使ってhtmlからpdfに変換する

03-28 17:41:39.406: E/Cordova(1781): Error loading url data:application/pdf;base64,JVBERi0xLjMKMyAwI.... and so on 

このために私は私が上で、デバイスにこのアプリをインストールして、私は例外 ActivityNotFoundとlogcatにエラーメッセージが表示されますそれを実行 thisリンク、と呼ばれています
<!doctype> 
<html> 
<head> 
    <title>jsPDF</title> 
    <style type="text/css"> 
     * { padding: 0; margin: 0; } 
     body { 
      padding: 30px; 
      font-family: Arial, Helvetica, sans-serif; 
     } 
     h1 { 
      margin-bottom: 1em; 
      border-bottom: 1px solid #ccc; 
     } 

     h2 { 
      margin-bottom: 1em; 
      border-bottom: 1px solid #ccc; 
     } 

     pre { 
      border: 1px dotted #ccc; 
      background: #f7f7f7; 
      padding: 10px; 
      margin-bottom: 1em; 
     } 

     h1 { 
      margin-bottom: 0.7em; 
     } 

     h2 { 
      margin-top: 1em; 
     } 
    </style> 
    <script type="text/javascript" src="libs/base64.js"></script> 
    <script type="text/javascript" src="libs/sprintf.js"></script> 
    <script type="text/javascript" src="libs/jspdf.js"></script> 
</head> 

<body> 

<h1>jsPDF Demos</h1> 

<p>Examples for using jsPDF with Data URIs below. Go <a href="http://jspdf.googlecode.com/">back to project homepage</a>.</p> 

<h2>Simple Two-page Text Document</h2> 
<pre>var doc = new jsPDF(); 
doc.text(20, 20, 'Hello world!'); 
doc.text(20, 30, 'This is client-side Javascript, pumping out a PDF.'); 
doc.addPage(); 
doc.text(20, 20, 'Do you like that?'); 

// Output as Data URI 
doc.output('datauri');</pre> 
<a href="javascript:demo1()">Run Code</a> 





<script type="text/javascript"> 

function demo1() { 
    var doc = new jsPDF(); 
    doc.text(20, 20, 'Hello world!'); 
    doc.text(20, 30, 'This is client-side Javascript, pumping out a PDF.'); 
    doc.addPage(); 
    doc.text(20, 20, 'Do you like that?'); 

    // Output as Data URI 
    doc.output('datauri'); 
} 


</script> 


<script type="text/javascript"> 
// Google Analytics 

var gaJsHost = (("https:" == document.location.protocol) ? "https://ssl." : "http://www."); 
document.write(unescape("%3Cscript src='" + gaJsHost + "google-analytics.com/ga.js' type='text/javascript'%3E%3C/script%3E")); 
</script> 
<script type="text/javascript"> 
try { 
var pageTracker = _gat._getTracker("UA-2746979-4"); 
pageTracker._trackPageview(); 
} catch(err) {}</script> 
</body> 
</html> 

だから、ActivityNotFound私のデバイスにPDFリーダーがないか、コード内に何かを書く必要があるので、例外がありますか? ありがとうございます。

+1

*「ActivityNotFound例外は私のデバイスにhv pdf readerがないか、または私のコードに何か書き込むためにhvしていないからです」*なぜあなたは1つをインストールして見つけませんか? –

+0

自分のデバイスにpdfリーダーをインストールしてチェックしましたが、それでもまだ開いていません。ログ猫で私はアプリケーションが暗黙のインテントを呼び出していることがわかりましたandroid.intent.action.VIEWこれはアプリケーションがブラウザを開いていることを意味し、私の知識によると私はアンドロイドでブラウザのローカルファイルを開くことができないので、 ... – prateek

答えて

0

これは、MIMEタイプのアプリケーションを処理できるアクティビティがないためです。/ pdf - 言い換えれば、あなたはpdfリーダーが必要です。

+0

私のhvは私のデバイスにpdfリーダーをインストールしてチェックしましたが、同じエラーが表示されています – prateek

+0

OK - このコードはあなたのデスクトップであればブラウザで使えますか? - データURLがすべてのブラウザでサポートされているわけではありません。これは電話機のデフォルトブラウザに問題がある可能性があります。 –

+0

はい、このコードはデスクトップ上で動作していますが、Chrome上でのみMozillaとInternet Explorerで動作しません。だから、電話機のデフォルトブラウザで実行するために何をすべきか...? – prateek

関連する問題