Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/99.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
使用Latitude&;经度IOS_Ios_Core Location - Fatal编程技术网

使用Latitude&;经度IOS

使用Latitude&;经度IOS,ios,core-location,Ios,Core Location,我正在iOS中开发聊天应用程序。其中,用户可以搜索半径为1千米的附近人群。 注册时,我存储了每个用户的纬度和经度。 现在告诉我如何在1千米半径范围内搜索用户附近的人 非常感谢您可以使用此方法比较两个位置 CLLocationDistanceInMeters=[locationA distanceFromLocation:locationB] 或者从后端(PHP开发人员)计算距离,因为基本上他们只存储所有的lat、long。(我认为)我的解决方案是直接使用无线电搜索用户。请执行以下步骤 使用web

我正在iOS中开发聊天应用程序。其中,用户可以搜索半径为1千米的附近人群。 注册时,我存储了每个用户的纬度和经度。 现在告诉我如何在1千米半径范围内搜索用户附近的人


非常感谢

您可以使用此方法比较两个位置

CLLocationDistanceInMeters=[locationA distanceFromLocation:locationB]


或者从后端(PHP开发人员)计算距离,因为基本上他们只存储所有的lat、long。(我认为)

我的解决方案是直接使用无线电搜索用户。请执行以下步骤

  • 使用web服务将纬度、经度和无线电信息发送到后端服务器

  • 对于您的web服务开发人员,使用您的信息进行查询并获取附近的用户

  • 请参阅以下连结:


    您可以使用哈弗森公式计算当前纬度、经度和目标纬度、经度之间的适当距离

    定义DEG2RAD(度)(度*0.01745327)

    双电流纬度=40.727181//已登录用户的当前纬度
    double currentLength=-73.986786//已登录用户的当前经度
    double destination=42.896578//目标用户的纬度
    double destinationlongity=-75.784537//目标用户的经度

    //将获得的纬度和经度转换为RADS。
    double currentLatitudeRad=DEG2RAD(当前纬度)
    double currentLongitudeRad=DEG2RAD(currentLongitude)
    double destinationlatuderad=DEG2RAD(destinationlatude)
    double destinationlongitentialrad=DEG2RAD(destinationlongitential)

    //哈弗森公式。
    distance=acos(sin(currentLatitudeRad)*sin(destinationLatitudeRad)+cos(currentLatitudeRad)*cos(destinationLatitudeRad)*cos(CurrentLongtuderad-DestinationLongientRad))*6880.1295896


    此处获得的距离以公里为单位

    使用google map API是可能的。使用这种方法,我必须检查数据库中的每个用户(例如,如果有数千个用户,则需要很多时间),我喜欢MYSQL。MYSQL是最大的工具。。。喜欢它