Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/219.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用半径搜索附近的对象。谷歌地图_Java_Android_Mysql_Location - Fatal编程技术网

Java 使用半径搜索附近的对象。谷歌地图

Java 使用半径搜索附近的对象。谷歌地图,java,android,mysql,location,Java,Android,Mysql,Location,我正试图找到距离我现在位置大约20米的地方。我的数据库(MySQL)中有这些地方的坐标。 我需要的是将这个坐标从数据库中取出,并以某种方式与我的坐标进行比较。如果某个“针”接近20米,则应进行简单的吐司通信 首先,我需要从数据库中获取当前位置的帮助 我正在使用android studio。我没有给你确切的答案,但我会给你一些线索 处理此类问题的最佳方法是让sql发挥魔力,根据半径和坐标返回结果 下面是一个示例sql查询 public function gettemples($latitude,

我正试图找到距离我现在位置大约20米的地方。我的数据库(MySQL)中有这些地方的坐标。 我需要的是将这个坐标从数据库中取出,并以某种方式与我的坐标进行比较。如果某个“针”接近20米,则应进行简单的吐司通信

首先,我需要从数据库中获取当前位置的帮助


我正在使用android studio。

我没有给你确切的答案,但我会给你一些线索

处理此类问题的最佳方法是让sql发挥魔力,根据半径和坐标返回结果

下面是一个示例sql查询

public function gettemples($latitude, $longitude, $distance, $templetype, $limitno){
        $this->connect();
        // $query = "SELECT * FROM temples";

        $query = "SELECT *, ( 6371 * acos( cos( radians(".$latitude.") ) * cos( radians( latitude ) ) * 
            cos( radians( longitude ) - radians(".$longitude.") ) + sin( radians(".$latitude.") ) * 
            sin( radians( latitude ) ) ) ) AS distance FROM temples HAVING
            distance < ".$distance." ORDER BY distance LIMIT 0 , ".$limitno."";
                $stmt = $this->connection->prepare($query);
                $result = $stmt->execute();
                $results = $stmt->fetchAll(PDO::FETCH_ASSOC);
                return $results;
    }
公共函数gettemples($latitude、$longitude、$distance、$templetype、$limitno){
$this->connect();
//$query=“从庙宇中选择*”;
$query=“选择*,(6371*acos(弧度(“.$LATIONE”)*cos(弧度(纬度))*
cos(弧度(经度)-弧度(“.$经度”)+sin(弧度(“.$经度”)*
sin(弧度(纬度)),作为与具有
距离<“$distance.”按距离限制0排序,“$limitno.”;
$stmt=$this->connection->prepare($query);
$result=$stmt->execute();
$results=$stmt->fetchAll(PDO::FETCH_ASSOC);
返回$results;
}

从数据库获取当前位置?IMHO,获取设备上的当前位置,然后发送到服务器,最后接收计算结果集(您周围20米范围内的位置)获取这些位置的位置,这些位置已经在数据库中