“未定义”结果使用FileOpener Phonegap Android和无法打开视频文件? [英] "undefined" result using FileOpener Phonegap Android and failed to open video File?

查看:236
本文介绍了“未定义”结果使用FileOpener Phonegap Android和无法打开视频文件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我已下载插件 FileOpener
并添加了in m,y project like this:

 <!DOCTYPE html> 
< html lang =endir =ltr>
< head>
< meta charset =utf-8>

< meta name =viewportcontent =width = device-width,user-scalable = no>
< title>示例< / title>
< link rel =stylesheethref =css / jquery.mobile-1.3.2.min.css>
< link rel =stylesheethref =css / adidas.css>
< script src =js / jquery.js>< / script>
< script src =js / jquery.mobile-1.3.2.min.js>< / script>
< script src =js / data_en.js>< / script>
< script src =js / data_sp.js>< / script>
< script src =js / adidas.js>< / script>
< script src =js / cordova.js>< / script>
< script src =js / video.js>< / script>
< script src =js / fileopener.js>< / script>

< / head>
< body>
< div data-role =pagedata-theme =aclass =my-pageid =video>
< video id =video_playersrc =#controls =controls>< / video>
< / div>
< / body>

  $(document).on('pagebeforeshow',#video,function(){
var xyz = document.getElementById('video_player');
alert(values xyz:+ xyz);
var x = window.plugins.fileOpener.open(file:///android_asset/www/videos/1974.mp4);
xyz.src = window.plugins.fileOpener.open(file:///android_asset/www/balls/1970.png);

alert(opener:+ x);
window.plugins.videoPlayer.play(x);
alert(xyz after src:+ xyz);
});




i am无法打开来自assets / www / videos / abcd.mp4的任何视频文件/图片图片



现在一切正常,但尝试按下播放按钮时会发出警报:

解决方案

  <!DOCTYPE html> 
< html lang =endir =ltr>
< head>
< meta charset =utf-8>

< meta name =viewportcontent =width = device-width,user-scalable = no>
< title>示例< / title>
< script src =js / cordova.js>< / script>
< script src =js / video.js>< / script>
< script src =js / fileopener.js>< / script>
< script src =js / ADD_ANY_JQUERY.MIN.JS>< / script>
< script>
function openFile(filePath)
{
window.plugins.fileOpener.open(filePath);
}
< / script
< / head>
< body>
< div data-role =pagedata-theme =aclass =my-pageid =video>
< img src =img / b_img1.pngonclick =openFile('file:///android_asset/www/videos/1974.mp4')/>
< / div>
< / body>

已编辑
Fileopener.js将如下所示: / p>

  cordova.define(cordova / plugin / fileopener,
function(require,exports,module){
var exec = require(cordova / exec);
var FileOpener = function(){};

FileOpener.prototype.open = function(url){
exec(null,null,FileOpener,openFile,[url]);
};

FileOpener.prototype.setTAG = function(tag){
exec null,null,FileOpener,setTAG,[tag]);
};
var fileOpener = new FileOpener();
module.exports = fileOpener;

});
/ **
* Load Plugin
* /
if(!window.plugins){
window.plugins = {};
}
if(!window.plugins.fileOpener){
window.plugins.fileOpener = cordova.require(cordova / plugin / fileopener);
}

js / ADD_ANY_JQUERY.MIN.JS
添加任何jquery.min.js



最后检查 Cordova.js 文件夹是否在您的应用程序的js文件夹中..让我知道它是不是工作什么是你的logcat说...


i have downloaded plugin FileOpener and added in m,y project like this:

<!DOCTYPE html>
<html lang="en"  dir="ltr">
<head>
    <meta charset="utf-8">

   <meta name="viewport" content="width=device-width,  user-scalable=no">
   <title>sample</title>
   <link rel="stylesheet"  href="css/jquery.mobile-1.3.2.min.css">
  <link rel="stylesheet"  href="css/adidas.css">
  <script src="js/jquery.js"></script>
  <script src="js/jquery.mobile-1.3.2.min.js"></script>
  <script src="js/data_en.js"></script>
  <script src="js/data_sp.js"></script>
  <script src="js/adidas.js"></script>
  <script src="js/cordova.js"></script>
  <script src="js/video.js"></script>
  <script src="js/fileopener.js"></script>

</head>
<body>
 <div data-role="page" data-theme="a" class="my-page" id="video">
  <video id="video_player" src="#" controls="controls"></video> 
</div>
</body>

in js file

    $(document).on('pagebeforeshow',"#video", function () {
   var xyz = document.getElementById('video_player');
    alert("values xyz:" + xyz);
     var x =  window.plugins.fileOpener.open("file:///android_asset/www/videos/1974.mp4");
  xyz.src =  window.plugins.fileOpener.open("file:///android_asset/www/balls/1970.png");

    alert("opener:" + x);
    window.plugins.videoPlayer.play(x);
    alert("xyz after src:" +  xyz);
});

i am failed to open any video file/ images from assets/www/videos/abcd.mp4 and similar for images

now everything is working fine but this is alert when trying to hit play button :

解决方案

 <!DOCTYPE html>
 <html lang="en"  dir="ltr">
 <head>
<meta charset="utf-8">

<meta name="viewport" content="width=device-width,  user-scalable=no">
<title>sample</title>
<script src="js/cordova.js"></script>
<script src="js/video.js"></script>
<script src="js/fileopener.js"></script>
<script src="js/ADD_ANY_JQUERY.MIN.JS"></script>
<script>
   function openFile(filePath)
  {
     window.plugins.fileOpener.open(filePath);
  }
</script
</head>
<body>
<div data-role="page" data-theme="a" class="my-page" id="video">
<img src="img/b_img1.png" onclick="openFile('file:///android_asset/www/videos/1974.mp4')"/>
</div>
</body>

Edited Fileopener.js will be like this:

cordova.define("cordova/plugin/fileopener",
  function(require, exports, module) {
    var exec = require("cordova/exec");
    var FileOpener = function () {};

FileOpener.prototype.open = function(url) {
    exec(null, null, "FileOpener", "openFile", [url]);
};

FileOpener.prototype.setTAG = function(tag) {
    exec(null, null, "FileOpener", "setTAG", [tag]);
};
var fileOpener = new FileOpener();
    module.exports = fileOpener;

});
/**
 * Load Plugin
 */
if (!window.plugins) {
    window.plugins = {};
}
if (!window.plugins.fileOpener) {
    window.plugins.fileOpener = cordova.require("cordova/plugin/fileopener");
}

"js/ADD_ANY_JQUERY.MIN.JS" in this line add a any jquery.min.js

Lastly check that Cordova.js folder is in your js folder of your application.. And let me know if it is not working what's your logcat saying...

这篇关于“未定义”结果使用FileOpener Phonegap Android和无法打开视频文件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆