当前位置: 首页 > 知识库问答 >
问题:

IOS 8定位服务不工作

章青青
2023-03-14

摘要:以前运行的应用程序无法运行测地代码和反向测地代码。反向测地代码失败,因为测地代码无法提供位置。然后,我使用苹果自己的LocateMe示例代码,还启用了隐私下的定位服务。我还将Location services下的“Allow Location Access”(允许位置访问)启用为Always(始终),但在运行苹果的LocateMe或我自己的应用程序后,此设置会自动变回nothing(无)。

复制步骤:获取位置的位置服务SDK似乎已经崩溃。之前在iPhone 5上运行的软件在升级到IOS 8后停止工作。第一步。加载示例LocateMe苹果的示例核心位置示例项目;步骤2.在系统设置下,启用定位服务,并将应用程序的“允许定位服务”更改为始终。

获取位置失败,“始终”设置被删除。

预期结果:获取位置和位置更新。

实际结果:见上文。

版本:IOS 8.0.0和8.0.2

笔记:

配置:iPhone 5和iPhone 6 Plus

添加这个也没有帮助:[self.location管理器请求所有授权];

共有1个答案

欧阳正德
2023-03-14

使用

#define SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(v) \
    ([[[UIDevice currentDevice] systemVersion] compare:v options:NSNumericSearch] != NSOrderedAscending)



        if (SYSTEM_VERSION_GREATER_THAN_OR_EQUAL_TO(@"8")) {
            CLLocationManager *manager = [[LocationManager sharedInstance] clLocationManager];
            [manager requestWhenInUseAuthorization];
            [manager startUpdatingLocation]; // or what ever location function you need.
        } else {
            // The usual way for iOS <= 7
            // (Do what you did before) 
        }

除上述内容外,如果您的信息中没有UsageDescription,则必须为密钥nsLocation添加字符串值。plist文件。该值是当iOS询问用户是否授予对应用程序位置的访问权限时,Altert中显示的字符串。为了向后兼容,您可能还需要添加密钥NSLocationUsageDescription

 类似资料:
  • 我在iOS ;7上运行良好的应用程序不能在iOS ;8 SDK上运行。 没有返回位置,而且我也没有在“设置”->“位置服务”下看到我的应用程序。我在谷歌上搜索了这个问题,但什么也没有找到。会有什么问题吗?

  • 我有一个应用程序,它在iOS 7下运行良好,但当为iOS 8构建时,放松段无法工作。 我创建了一个新项目,并添加了一个模态(带有tableview控制器的导航控制器),并尝试使用一个展开模态。不幸的是,它也不起作用。正在展开到的方法在解压缩视图控制器中。展开segue是通过故事板(桌面视图控制器中的导航栏按钮)创建的。当我点击按钮时,什么都不会发生。没有日志输出,模态也不会消失。它似乎也只影响模态

  • 我有一个android应用程序,将跟踪用户的位置。它被设置为使用WiFi/网络位置服务,如果可能的话,否则使用GPS_PROVIDER服务。当有wifi连接时,它工作得很好,但当我设置只从GPS获取位置时,应用程序崩溃了。通过测试,我得到了行location=locationmanager.getlastknownlocation(locationmanager.gps_provider);实际上

  • 问题内容: 我只是用iOS 11 SDK重建了我的应用程序,试图删除现在总是出现的应用程序。我以为“很棒,那很成功”,只是发现定位服务现在根本无法正常工作。 该应用程序过去曾与iOS 10配合使用-有人听到了吗? 问题答案: 看来苹果已经添加了另一个隐私功能。用户现在可以覆盖我们并将其降级为-这意味着作为开发人员,我们现在必须在 我发现他们已经添加了新密钥 但是,使用此新密钥后,位置服务仍然无法正

  • 主要内容:实现,步骤 1,Service.java,步骤 2,Service1.java,Service2.java,步骤 3,InitialContext.java,步骤 4,Cache.java,步骤 5,ServiceLocator.java,步骤 6,ServiceLocatorPatternDemo.java,步骤 7服务定位器模式(Service Locator Pattern)用在我们想使用 JNDI 查询定位各种服务的时候。考虑到为某个服务查找 JNDI 的代价很高,服务定位器模

  • 服务定位器是一个了解如何提供各种应用所需的服务(或组件)的对象。在服务定位器中, 每个组件都只有一个单独的实例,并通过ID 唯一地标识。 用这个 ID 就能从服务定位器中得到这个组件。 在 Yii 中,服务定位器是 yii\di\ServiceLocator 或其子类的一个实例。 最常用的服务定位器是application(应用)对象,可以通过 \Yii::$app 访问。 它所提供的服务被称为a