코드 삽입 플러그인 (iOS 버전)에서 후속 콜백을 즉시 실행하는 데 문제가 있습니다. 는 엑스 코드 디버거에서 나는 명확하게 pluginResult
약간 다른과 (즉시 연속)Cordova iOS 플러그인의 후속 콜백이 실행되지 않습니다.
[self.commandDelegate sendPluginResult:pluginResult callbackId:monitoredRegions.callbackId];
여러 번 할 때마다 단계를 참조하십시오. 그렇게하지 (그리고 수 없습니다) 제어하는
[locationManager requestStateForRegion:region];
에 의해 트리거됩니다 그.
자바 스크립트 측면에서 문제는 콜백이 한 번만 실행된다는 것입니다.
이상한 점은 alert()
과 같은 콜백에 차단 기능을 도입하면 예상대로 콜백이 여러 번 발생한다는 것입니다. 멋지지만 앱에는 alert()
이 필요하지 않습니다.
내가 이해하면 commandDelegate
은 스레딩과 큐잉을 처리해야하지만 그렇지 않은 것처럼 보입니다. 문제는 sendPluginResult
이 호출 될 때마다 JS 콜백을 시작하는 방법입니다.
감사합니다.
setKeepCallback의 기능에 대해 설명해 주셔서 감사합니다. 나는이 시나리오에서 머리를 치고 있었다. – mpoisot
'pluginResult.keepCallback = [NSNumber numberWithBool : YES];'단순히 작동하지 않았습니다. 나는 그것을 [pluginResult setKeepCallbackAsBool : YES];로 변경했으며 마술처럼 작동했습니다! – Solidak