Background job schedule
에 대한 해결책이 필요합니다. 내 목적은 매 15 분마다 latitude
과 longitude
을 백엔드에 보내는 것입니다. 이 기능을 구현하는 가장 좋은 방법은 무엇입니까?네이티브 백그라운드 작업 스케줄러에 반응하십시오
답변
나는 몇 달 전에 정확한 사양을 가지고 있었고 나는 2 가지 접근법으로 결론을 내렸다.
내 latlong 개체가 들어올 때마다 내 앱이 내 추적에 Latlong 개체를 내 백엔드로 보내야하지만 가장 좋은 옵션 중 하나는 HeadlessJS이며 일부 기본 코딩이 필요합니다.
내 솔루션
모든 자바 스크립트 실행이
별도의 비즈니스 로직 멀리 UI 스레드에서 백그라운드 스레드에서 발생하고 REDUX에 저장합니다. 앱이 살아있는 동안 n 분마다 조치를 파견 할 수 있습니다. 기능 패널 (iOS의 경우)에서 배경 모드를 켜야합니다.
내가
BackgroundTimer을 시도했습니다 또 다른 옵션은 특정 조각마다 n 분을 실행할 수 있습니다. 예 :
export const watchGPSPositionsAtInterval = function(
dispatchNewPositionFunction,
dispatch
) {
let intervalId = BackgroundTimer.setInterval(() => {
navigator.geolocation.getCurrentPosition(
pos => {
if (pos <= MIN_ACCURACY) {
dispatchNewPositionFunction(pos, dispatch);
}
},
error => {
console.log(error);
},
{
enableHighAccuracy: true,
timeout,
maximumAge
}
);
}, TIME_INTERVAL);
return intervalId;
};
답변 해 주셔서 감사합니다. 하지만 이해할 수없는, 특정 시간 제한에서이 작업을 예약하는 방법. 특정 시간 간격으로 작업을 예약 할 수있는 라이브러리가 있습니까? –
예제 프로그램을 실행 해 보셨습니까? 그렇다면 게시물을 업데이트하고 코드의 어느 부분이 작동하지 않는지 알려주십시오. –
아무 것도 시도하지 않았습니까? –
이 답변을 확인하십시오. https://stackoverflow.com/questions/35376690/how-can-i-run-background-tasks-in-react-native?answertab=active#tab-top – nish
답변 해 주셔서 감사합니다. 사실 나는 이미 질문을 확인했다. 웹에서 찾을 수있는 두 개의 라이브러리가 있습니다. 하나는 배경 작업이고 다른 하나는 배경 타이머입니다. 그러나 둘 다 제대로 작동하지 않습니다. 그들은 여전히 많은 문제를 가지고 있습니다. 이 기능에 대한 해결책을 찾을 수 있다면이 경우 적절한 해결책을 찾고 있습니다. 한 번만 공유하십시오. –