精华内容
下载资源
问答
  • 用相对简单的JavaScript代码,可以创建出能确定用户地理位置详细信息的Web应用,包括经纬度以及海拔等。一些Web应用甚至能通过监控用户位置随时间的移动来提供导航功能,其中还综合了GoogleMaps API这样的地图系统。
  • iOS如何获取当前地理位置

    千次阅读 2019-02-18 11:19:19
    导入 CoreLocation 框架以及头文件#import &... 创建CLLocationManager对象并设置代理 <CLLocationManagerDelegate> // 初始化定位管理器 _locationManager = [[CLLocationManager alloc] i...
    1. 导入 CoreLocation 框架以及头文件
      #import <CoreLocation/CoreLocation.h>
    2. 创建CLLocationManager对象并设置代理
       <CLLocationManagerDelegate>
        // 初始化定位管理器
        _locationManager = [[CLLocationManager alloc] init];
        // 设置代理
        _locationManager.delegate = self;
        // 设置定位精确度到米
        _locationManager.desiredAccuracy = kCLLocationAccuracyBest;
        // 设置过滤器为无
        _locationManager.distanceFilter = kCLDistanceFilterNone;
        // 取得定位权限,有两个方法,取决于你的定位使用情况
        // 一个是requestAlwaysAuthorization,一个是requestWhenInUseAuthorization
        // 这句话ios8以上版本使用。
        [_locationManager requestAlwaysAuthorization];
        // 开始定位
        [_locationManager startUpdatingLocation];
    
    1. 在iOS8以上的系统还需要在 plist 文件中添加以下key来配置
      Privacy - Location Always Usage Description
      Privacy - Location When In Use Usage Description

    里面的值可以自己添加

    1. 如果想开启后台定位的话,需要按照以下步骤设置

       

      开启后台定位.png

    2. 在对应的代理方法中获取到我们需要的位置信息
      - (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation
      在此代理方法中我们可以获取到当前位置的经纬度
        //获取经度
        //self.longitude.text = [NSString stringWithFormat:@"%lf", newLocation.coordinate.longitude];
        //获取维度
        //self.latitude.text = [NSString stringWithFormat:@"%lf", newLocation.coordinate.latitude];
    

    获取当前位置所在的市信息

        // 获取当前所在的城市名
        CLGeocoder *geocoder = [[CLGeocoder alloc] init];
        //根据经纬度反向地理编译出地址信息
        [geocoder reverseGeocodeLocation:newLocation completionHandler:^(NSArray *array, NSError *error){
            if (array.count > 0){
                CLPlacemark *placemark = [array objectAtIndex:0];
                //获取当前城市
                NSString *city = placemark.locality;
                if (!city) {
                    //注意:四大直辖市的城市信息无法通过locality获得,只能通过获取省份的方法来获得(如果city为空,则可知为直辖市)
                    city = placemark.administrativeArea;
                }
                NSArray *array = [city componentsSeparatedByString:@"市"];
                NSString *cityStr = array[0];
                NSString * cityEncode = (NSString *)CFBridgingRelease(CFURLCreateStringByAddingPercentEscapes( kCFAllocatorDefault, (CFStringRef)cityStr, NULL, NULL,  kCFStringEncodingUTF8 ));
                //这里我把获取到的地址信息利用NSUserDefaults保存起来,后面会用到
                NSMutableDictionary *dic = [NSMutableDictionary new];
                [dic setValue:cityEncode forKey:@"city"];
                [[NSUserDefaults standardUserDefaults] setObject:dic forKey:@"cityName"];
                [[NSUserDefaults standardUserDefaults] synchronize];
            }
            else if (error == nil && [array count] == 0) {
                NSLog(@"没有结果返回.");
            }
            else if (error != nil)  {
                //NSLog(@"An error occurred = %@", error);
            }
        }];
    
    1. 系统会在后台一直更新定位数据,如果只需要获取一次信息可以在信息获取完毕之后停止更新
      [manager stopUpdatingLocation];


     

    展开全文
  • 在规划路线使用谷歌地图API ,我解释了如何创建一个服务,可以让用户找到一个地址到另一个途径。 在本文中,您将学习如何使用谷歌地图API地理位置API一起到一个地图,加入几个点上显示的折线。 本文假定您熟悉的材料...

    “使用Google Maps API获取路线”中 ,我解释了如何创建一种服务,该服务可使用户找到从一个地址到另一个地址的路线。 在本文中,您将学习如何结合使用Geolocation API和Google Maps API在连接多个点的地图上显示折线。

    本文假定您熟悉使用地理定位和Google Maps API使用 Google Maps API 获取路线中的内容 如果您还没有阅读它们,我建议您现在阅读。

    利用Google Maps API做更多的事情

    在前两篇文章中,您已经看到了许多类,方法和属性,但是,它们只是Google Maps API难题的一小部分。 在本部分中,您将看到我们在最终演示中使用的另一部分API。

    我将介绍的第一堂课是google.maps.Polyline 它使用传递给构造函数的选项(一个google.maps.PolylineOptions对象)绘制一条连接多个点的线。 此类的方法只是getter和setter,所以我不会赘述,但是请记住,最重要的setter是setPath()setMap()setPath()定义要连接的点, setMap()绘制线条的地图。

    google.maps.PolylineOptions类充满了可用于调整折线以适合您需要的属性。 两个最重要的是那些之前描述的制定者根本- mappath 笔画属性也值得注意,因为它们将在演示中使用。 顾名思义, strokeColor设置描边颜色,默认为#000000 (黑色)。 strokeOpacity是介于0.0和1.0之间的数字,用于设置笔触的不透明度。 strokeWeight是一个数字,以像素为单位设置笔划宽度。 我建议阅读PolylineOptions官方文档以了解其他有用的属性。

    该演示还利用了google.maps.LatLngBounds类。 引用官方文档LatLngBounds代表地理坐标中的矩形,包括一个与180度纵向子午线交叉的矩形 其构造函数最多接受两个参数,如果给定,则必须是LatLng实例。 第一个用作矩形的西南点,第二个用作东北点。 在演示中,您将看到的唯一方法是extend() ,它接受LatLng点,并加宽当前矩形的边界以包括该点。 LatLngBounds类的另一种方法是contains() ,它测试LatLng坐标是否在范围内。 此类还具有其他可用于多个矩形的有用方法。 实际上,您可以合并( union() )或相交( intersects() )矩形,但是请记住,一次只能在两个LatLngBounds实例上运行该动作。

    构建演示

    为了查看所展示的类的实际效果,让我们构建一个演示来保存用户的动作,并绘制一条折线,将它们连接到地图上。 因为我们必须跟踪用户的运动,所以该演示使用了watchPosition()方法而不是getCurrentPosition() 这些位置将存储在一个名为path的变量中,该变量被初始化为一个空数组。

    // Save the positions' history
    var path = [];

    watchPosition()方法运行成功回调函数时,将使用用户的纬度和经度来构建google.maps.LatLng对象。 然后将该对象插入path数组。 并且,对于添加的每个新点,将刷新地图以显示用户的移动。

    // Save the current position
    path.push(new google.maps.LatLng(position.coords.latitude, position.coords.longitude));

    我们还需要调整地图视图,使其包含折线的所有点。 这是通过将LatLngBounds对象存储在名为latLngBounds的变量中来latLngBounds 我们需要遍历所有保存的点,并将它们一次传递给extend()方法。 请注意,目前,我们仅准备将数据与fitBounds()方法配合使用,因此当前地图无法适应边界。 此外,我们还将使用Marker对象标记每个点,以便您可以轻松定位每个位置。 下面列出了实现此目的的代码。

    // Create the LatLngBounds object that will be used to fit the view to the points range and
    // place the markers to the polyline's points
    var latLngBounds = new google.maps.LatLngBounds();
    for(var i = 0; i < path.length; i++) {
      latLngBounds.extend(path[i]);
      // Place the marker
      new google.maps.Marker({
        map: map,
        position: path[i],
        title: "Point " + (i + 1)
      });
    }

    一旦显示了要点,我们就需要使用前面讨论的PolylinePolylineOptions类来构建折线。 这非常容易,因为您只需要使用所需的选项创建一个新的Polyline对象。 在下面的代码中,线条的笔触已更改为一条1像素宽的蓝线,具有70%的不透明度。

    // Creates the polyline object
    var polyline = new google.maps.Polyline({
      map: map,
      path: path,
      strokeColor: '#0000FF',
      strokeOpacity: 0.7,
      strokeWeight: 1
    });

    剩下的唯一步骤是确保地图视图包含折线的所有点。 这是通过将latLngBounds变量传递到latLngBoundsfitBounds()方法来完成的,如下所示。

    // Fit the bounds of the generated points
    map.fitBounds(latLngBounds);

    添加预设点

    使用上面的代码,我们有一个完全正常的演示。 但是,如果在桌面环境中测试代码,则watchPosition()方法将仅运行一次,因此您将看不到绘制的任何线。 为避免此问题,您可以复制以下代码并将其粘贴到循环遍历path数组并构建LatLngBounds对象的块之前。 该代码将简单地创建一组使用用户当前位置的随机生成的点,并将其插入到path数组中。

    // Create the polyline's points
    for(var i = 0; i < 5; i++) {
      // Create a random point using the user current position and a random generated number.
      // The number will be once positive and once negative using based on the parity of i
      // and to reduce the range the number is divided by 10
      path.push(
        new google.maps.LatLng(
          position.coords.latitude + (Math.random() / 10 * ((i % 2) ? 1 : -1)),
          position.coords.longitude + (Math.random() / 10 * ((i % 2) ? 1 : -1))
        )
      );
    }

    演示页

    使用前面几节中显示的代码,最后列出了演示工作页面。

    <!DOCTYPE html>
    <html>
      <head>
        <meta charset="UTF-8" />
        <title>Create a polyline using Geolocation and Google Maps API</title>
        <script src="http://maps.google.com/maps/api/js?sensor=true"></script>
        <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
        <script>
          $(document).ready(function() {
            // If the browser supports the Geolocation API
            if (typeof navigator.geolocation == "undefined") {
              $("#error").text("Your browser doesn't support the Geolocation API");
              return;
            }
            // Save the positions' history
            var path = [];
    
            navigator.geolocation.watchPosition(function(position) {
              // Save the current position
              path.push(new google.maps.LatLng(position.coords.latitude, position.coords.longitude));
    
              // Create the map
              var myOptions = {
                zoom : 16,
                center : path[0],
                mapTypeId : google.maps.MapTypeId.ROADMAP
              }
              var map = new google.maps.Map(document.getElementById("map"), myOptions);
    
              /*
              Uncomment this block if you want to set a path
    
              // Create the polyline's points
              for(var i = 0; i < 5; i++) {
                // Create a random point using the user current position and a random generated number.
                // The number will be once positive and once negative using based on the parity of i
                // and to reduce the range the number is divided by 10
                path.push(
                  new google.maps.LatLng(
                    position.coords.latitude + (Math.random() / 10 * ((i % 2) ? 1 : -1)),
                    position.coords.longitude + (Math.random() / 10 * ((i % 2) ? 1 : -1))
                  )
                );
              }
              */
    
              // Create the array that will be used to fit the view to the points range and
              // place the markers to the polyline's points
              var latLngBounds = new google.maps.LatLngBounds();
              for(var i = 0; i < path.length; i++) {
                latLngBounds.extend(path[i]);
                // Place the marker
                new google.maps.Marker({
                  map: map,
                  position: path[i],
                  title: "Point " + (i + 1)
                });
              }
              // Creates the polyline object
              var polyline = new google.maps.Polyline({
                map: map,
                path: path,
                strokeColor: '#0000FF',
                strokeOpacity: 0.7,
                strokeWeight: 1
              });
              // Fit the bounds of the generated points
              map.fitBounds(latLngBounds);
            },
            function(positionError){
              $("#error").append("Error: " + positionError.message + "<br />");
            },
            {
              enableHighAccuracy: true,
              timeout: 10 * 1000 // 10 seconds
            });
          });
        </script>
        <style type="text/css">
          #map {
            width: 500px;
            height: 400px;
            margin-top: 10px;
          }
        </style>
      </head>
      <body>
        <h1>Create a polyline</h1>
        <div id="map"></div>
        <p id="error"></p>
      </body>
    </html>

    结论

    本文介绍了用于绘制连接地图上多个点的折线的类,属性和方法。 正如您在本系列文章中所看到的那样,这些API可用于构建许多出色的服务,从而改善用户体验。 当然,您可以做的比这里显示的还要多。 通过探索Google Maps API中的其他类,可能性几乎是无限的。

    From: https://www.sitepoint.com/create-a-polyline-using-the-geolocation-and-the-google-maps-api/

    展开全文
  • 在 SharePoint 2013 中针对地理位置字段创建地图视图 了解如何通过在 SharePoint 2013 列表中使用地图视图来显示位置信息。您可以通过 SharePoint 用户界面 (UI) 手动创建地图视图,也可以使用新的 ...
    在 SharePoint 2013 中针对地理位置字段创建地图视图

    了解如何通过在 SharePoint 2013 列表中使用地图视图来显示位置信息。您可以通过 SharePoint 用户界面 (UI) 手动创建地图视图,也可以使用新的 Geolocation 字段类型以编程方式创建地图视图。

    适用范围:

     

    SharePoint 2013 引入了一个名为 Geolocation 的新字段类型,可允许您使用位置信息批注 SharePoint 列表。例如,您现在可以使列表具有位置感知性并通过 Bing 地图显示经度和纬度坐标。通常,在地图视图中会将一个条目视作一个标注。

    若要在 SharePoint 列表中显示地图视图,您必须使用 Bing 地图服务。如果您使用 UI 创建列表,则 Geolocation 字段将不可用。此字段必须以编程方式插入。有关如何以编程方式呈现和处理此数据类型的信息,请参阅集成 SharePoint 2013 中的位置和映射功能

    通过 Geolocation 字段和地图视图,您可以通过将 SharePoint 中的数据集成到 Web 和移动应用程序中的映射体验,从而为任何信息提供空间上下文。本文并未介绍如何呈现 Geolocation 字段或提供关于创建基于位置的移动应用程序的开发人员指导;但本文提供了关于以编程方式以及使用 Bing 地图从 SharePoint UI 中创建地图视图的说明。

    必须在每台 SharePoint 前端 Web 服务器上均安装名为 SQLSysClrTypes.msi 的 MSI 包,才能查看 Geolocation 字段值或列表中的数据。此软件包安装的组件可在 SQL Server 2008 中实现新几何、地理和层次 ID 类型。默认情况下,为 SharePoint Online 安装此文件。但是,没有为 SharePoint Server 2013 的内部部署安装此文件。您必须是 Farm Administrators 组的成员才能执行此操作。若要下载 SQLSysClrTypes.msi,请参阅 Microsoft 下载中心中的 Microsoft SQL Server 2008 R2 SP1 功能包(针对 SQL Server 2008)或 Microsoft SQL Server 2012 功能包(针对 SQL Server 2012)。

    • 对 SharePoint 2013 列表的访问权限,具有创建视图的足够权限。

    • 包含 Geolocation 列的 SharePoint 2013 列表

    • 场级别或网站级别的有效 Bing 地图密钥集,可从 Bing 地图帐户中心获得

      重要说明重要说明

      您负责遵守适用于您使用 Bing 地图密钥的条款和条件,以及就传递给 Bing 地图服务的数据向用户披露您的应用程序。

    • Visual Studio 2012 或 Visual Studio 2010

    地图视图是显示地图(采用从 Bing 地图服务获取的数据)的 SharePoint 视图,使用来自 Geolocation 字段类型的经度和纬度条目。当 SharePoint 列表上有可用的 Geolocation 字段类型时,即可以编程方式或从 SharePoint UI 中创建地图视图。在该列表中,SharePoint 2013 将地点显示在由 Bing 地图支持的地图上。此外,名为“地图视图”的新视图类型在 Bing 地图 Ajax 控件 V7 上将列表项显示为标注,其中列表项将以卡片的形式显示在左窗格中。

    注释注释

    任何 SharePoint 2013 列表最多只能有两个 Geolocation 列;不能在同一列表中添加第三个 Geolocation 列。一个地图视图中只能有一个 Geolocation 列。您可以创建使用不同的 Geolocation 列的多个地图视图。

    以下步骤演示如何从 SharePoint 2013 UI 中创建地图视图。

    1. 打开带有 Geolocation 列的 SharePoint 2013 列表。

    2. 从 ECB(编辑控制块)菜单中选择“创建视图”,如图 1 所示。

      图 1. 从 ECB 菜单中创建视图

      SharePoint 列表的“编辑控制框”菜单
    3. 在“选择视图类型”页上,选择“地图视图”,如图 2 所示。

      图 2. 选择视图类型

      从视图类型列表中选择“地图视图”
    4. 选择视图类型后,您可以选择各种字段以在地图视图中显示,如图 3 所示。

      图 3. 为地图视图选择字段

      选择要在视图中显示的字段
      注释注释

      创建地图视图至少需要一个 Geolocation 字段。不能为地图视图选择多个 Geolocation 字段,但可以创建使用两个不同的 Geolocation 字段的两个不同的地图视图。

    5. 在添加完必需的 Geolocation 字段和您需要的任何其他字段后,选择“确定”。即会创建一个地图视图,如图 4 所示。

      图 4. 完成后的地图视图

      已完成的地图视图

    按照下列步骤以编程方式为 SharePoint 列表创建地图视图。

    1. 启动 Visual Studio。

    2. 在菜单栏上,选择“文件”、“新建项目”。将打开“新建项目”对话框。

    3. 在“新建项目”对话框中,在“已安装的模板”框中选择“C#”,然后选择“控制台应用程序”模板。

    4. 给项目命名,然后选择“确定”按钮。

    5. Visual Studio 即会创建项目。添加对以下程序集的引用,并选择“确定”。

      • Microsoft.SharePoint.Client.dll

      • Microsoft.SharePoint.Client.Runtime.dll

    6. 在默认的 .cs 文件中,按下列方式添加 using 指令。

      using Microsoft.SharePoint.Client;

    7. 在 .cs 文件中,将下面的代码添加到 Main 方法。

       
      No code example is currently available or this language may not be supported.
      
    8. <Site Url><List Title> 替换为有效值。

    9. 导航到该列表。您应当可以看到新建的视图具有您在上述代码中指定的名称。

    地图视图提供三种颜色的标注(如图 5 所示),每种颜色均可提供不同的用户体验。地图上的标注的颜色与左窗格中相对应项的标注的颜色相同。

    • 橙色   表示该项的 Geolocation 字段是使用 Bing 地图服务映射的。

    • 灰色   表示该项的 Geolocation 字段为空。该项不能使用 Bing 地图服务来映射,因此,地图上不会出现对应于该项的任何标注。

    • 蓝色   当用户将鼠标悬停在某个列表项上时,该标注的颜色将由橙色变成蓝色。左窗格中的标注和地图上相对应的标注的颜色均会改变

    图 5. 带有不同标注颜色的地图视图

    地图视图中的图钉的不同颜色

    在创建地图视图后,所有项均会显示为标注。用户可以通过将鼠标悬停在标注上来获取有关项的详细信息,如图 6 所示。

    图 6. 地图视图中用户的标注体验

    地图视图上的图钉的用户体验
     


    参考 ID:
     

    转载于:https://www.cnblogs.com/sp007/p/3183722.html

    展开全文
  • 这篇文章将简要谈谈如何利用CoreLocation来获取地理位置,并且会涉及到如何在iPhone的模拟器进行调试。 要利用CoreLocation,必须在frameworks里面加入“CoreLocation.framework”。在最新版本的

    (推荐本人创建的一个iOS开源代码收集网站 Code4App

    LBS是移动应用的一个大热点。很多App都允许(或者说要求)获取用户的地理位置。这篇文章将简要谈谈如何利用CoreLocation来获取地理位置,并且会涉及到如何在iPhone的模拟器进行调试。

    要利用CoreLocation,必须在frameworks里面加入“CoreLocation.framework”。在最新版本的Xcode(4.x)中加入新的framework步骤如下:

    单击项目的target =>在出来的xcodeproj面板中点击“Link Binary With Libraries” =>点击“+”,然后选择需要的framework即可。

    加入“CoreLocation.framework”之后,就可以在类中import <CoreLocation/CoreLocation.h>,这样就可以使用所有与CoreLocation相关的类了。

    下面开始在项目里面实现获取当前地理位置:

    第一步:

    先在类中定义两个成员变量:

    [plain] view plaincopy
    1. CLLocationManager *locationManager;  
    2. CLLocation *checkinLocation;  
    这两个变量,locationManaager用于获取位置,checkinLocation用于保存获取到的位置信息。

    第二步:

    在类中实现CLLocationManagerDelegate,并实现以下方法:

    [plain] view plaincopy
    1. - (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation   
    2.                         fromLocation:(CLLocation *)oldLocation {  
    3.     checkinLocation = newLocation;  
    4.     //do something else  
    5. }  

    从代码可以看到,运行到这个方法的时候,locationManager已经得到了当前的位置,所以在这个方法中应该把获取到的当前位置保存到变量checkinLocation中。

    第三步:

    在第二步实现的方法其实是被CLLocationManager中的方法startUpdatingLocation调用的,也就是说,当程序运行 locationManager.startUpdatingLocation的时候,第二步实现的方法就会被调用。

    假设点击按钮checkIn的时候,程序会获取当前位置,那么就需要在这个checkIn按钮对应的动作方法(假设是方法名就叫做checkIn)中调用locationManager.startUpdatingLocation。具体如下:

    [plain] view plaincopy
    1. - (void) setupLocationManager {  
    2.     self.locationManager = [[[CLLocationManager alloc] init] autorelease];  
    3.     if ([CLLocationManager locationServicesEnabled]) {  
    4.     NSLog( @"Starting CLLocationManager" );  
    5.     self.locationManager.delegate = self;  
    6.     self.locationManager.distanceFilter = 200;  
    7.         locationManager.desiredAccuracy = kCLLocationAccuracyBest;  
    8.     [self.locationManager startUpdatingLocation];  
    9.     } else {  
    10.         NSLog( @"Cannot Starting CLLocationManager" );  
    11.         /*self.locationManager.delegate = self;  
    12.     self.locationManager.distanceFilter = 200;  
    13.         locationManager.desiredAccuracy = kCLLocationAccuracyBest;  
    14.     [self.locationManager startUpdatingLocation];*/  
    15.     }  
    16. }  

    在上面的代码中,程序首先判断机器(iPhone/iPad)是不是开启了地理位置的服务(locationServicesEnabled)。如果开启了,那么就开始进行定位([self.locationManager startUpdatingLocation];)。在定位之前要设置一些有关位置的属性,比如distanceFilter,desiredAccuacy等等。至于这些属性有什么用,可以查看xcode的文档,这里就不在赘述。值得注意的是,一定要设置locationManager的delegate是类本身,这样startUpdatingLocation运行的时候才会调用第二步实现的方法。

    如果机器没有开启地理位置的服务,那么就不需要做多余的动作。注意到上面代码中有一部分代码被注释掉了,这部分代码这是为了能够在模拟器中调试程序。

    下面谈谈如何在模拟器中调试获取当前地理位置的程序。

    如果程序在真机中调试,只要真机开启了定位功能(GPS或者无线定位),那么就可以调试成功的。但是如果在模拟器中调试,就要做点额外功夫。由于在模拟器中是无法开启地理位置的服务(locationServicesEnabled总是等于false),所以需要将当前位置(或者任意位置)hardcode进程序当中,以便调试。

    将下面的代码添加进类中(实现了获取当前位置的代码所在的类文件),添加的位置在import代码段的后面:

    [plain] view plaincopy
    1. @implementation CLLocationManager (TemporaryHack)  
    2.   
    3. - (void)hackLocationFix  
    4. {  
    5.     //CLLocation *location = [[CLLocation alloc] initWithLatitude:42 longitude:-50];  
    6.     float latitude = 26.876812;   
    7.     float longitude = 100.22569199999998;  //这里可以是任意的经纬度值  
    8.     CLLocation *location= [[[CLLocation alloc] initWithLatitude:latitude longitude:longitude] autorelease];  
    9.     [[self delegate] locationManager:self didUpdateToLocation:location fromLocation:nil];       
    10. }  
    11.   
    12. - (void)startUpdatingLocation  
    13. {  
    14.     [self performSelector:@selector(hackLocationFix) withObject:nil afterDelay:0.1];  
    15. }  
    16.   
    17. @end  

    添加完这段代码之后,同时将第三步实现的方法中被注释掉的代码恢复,也就是即使locationServicesEnabled等于false也调用startUpdatingLocation方法,这样程序就可以在模拟器中正常运行了。但是注意的是,这时候获取的当前位置就是是上面代码中你自己所设定的经纬度值。

    整个过程都十分简单,因为大部分工作都被封装起来了。

    获得当前位置之后,就可以在地图上显示,下篇文章将会谈谈如何用地图显示地理信息,包括自定义Annotation。

    http://blog.csdn.net/whaomian/article/details/6807739

    展开全文
  • maps-api-v3 在“使用Google Maps API获取路线”中 ,我解释了如何创建一种服务,该服务可使用户找到从一个地址到另一个地址的路线。 在本文中,您将学习如何结合使用Geolocation API和Google Maps API在连接多个点...
  • 地理位置-源码

    2021-02-16 07:03:41
    如何计划部署更改? 您要部署一组更改,还是创建一个独立的应用程序? 选择一种。 配置您的Salesforce DX项目 sfdx-project.json文件包含sfdx-project.json有用配置信息。 有关此文件的详细信息,请参见《 ...
  • 基于ES的地理位置搜寻以及热力图Java API开发ES的地理位置搜寻以及热力图地理位置搜寻GeoShape的索引原型创建创建索引创建转化为JSON的相关实体类基本的工具类入参类具体的实现新的改变功能快捷键合理的创建标题,有...
  • 本文介绍如何创建Redis实例,使用户能够了解创建Redis实例的大体流程。适合那些首次选择Redis实例的用户和想要了解如何创建Redis实例的用户查看。 使用下列方法中任意一种打开购买页: ...地域 实例所在的地理位置。购.
  • 有时候项目需要,需要很多地理位置的经纬度,如果这时候手动查找,效率太低,这里介绍如何调用百度地图的api来返回具体位置的经纬度坐标。 首先需要注册百度的账号,之后申请创建应用,给应用起个名字,这时候就有...
  • 通过阿里云RDS管理控制台或API创建RDS实例。...在左上角选择实例所在的地域,即实例所在的地理位置。 说明 购买后无法更换地域。 请根据目标用户所在的地理位置就近选择地域,提升用户访问速度。 请确保RDS实
  • 在2015年初我们创建了一个微服务,它只做一件事(也确实做得很好)就是地理围栏查询。一年后它成了Uber高频查询(QPS)服务,本次要讲的...地理围栏在Uber被广泛用于基于地理位置的设置。向用户展示给定区域有哪些产
  • 首先需要了解什么是域名、域名解析和域名服务器,域名是Internet上某一台计算机或计算机组的名称,用于在数据传输时标识计算机的数字方位(有时也指地理位置)。域名是由一串用点分隔的名字组成的字符串,通常包含组织...
  • 为了满足使用百度地图的开发者,本篇文档对如何在 sdk 2.8.0 以上实现百度地图发送地理位置消息做讲解。 效果图 集成前准备 注册百度地图开放平台,可能需要审核开发者身份 创建 Android 应用, 生成 sha1 码获取...
  • 需求:本章博客将用最简单的方式介绍如何集成google地图,实现客户地理位置的展示。 思路: 1、在Account中自定义字段经纬度等; 2、编写Controller类来获取系统中所有客户的经纬度等数据; 3、编写VF,使用google ...
  • 查找并跟踪位置坐标以用在各种 Web 服务中...在本文中,您将学到如何使用各种地理定位标准,以及如何使用流行的 Web 服务来创建有趣的移动混搭程序。 关于本系列​ HTML 5 是一项让人振奋的技术,这有着充分的理由...
  • 已经有一个配置了地理坐标系的图作为位置参考,以下为某流域图 属性如下 打开ArcCatalog,左侧目录树选择接下来shp想在哪个文件夹创建 左键单击选中后,在右边空白处,右键-新建-Shapefile 取名,点击编辑-地理...
  • ●地理数据库设计是指将地理信息编排为可根据地理位置进行整合的 系列数据专题(即图层)。因此要进行地理数据库设计,需要先确定 要使用的数据专题,然后再指定各专题图层的内容和表现形式。 如何将你的数据分门别类 ...
  • Android位置和地图使用

    2019-08-02 08:19:24
    上一节中介绍了在Android中使用Google Map的方法,这一节继续介绍如何显示地理位置。Android位置服务需要用到android.Location包。 LocationManager Service 位置服务的核心组件是LocationManager系统服务,在...
  • 当出现销售瓶颈时,营销人员和销售商可能会做出反应包括彻底改变他们的整个战略,或者将他们的客户...以地理位置为动力的营销也能让专业人士通过巧妙的推动,及时实现销售,最终转化为领先优势。 地理定位营销主要有
  • 查找并跟踪位置坐标以用在各种 ...在本文中,您将学到如何使用各种地理定位标准,以及如何使用流行的 Web 服务来创建有趣的移动混搭程序。 关于本系列​ HTML 5 是一项让人振奋的技术,这有着充分的理由。这将会是...
  • 测试数据准备 为了方便测试查询,我们首先准备一个静态的测试数据源:// 创建包含地理位置的引用数据 var assetData = new [] { new { AssetId = 1, AssetName = "My Stuff", Latitude ...
  • 日常开发中,特别是做微信项目时,经常会遇到根据用户地理位置来展示附近商家的功能,通常解决这种问题的思路是,后台设置商家的经纬度,然后再根据前台传的经纬度进行计算,具体经纬度转换以及前台如何获取,本篇...

空空如也

空空如也

1 2 3 4 5 ... 7
收藏数 138
精华内容 55
关键字:

如何创建地理位置