If i turn on the location using diagnostic and cannot get geo location instantly

Hi i am trying trying to turn on the location using diagnostic and when i try to get geo coordinates instantly its not working its taking around 10 sec if i start the gps and for subsequent calls geo location is got instantly any way to reduce the time for first call?

my code snippet

     if (window.cordova) {
        cordova.plugins.diagnostic.isLocationEnabled(function(enabled) {
           // alert("Location is " + (enabled ? "enabled" : "disabled"));
    			cordova.plugins.locationAccuracy.request(function (success){
        console.log("Successfully requested accuracy: "+success.message);
   .then(function (position) {
      $scope.lat  = position.coords.latitude;
     $scope.lng = position.coords.longitude;
    }, function (error){
       console.error("Accuracy request failed: error code="+error.code+"; error message="+error.message);
       if(error.code !== cordova.plugins.locationAccuracy.ERROR_USER_DISAGREED){
           if(window.confirm("Failed to automatically set Location Mode to 'High Accuracy'. Would you like to switch to the Location Settings page and do this manually?")){
    }, cordova.plugins.locationAccuracy.REQUEST_PRIORITY_HIGH_ACCURACY);
        }, function(error) {
            alert("The following error occurred: " + error);

it takes around 10 sec when the location is turned on for first time any idea to reduce time on first call?