我正在尝试在我的phonegap应用程序中打开pdf和ppt文件。我正在使用phonegap 2.4和最新版本的WebIntent插件。我按照告诉的那样做了 Webintent
但我仍然收到此错误:
参考错误:未定义WebIntent
这是我的html主题部分的一部分:
<script type="text/javascript" src="js/cordova-2.4.0.js"></script>
<script type="text/javascript" src="js/index.js"></script>
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jquery.mobile-1.2.0.min.js"></script>
<script type="text/javascript" src="js/webintent.js"></script>
这是我的config.xml文件的一部分
<cordova>
...
<plugins>
...
<plugin name="Globalization" value="org.apache.cordova.Globalization"/>
<plugin name="InAppBrowser" value="org.apache.cordova.InAppBrowser"/>
<plugin name="WebIntent" value="com.borismus.webintent.WebIntent"/>
</plugins>
</cordova>
这里是我使用插件的代码的js部分
function openFile(filePath){
window.plugins.webintent.StartActivity({
action: WebIntent.ACTION_VIEW,
url: filePath},
function(){},
function(){alert("failed to open file")}
);
}
其中filePath类似于“file:///mnt/sdcard/file.pdf”
请有人告诉我,我做错了什么。 P.S。:我对手机和日食都很陌生。
答案 0 :(得分:0)
问题在于:action: WebIntent.ACTION_VIEW,
WebIntent
曾经是一个全球性的(yuck),但现在被包装在一个闭包中。
由于您使用的是window.plugins.webintent
,因此您需要将其更改为:
function openFile(filePath){
window.plugins.webintent.StartActivity({
action: window.plugins.webintent.ACTION_VIEW,
url: filePath},
function(){},
function(){alert("failed to open file")}
);
}
我修改了插件的文档示例。
答案 1 :(得分:0)
即使有修改操作的注释:带有window.plugins.webintent.ACTION_VIEW的WebIntent.ACTION_VIEW对我来说也失败了。
我所做的是直接放入WebIntent.ACTION_VIEW的值
在webintent.js中是:
WebIntent.ACTION_VIEW= "android.intent.action.VIEW";
我的代码示例:
window.plugins.webintent.startActivity({
action: 'android.intent.action.VIEW',
type: "application/pdf",
url: "file:///storage/sdcard0/Mapfre/Documentos/readme.pdf"},
function() {WL.Logger.debug(">> OK");},
function() {WL.Logger.debug(">> ERROR");}
);