我一直在尝试在我的Ionic项目中安装自定义cordova插件(在ngCordova库中不可用),这样我就能在Android上拍摄没有用户输入的照片:
我一直在努力将其正确地集成到我的Ionic App中,并且不确定如何:
a)按照Cordova documentation实施deviceready:
document.addEventListener("deviceready", yourCallbackFunction, false);
b)在没有应用程序崩溃的情况下在Ionic中调用函数。
答案 0 :(得分:1)
而不是设备上的deviceready
,尝试使用离子内置的就绪方法,当Cordova,Angular和Ionic准备就绪时会触发。
ionic.Platform.ready(function(){
//do plugin stuff here
});
答案 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
我不确定为什么会这样。如果您有更多了解,请随时评论。