V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
BeijingBaby
V2EX  ›  Android

react native 下安卓原生定位 api 无法使用吗?

  •  
  •   BeijingBaby · 266 天前 · 3878 次点击
    这是一个创建于 266 天前的主题,其中的信息可能已经有所发展或是发生改变。
    会返回错误:[Error: Location request has been rejected: 17: API: LocationServices.API is not available on this device. Connection failed with: ConnectionResult{statusCode=SERVICE_INVALID, resolution=null, message=null}]


    得用百度或高德?
    13 条回复    2025-08-16 19:09:32 +08:00
    galileo2ai
        1
    galileo2ai  
       266 天前
    给一段你的代码?你用的是哪个 lib? 我了解有一些 location lib 确实会依赖 google play.
    BeijingBaby
        2
    BeijingBaby  
    OP
       266 天前
    @liyang582 用的是 expo-location 这个库,ios 下无任何问题,部分安卓机型会报上面的错误。
    BeijingBaby
        4
    BeijingBaby  
    OP
       266 天前
    @BeijingBaby #3

    ```
    const { coords } = await Location.getCurrentPositionAsync({
    accuracy: Location.Accuracy.Low,
    });
    ```

    的时候出现:

    [Error: Location request has been rejected: 17: API: LocationServices.API is not available on this device. Connection failed with: ConnectionResult{statusCode=SERVICE_INVALID, resolution=null, message=null}]
    chaselen
        5
    chaselen  
       265 天前
    华为手机,可能要集成 HMS Core ?
    chaselen
        6
    chaselen  
       265 天前
    @chaselen react-native-hms-location
    BeijingBaby
        7
    BeijingBaby  
    OP
       265 天前
    @chaselen #6 确实是华为,我看看这个库,thx
    1una0bserver
        8
    1una0bserver  
       265 天前 via Android
    类原生/aosp 系统未实现 network location provider/fused location provider ,这个在国外依赖于 gms ,国内是由厂商自行实现的(一般就是接入的第三方定位 API 然后做个 API 转换),国内用外版系统的 OEM 机由于众所周知的原因也用不了 google 的定位服务。这个一般都是直接在应用内接入第三方的定位 SDK ,他们是直接读取 gps 数据和 ip 等方式自己定位的。看看高德和百度的第三方定位 SDK 没有给 react native 做了适配的吧,旧点也能用,API 变动不大简单改改就行
    1una0bserver
        9
    1una0bserver  
       265 天前 via Android
    @1una0bserver 没有 -> 有没有
    bboring
        10
    bboring  
       32 天前
    同有问题。OP 后来有没有解决啊?华为的解决了吗?小米还有其他型号的能用吗?
    BeijingBaby
        11
    BeijingBaby  
    OP
       32 天前
    @bboring 用了高德
    bboring
        12
    bboring  
       31 天前
    @BeijingBaby #11 支付了 5w 授权费啊
    BeijingBaby
        13
    BeijingBaby  
    OP
       31 天前
    @bboring #12 没有,但是高德的销售确实吃相难看,企业身份注册,然后按需购买套餐,本身就可以用。他们销售天天电话轰炸,说企业必须要花 5w 授权
    我说,我都是按照官网直接付费套餐就能用了,你要是必须授权,那就关停我的账号呗,后面就再也没打电话了,账号也正常用。

    这就好比,各个云服务,本身你就可以花钱买服务、买套餐,结果告诉你企业必须还要花 5w 买授权,不然前面的套餐无效?吃相很难看。
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5120 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 33ms · UTC 08:32 · PVG 16:32 · LAX 01:32 · JFK 04:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.