0
내 프로젝트에서 백그라운드 모드 플러그인을 사용하고 있습니다.Cordova - ionic 백그라운드 모드 플러그인 문제
장치가 [장치 관리 모드]에있을 때 장치의 위치 정보를 데이터베이스에 삽입하려고합니다.
사용자가 [배경/일시 중지] 모드로 전환하면 장치의 Geolocation이 데이터베이스에 삽입되지 않습니다.
geolocation은 3 초마다 데이터베이스에 삽입됩니다.
장치 모드를 [백그라운드] 모드로 전환하면 데이터베이스에 geolocation을 계속 삽입합니다.
무엇이 문제입니까?
var app = angular.module('starter', ['ionic', 'ngCordova']);
var globLat;
var globLong;
var db = null;
app.run(function ($ionicPlatform, $cordovaSQLite) {
$ionicPlatform.ready(function() {
if (cordova.platformId === "ios" && window.cordova && window.cordova
.plugins.Keyboard) {
cordova.plugins.Keyboard.hideKeyboardAccessoryBar(true);
cordova.plugins.Keyboard.disableScroll(true);
}
if (window.StatusBar) {
StatusBar.styleDefault();
}
db = window.openDatabase("mobileDB", "1.0", "Cordova Demo",
200000);
$cordovaSQLite.execute(db,
"CREATE TABLE IF NOT EXISTS coords (latDB float , longDB float)"
);
/*
var query = "INSERT INTO coords (latDB, longDB) VALUES (?,?)";
$cordovaSQLite.execute(db, query, [globLat, globLong]); */
document.addEventListener("deviceready", onDeviceReady, false);
function onDeviceReady() {
setInterval(function() {
var query =
"INSERT INTO coords (latDB, longDB) VALUES (?,?)";
$cordovaSQLite.execute(db, query, [globLat, globLong]);
}, 3000);
}
});
})
app.controller('GeoCtrl', function ($cordovaGeolocation, $cordovaSQLite) {
var posOptions = {
timeout: 10000,
enableHighAccuracy: false
};
$cordovaGeolocation
.getCurrentPosition(posOptions)
.then(function (position) {
var lat = position.coords.latitude
var long = position.coords.longitude
globLat = lat;
globLong = long;
// alert("latitude is : " + globLat + "and longitude is :" + globLong);
}).then(
function initMap() {
var uluru = {
lat: globLat,
lng: globLong
};
var map = new google.maps.Map(document.getElementById('map'), {
zoom: 18,
center: uluru
});
var marker = new google.maps.Marker({
position: uluru,
map: map
});
});
});
참고 : 장치가 너무도, 준비가되어 있다면 확인되는 않는 장치 모드를
예.하지만 이미 geolocation 플러그인을 사용하고 있습니다. 장치가 백그라운드 모드 일 때 삽입 된 geolocation이 필요합니다. – saifaldeen
그런 다음 전체 코드를 입력하십시오. 위의 코드는 사용 된 언급과 사용 방법을 작성하지 않았습니다. – Olli
코드를 업데이트했습니다 :) – saifaldeen