LocusMaps Mobile SDK简介

上面的应用程序屏幕截图是使用LocusLabs iOS SDK渲染的洛杉矶国际机场的鸟瞰图。 使用我们先进的制图技术和场馆管理系统进行编译,它不仅可以捕获详细的空间几何图形,还可以捕获场馆元数据,例如兴​​趣点和路线选项。 在本文的结尾,我们提供了一些代码片段,以说明使用我们的SDK执行操作(例如显示兴趣点,查找方向或执行搜索)有多么容易。

影片示范

以下视频简要演示了我们的SDK的功能,您将看到:

  • LAX地图的细节和丰富性
  • 停车后识别用户的位置,并通过地图上熟悉的蓝点显示该位置(iBeacon,Apple或Google映射)
  • 提供给登机台的方向以及用户使用它们导航到办公桌的方向
  • 在地图上签到后向用户显示的登机口
  • 用户搜索靠近其门口的餐厅
  • 地图提供了有关景点等景点的详细信息,例如餐厅,包括位置,照片,描述,电话号码,元数据(如菜单)等等

还有几件事

上面视频中未显示的我们SDK的其他一些重要功能包括:

  • 固定地图标记,可让您永久性地突出兴趣点,例如地图上的休息室或登机柜台
  • 推荐的地点和搜索,使用户仅需点击1或2次即可找到预设的兴趣点
  • 强大的搜索功能使用户不仅可以在地图的任何级别上,还可以在其附近区域中按名称,类别或标签找到任何兴趣点
  • UI和地图自定义,可让您将公司品牌应用于地图本身以及用户界面
  • 开箱即用的几种语言本地化版本

代码样例

我们的本机iOS和Android SDK非常易于使用,仅需几行代码,我们强大而功能丰富的地图可供您使用。 以下各节说明如何使用我们的SDK执行一些最常见的任务。

设定

在使用SDK之前,需要进行一些设置,之后所有任务仅需要几行代码,在某些情况下甚至只需1行!

  //使用LocusLabs提供的accountId初始化LocusLabs SDK 
  LLLocusLabs.setup()。accountId =“ A11F4Y6SZRXH4X” 
  //创建一个新的LLMapView,注册为其委托并将其添加为子视图 
  mapView = LLMapView(框架:view.bounds) 
  mapView?.autoresizingMask = [.flexibleWidth,.flexibleHeight] 
  mapView?.delegate =自我 
  view.addSubview(mapView!) 
  //获取LLVenueDatabase的实例,注册为其委托并加载场所LAX 
  ConventionalDatabase = LLVenueDatabase(mapView:mapView) 
  destinationDatabase.delegate =自我 

显示地图

仅需要一个调用“ loadVenueAndMap”即可异步加载地图。 我们的SDK不会自动使地图保持最新状态,还会缓存它们以供离线使用:

  //加载会场LAX异步 
  destinationDatabase.loadVenueAndMap(“ lax”){(_venue:LLVenue ?, _map:LLMap ?, _floor:LLFloor ?, _marker:LLMarker?) 
  self.mapView?.map = _map 
  self.venue = _venue 
  } 

显示兴趣点

显示兴趣点(POI)的详细信息(如照片,位置等)仅需要一种方法。 地图甚至会自动平移并放大POI。 一旦显示了POI,用户也可以轻松获取从该POI到任何其他POI的路线。 在这种情况下,我们将向60号登机口附近的星巴克展示:

  func mapViewReady(_ mapView:LLMapView!){ 
  mapView?.showPoi(byPoiId:“ 870”) 
  } 

显示方向

显示任何两个兴趣点之间的方向也只需一种方法! 下面的代码显示了如何显示从6号航站楼的Blue20条到7号航站楼的75A门的方向。显示的导航界面为用户提供了简单的逐步说明,说明如何到达目的地。

 让point1LatLon = LLLatLng(lat:33.940627,lng:-118.401892) 
 让point2LatLon = LLLatLng(lat:33.9410700,lng:-118.399598) 
 让point1 = LLPosition(floorId:mapView?.map.floorId,latLng:point1LatLon) 
 让point2 = LLPosition(floorId:mapView?.map.floorId,latLng:point2LatLon) 
  mapView?.navigate(fromStart:point1,end:point2) 

执行搜索

每个场馆都有一个庞大的数据库,不仅包含地图本身的信息,而且还包含其中的每个景点的信息。 搜索该数据库非常容易,只需几行代码:

  //获取搜索实例并注册为其委托 
  self.search = self.venue!.search() 
  self.search?.delegate =自我; 
  func search(_ search:LLSearch !, results searchResults:LLSearchResults!){ 
 在searchResults.results中将searchResult作为!  [LLSearchResult] { 
 让位置= searchResult.position 
  createCircle(位置:位置!,半径:10,颜色:UIColor.yellow) 
}

结论

我们希望以上信息能使您深入了解我们SDK的丰富,强大和易于集成。 如果您想自己尝试这些方法,请使用下面的链接。

除了我们的iOS SDK外,我们还提供了Android SDK和Javascript SDK,它们可以集成到任何网页中,从而为您的客户提供高度定制且功能丰富的映射体验。

保持联系

喜欢您看到的内容吗? 有问题吗? 想知道更多?

我们很乐意听取您的意见。