Tag: Uber

制作UBER需要多少钱?

身处这个行业,并在App design Studio建立了2个类似Uber的应用程序 ,这就是我的答案。 让我们一一剖析整个想法和应用程序。 重要功能 为了确定Uber应用程序的开发价格,我们需要指定该应用程序的所有基本功能。 GPS,地图和路线图 登记匹配系统 路线和方向 通知与沟通 付款整合 汽车和驾驶员详细信息 评分 让我们更多地分析功能。 GPS,地图和路线图 向客户提供任何实物商品或服务交付的应用程序必须处理映射。 出租车预订应用程序倾向于依赖以下地图和地理位置功能:(1)识别设备的位置;(2)提供行车路线;(3)绘制/突出显示路线;以及(4)与其他地图软件集成。 像Uber这样的建筑应用程序都是关于GPS的。 它用于识别乘客和驾驶员的当前位置。 使用地图和定位可以轻松找到彼此。 为了确定路线并确定行程成本,您需要一个路线服务器。 通常,最好的选择是使用平台固有的地图。 例如,对于Android,这些将是Google Maps。 Uber iOS应用程序使用CoreLocation框架来定位用户的纬度和经度(location)。 CoreLocation框架提供了一些类和协议来配置和安排位置传递,并将位置事件发送到服务器。 CoreLocation框架还允许Uber定义地理区域,并在设备越过定义的边界时监视设备的移动。 使用CoreLocation框架有两种方法可以做到这一点-地理区域监视和信标区域监视(使用iOS设备的机载无线电)。 它们都可以在后台运行。 * iBeacon是一种iOS技术,Apple称之为“一种新型的低功耗,低成本发射器,可以通知附近的iOS设备它们的存在。”信标区域是由设备与蓝牙低能耗信标的接近程度定义的区域。 (使用Bluetooth Low Energy 4.0的发射机广播兼容或智能设备可以看到的信号)。 Android版本的Uber应用的地理位置是使用Google的Location API实现的。 他们可以智能地管理基础定位技术,同时满足实现定位功能的各种开发需求。 登记匹配系统 像Uber这样的应用程序为普通用户提供了几种注册方法,并且从一开始就要求电话号码。 对于驾驶员,此过程包括亲自拜访公司以及提供其文件的扫描件。 匹配系统是一个组件,它使乘客能够快速找到乘车路线并允许驾驶员接受乘车要求。 为了正常工作,需要考虑特定驾驶员和乘客的位置以及驾驶员的状态(忙碌或准备工作)。 看到骑行请求后,驾驶员通常有大约15秒钟的时间接受请求。 尽管有些服务允许您从可用的服务中自己选择驾驶员,但这会使系统复杂化,并使订购汽车的过程更长。 路线和方向 为了在出租车应用程序内的地图上显示点对点方向,iOS Uber应用程序的开发人员使用了MapKit。 注册为路由应用程序后,即可将路线信息提供给“地图”应用程序和用户设备上的所有其他地图绘制软件。 Google Maps Android API […]

iOS应用中的位置权限(始终或在使用时)

定位服务一直是Apple向开发人员提供的功能最强大的框架/ API之一,因此,您可以找到我们经常使用的大多数(如果不是全部)应用中正在使用的定位服务。 核心位置框架为开发人员提供了多种跟踪用户位置的方法,今天我们将讨论两种最常见的方法-要求“使用时”和“始终”请求位置访问。 顾名思义,“使用中”授权可让您的应用在前台或活动状态下访问您的位置,而“始终”授权可让您的应用访问其位置(即使在后台)。 在不过多讨论细节的情况下,让我们谈谈如何在应用程序中请求这些权限。 根据您的要求,您必须在info.plist文件中包括以下密钥: 对于“始终”授权,包括-NSLocationAlwaysUsageDescription” 对于“使用时”授权,请包括-“ NSLocationWhenInUseUsageDescription” 这些键的值应为文本字符串,解释为什么首先需要这些权限,并且在请求权限时显示的警报中会向用户显示相同的文本字符串。 如果您未能在info.plist文件中添加适当的密钥,则不会向用户显示位置提示。 如果我的应用程序可以同时访问前台和后台位置,为什么不总是使用该选项? 就像有人正确地说的那样,强大的能力带来了巨大的责任,只有在为您的应用程序添加确定的价值时,才应请求“始终”授权。 请求“始终”授权不仅会引起隐私问题,而且在后台访问用户的位置也会影响设备的电池。 Uber最近在最近的更新中将授权从“使用时”更改为“始终”,这导致用户和技术社区的强烈反对。 优步表示,需要在后台访问位置,以改善接送服务,客户支持和安全目的。 用户唯一可用的选项是允许“始终”访问,或者在应用程序内收到以下提示,从而消除了他们作为Uber用户最喜欢该应用程序的“易用性” 。 那么,作为开发人员,我还有哪些其他选择? 如果我希望“始终”访问权限在我的应用程序中提供某些丰富功能,但同时又考虑到用户的隐私或电池使用情况,同时又为用户提供了“使用中”权限的选项,并且仍为他们提供使用权限,该怎么办?很棒的用户体验。 是否可以让您的用户在“始终”或“在使用中”授权之间进行选择? 幸运的是,您愿意! 第一步是在info.plist文件中添加“ NSLocationWhenInUseUsageDescription ”和“ NSLocationAlwaysUsageDescription ”键。 要记住的是,仅向用户显示一次授权提示,因此您应该继续询问“始终”授权: CoreLocationManager()。requestAlwaysAuthorization 如果用户为您提供了在后台访问位置的权限,您应该会感到非常高兴,但是不幸的是,如果用户不允许,您总是可以提示用户进入设备的隐私设置并将授权更改为“使用时”。 您可以使用“ UIApplicationOpenSettingsURLString”将用户直接导航到设置应用内的应用设置屏幕。 最后,作为开发人员,我们应该构建能够为用户提供丰富直观体验的应用程序,但同时也将其隐私问题放在首位,我希望Uber团队能够理解这一点!