Ho un'applicazione mobile basata su Cordova e Ionic. Sulla pagina predefinita che viene caricata dopo l'avvio dell'applicazione è necessario lavorare con il plugin SQLLite.Come deviceready in modo corretto nell'applicazione ionica?
https://github.com/brodysoft/Cordova-SQLitePlugin
Il problema è che vista contiene
ng-init="setData()"
che chiede il metodo di controllo in cui viene lavorato con SQL Lite plugin. E poiché il metodo viene chiamato prima che l'evento deviceready non sia inizializzato (il plugin può essere inizializzato solo dopo l'evento deviceready).
Così ho provato questa soluzione:
.run(function($ionicPlatform) {
$ionicPlatform.ready(function() {
// Hide the accessory bar by default (remove this to show the accessory bar above the keyboard
// for form inputs)
if(window.cordova && window.cordova.plugins.Keyboard) {
cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
db = window.sqlitePlugin.openDatabase({name:"callplanner"});
}
Ma questo non funziona per me.
Così ho provato seconda soluzione:
.factory('cordova', function() {
return {
test: function(){
document.addEventListener("deviceready", this.ready, false);
},
ready: function(){
alert("Ready");
db = window.sqlitePlugin.openDatabase({name:"callplanner"});
}
}
})
e controller init Ho provato:
cordova.test();
Ma questo non sta lavorando per (devicereadfy viene licenziato dopo NG-init).
Dopo che ho trovato questo articolo:
http://java.dzone.com/articles/ionic-and-cordovas-deviceready
Ma non ho capito come mettere "splash screen" prima app è pronta e come impostare il timeout.
Qualcuno ha idea di come posso risolvere questo problema?
Molte grazie per qualsiasi consiglio o aiuto.
Nessuno sa come risolverlo? – redrom