Cordova s​​creenshot插件:在iOS上不起作用

时间:2017-04-12 09:24:35

标签: ios cordova

我正在使用Cordova 6.4.0和插件com.darktalker.cordova.screenshot 0.1.5“截图”。 这是我的简单代码

    navigator.screenshot.save(function(error, res)
                          {
                          if(error)
                          {
                          alert(error);
                          }

                          else
                          {
                          alert(res.filePath); //just to see the path

                          }
                          }, 'jpg');

代码适用于android:屏幕截图已被拍摄并保存,因此我可以使用它。但是,它无法在iOS上运行:我找不到截图。 我怎么解决?

1 个答案:

答案 0 :(得分:2)

编辑2:

要将图像保存到照片库,请使用以下插件:

https://www.npmjs.com/package/cordova-save-image-gallery

https://github.com/agomezmoron/cordova-save-image-gallery/blob/master/README.md

使用插件和屏幕截图插件保存图片。

navigator.screenshot.URI(function(error,res){

    if(error){

        console.error(error);

    }else{

        var params = {data: res, prefix: 'myPrefix_', format: 'JPG', quality: 80, mediaScanner: true};

        window.imageSaver.saveBase64Image(params,  function (filePath) {

          console.log('File saved on ' + filePath);

        },
        function (msg) {

            console.error(msg);

        }

      );

     }
}, 'jpg', 50);

修改

我认为我没有正确理解这个问题。

我认为您无法在iOS上导航到该目录。相反,您需要将数据作为URI获取,并使用相机插件等内容将其存储在照片库中。

如果您正在尝试查看图像?我认为该插件只是为了返回截图并将其保存在应用程序的临时目录中。您可以显示图像或将图像存储在其他位置。

原始答案

我认为问题是iOS只使用jpg并且不期待' jpg'论点。尝试将代码更改为

    navigator.screenshot.save(function(error, res)
                      {
                      if(error)
                      {
                      alert(error);
                      }

                      else
                      {
                      alert(res.filePath); //just to see the path

                      }
                      });