除了enableHighAccuracy之外,还有什么方法可以提高getCurrentPosition()坐标的准确性?

时间:2016-01-30 06:11:10

标签: javascript jquery google-maps google-maps-api-3 geolocation

我的目的是利用地理定位返回的坐标来生成指向目的地的路线,而访客不必手动输入地址。但是,由于这些坐标在浏览器之间似乎有所不同,因此有些集合是准确的而其他集合根本不准确,我开始认为这是不可能的。

下面的代码显然对返回值的准确性影响很小。

if(isset($_POST['btn_sub']))


{
    $i = 0;
    foreach($_POST['marks'] as $row=>$Act)
    {   
    $i++;
        $session=$_GET['session'];
        $cl_name=$_GET['cl_name'];
        $cl_section=$_GET['cl_section'];
        $exam=$_GET['exam'];
        $date=$_GET['date'];
        $subj = $_GET['subj'];
$marks = mysql_real_escape_string($Act);
$maxmarks = mysql_real_escape_string($_POST['maxmarks'][$row]);
$passmarks = mysql_real_escape_string($_POST['passmarks'][$row]);
$name = mysql_real_escape_string($_POST['name'][$row]);
$rollno = mysql_real_escape_string($_POST['rollno'][$row]);
$fname = mysql_real_escape_string($_POST['fname'][$row]);
$attendance = mysql_real_escape_string($_POST['attendance'][$row]);

$result = mysql_query("SELECT * FROM `ex_marks` WHERE `session`='$session' and `cl_name`='$cl_name' and `cl_section`='$cl_section' and `subject`='$subj' and `exam`='$exam' and `date`='$date' and `roll_no`='$rollno' and `obtainmarks`='$marks'");

if (mysql_num_rows($result) == 0)
{
   mysql_query("INSERT INTO `ex_marks` (`mid`, `session`, `cl_name`, `cl_section`, `name`, `fname`, `status`, `date`, `exam`, `roll_no`, `subject`, `maxmarks`, `passmarks`, `obtainmarks`)
    VALUES('', '$session', '$cl_name', '$cl_section', '$name','$fname', '$attendance', '$date', '$exam', '$rollno', '$subj', '$maxmarks','$passmarks','$marks')") or die(mysql_error());
    if( $i == 3 ){
        echo "<script type='text/javascript'>alert('Submitted Successfully!')</script>";
    }
}
else
{
    echo "<script type='text/javascript'>alert('Already Exist!')</script>";
    exit;
}
}
}

是否有其他方法可以提高坐标的准确性,以便坐标实际可用?

1 个答案:

答案 0 :(得分:0)

根据官方Google文档,Google Maps Geolocation API会根据移动客户端可以检测到的有关手机信号塔和WiFi节点的信息返回位置和准确度半径。用于将此数据发送到服务器并将响应返回给客户端的协议。 在地理位置请求中,您必须在请求中指定密钥。请求正文必须格式化为JSON。

您可以在API调用中包含“ radioType ”。移动无线电类型支持' lte,gsm,cdma和wcdma '。虽然此字段是可选字段,但如果值可用,则应包括该字段,以获得更准确的结果。

有关Maps Geocoding API的详细信息,请点击此链接:https://developers.google.com/maps/documentation/geocoding/intro