【发布时间】:2012-04-12 02:06:21
【问题描述】:
我是 Javascript 和 HTML 的新手,我正在 PhoneGap 中构建一个应用程序,PDF 转换器是我项目的一部分。为此,我参考了this 链接,当我在设备上安装此应用程序并运行它时,我得到一个异常ActivityNotFound 并在logcat 上显示一条错误消息:
03-28 17:41:39.406: E/Cordova(1781): Error loading url data:application/pdf;base64,JVBERi0xLjMKMyAwI.... and so on
我的HTML代码如下:
<!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 阅读器,还是我必须在我的代码中编写更多内容?
提前致谢。
【问题讨论】:
-
“所以 ActivityNotFound 异常是因为我没有在我的设备中安装 pdf 阅读器,或者我没有在我的代码中写入更多内容。” 你为什么不安装一个就知道了?
-
我已经通过在我的设备中安装 pdf 阅读器进行了检查,但它仍然没有打开。在 log cat 中,我发现应用程序正在调用隐式意图 android.intent.action.VIEW 这意味着应用程序正在打开浏览器,据我所知,我知道在 android 中我们无法在浏览器中打开本地文件,所以如何打开生成的 pdf 文件...
标签: javascript html cordova pdf-generation