如何在Ionic Framework中集成Native Cordova插件? camerapicturebackground

时间:2016-02-25 20:01:23

标签: cordova ionic-framework cordova-plugins

我一直在尝试在我的Ionic项目中安装自定义cordova插件(在ngCordova库中不可用),这样我就能在Android上拍摄没有用户输入的照片:

camerapicturebackground

我一直在努力将其正确地集成到我的Ionic App中,并且不确定如何:

a)按照Cordova documentation实施deviceready:

    document.addEventListener("deviceready", yourCallbackFunction, false);

b)在没有应用程序崩溃的情况下在Ionic中调用函数。

2 个答案:

答案 0 :(得分:1)

而不是设备上的deviceready,尝试使用离子内置的就绪方法,当Cordova,Angular和Ionic准备就绪时会触发。

ionic.Platform.ready(function(){
  //do plugin stuff here
});

http://ionicframework.com/docs/api/utility/ionic.Platform/

答案 1 :(得分:0)

作为初学者,我在理解这些问题时遇到了一些困难:

a)我使用$ ionicPlatform.ready代替。这被放置在我的控制器内部,该控制器注入了$ ionicPlatform依赖项。  见下文:

    .controller('captureCtrl',['$scope', '$ionicPlatform', function($scope, $ionicPlatform){

    $ionicPlatform.ready(function() {

           //function call in here

    })
    }]);

根据以下声明,它也可以正常工作。

  

The ionicPlatform.ready event is called when Cordova's deviceready event fires

b)根据github问题页面,此插件在CameraSurfacePreview.java中存在问题。注释掉线(94)可以防止设备崩溃。

除此之外,该插件仅在重建Android平台后才有效:

> ionic platform rm android
> ionic platform add android
> ionic build android

我不确定为什么会这样。如果您有更多了解,请随时评论。