The best solution for this case is to manually bootstrap angular on device ready event:
bootstrapAngular = function () {
angular.bootstrap(document, ['YourAppName']);
}
document.addEventListener("deviceready", bootstrapAngular, false);
if you want to run angularjs app before device is ready and do some action when it is ready you do it like this
document.addEventListener("deviceready", function(){window.deviceIsReady = true}, false);
then where the action needs to be called:
$watch(function(){ return window.deviceIsReady}, function (status) {
if (status === true) {
//device is ready, do some crazy stuff
}
})