CallLog plugin de acceso en Córdoba no está funcionando
Hola estoy desarrollando una aplicación híbrida usando cordova. Estoy tratando de acceder a la última llamada que se pierde en un móvil Android con plugin de CallLog. Esto es lo que he intentado,
1.I installed the plugin with this command cordova plugin add https://github.com/dalyc/Cordova-CallLog-Plugin.git. 2.I am using angularJS.I have this app.js. var app=angular.module('lmp', ['ngCordova']); app.controller('lmpctrl',['$scope', 'CallLogService', function($scope, CallLogService){ $scope.data = {}; $scope.callTypeDisplay = function(type) { switch(type) { case 1: return 'Incoming'; case 2: return 'Outgoing'; case 3: return 'Missed'; default: return 'Unknown'; }}; CallLogService.list(1).then( function(callLog) { console.log(callLog); $scope.data.lastCall = callLog[0]; }, function(error) { console.error(error); }); }]); app.factory('CallLogService', ['$q', function($q) { return { list : function(days) { var q = $q.defer(); // days is how many days back to go window.plugins.calllog.list(days, function (response) { q.resolve(response.rows); }, function (error) { q.reject(error) }); return q.promise; }, contact : function(phoneNumber) { var q = $q.defer(); window.plugins.calllog.contact(phoneNumber, function (response) { q.resolve(response); }, function (error) { q.reject(error) }); return q.promise; }, show : function(phoneNumber) { var q = $q.defer(); window.plugins.calllog.show(phoneNumber, function (response) { q.resolve(response); }, function (error) { q.reject(error) }); return q.promise; }, delete : function(phoneNumber) { var q = $q.defer(); window.plugins.calllog.delete(id, function (response) { q.resolve(response); }, function (error) { q.reject(error) }); return q.promise; } } }]); 3.This is my index.html. <body ng-app="lmp"> <div ng-controller="lmpctrl"> <div class="row"> <div class="col">Last Call</div> </div> <div class="row"> <div class="col col-30 col-offset-10">Name</div> <div class="col">{{data.lastCall.cachedName}}</div> </div> <div class="row"> <div class="col col-30 col-offset-10">Number</div> <div class="col">{{data.lastCall.number}}</div> </div> <div class="row"> <div class="col col-30 col-offset-10">Type</div> <div class="col">{{callTypeDisplay(data.lastCall.type)}}</div> </div> <div class="row"> <div class="col col-30 col-offset-10">Date</div> <div class="col">{{data.lastCall.date | date}}</div> </div> <div class="row"> <div class="col col-30 col-offset-10">Duration</div> <div class="col">{{data.lastCall.duration}} seconds</div> </div> <div class="row"> <div class="col col-30 col-offset-10">Acknowledged</div> <div class="col">{{(data.lastCall.new == 1 ? 'yes' : 'no')}}</div> </div> </div> <script src="js/angular.min.js"></script> <script src="js/app.js"></script> <script src="js/ng-cordova.js"></script> <script type="text/javascript" src="cordova.js"></script> <script type="text/javascript" src="js/index.js"></script> 4.I added this following code in my config.xml <feature name="CallLog"> <param name="android-package" value="com.ubookr.plugins.CallLogPlugin"/> </feature>
¿Estoy perdiendo algo o estoy equivocado de alguna manera. ¿Puede alguien por favor ayuda me.thanks de antemano.
- Cómo utilizar los complementos phonegap en nuestro proyecto android
- Phonegap dispositivo está indefinido en Android y iOS
- Cómo construir apache cordova proyecto desde la línea de comandos?
- Android - Deshabilitar el botón Atrás del dispositivo
- Cordova - se niega a ejecutar el controlador de eventos en línea porque viola el siguiente contenido Política de seguridad
- Folleto (OSM) en Córdoba
- Android geolocalización mediante el código de teléfono: 3 error
- Ionic Cordova en Android Studio (no se han encontrado herramientas de compilación instaladas)
- Realizar las llamadas directamente desde java a javascript con Phonegap
- Live Video Streaming para Android usando Phonegap?
- Cordova Custom Plugin "Argumentos a path.join deben ser cadenas"
- Conexión PhoneGap con el servicio localhost webservice
- Cordova no instala realmente la aplicación en el dispositivo Android
Parece que window.plugins
no está definido. Lo que hago para evitar esto es arrancar manualmente AngularJS en el evento DeviceReady
lugar de usar la directiva ng-app
, como se explica en Cordova + Angularjs + Device Ready
Para ello, elimine la directiva ng-app
del elemento <body>
y coloque este JavaScript en la parte superior de su script app.js
:
document.addEventListener('deviceready', function() { var body = document.querySelector('body'); angular.bootstrap(body, ['lmp']); }, false);
Esto esperará hasta que el dispositivo esté listo para arrancar angular, asegurando que todos los servicios del dispositivo estén disponibles antes de usarlos.