簡體   English   中英

React Native App 沒有從 Android Emulator 獲取位置

[英]React Native App is not getting location from Android Emulator

首先,我會讓你知道這個問題解決了我的部分問題,但不是全部:

模擬器的位置模擬不起作用

我設法讓模擬器的位置提供程序工作(使用谷歌地圖應用程序驗證它),但我的 React Native 應用程序沒有獲得位置。 它在真實設備上運行,所以我想說這更多是應用程序和模擬器之間的問題。

所以正如我所說,我在谷歌地圖應用程序中得到了這個位置:

在此處輸入圖像描述

我的模擬器規格:

在此處輸入圖像描述

我在我的 React App 中所做的如下:

在 React 異步操作中:(適用於真實設備)

return navigator.geolocation.getCurrentPosition(
  (position) => {
    let initialCenterPosition = {
      latitude : position.coords.latitude,
      longitude : position.coords.longitude
    }

    dispatch(requestInitialCenterPositionSuccess(initialCenterPosition))
  },
  (error) => {
    dispatch(requestInitialCenterPositionError(error))
  },
  {enableHighAccuracy: true, timeout: 10000, maximumAge: 0}
)

我的 Android Manifest XML 中的當前權限以防萬一:

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />

build.graddle 文件中的我的 Sdk 和 Build Tools 版本:

compileSdkVersion 23
buildToolsVersion "23.0.3"

還使用 builtToolsVersion 對其進行了測試:“24.0.2”

在 getCurrentPosition 函數中將 enableHighAccuracy 切換為 false 不會做任何改變。

在我的 React Native 應用程序規范中,我是否應該注意另一個方面,以便它可以工作? 對我來說,我在真實設備上沒有任何問題似乎很奇怪

謝謝大家

設置為enableHighAccuracy false,問題就解決了

{enableHighAccuracy: false, timeout: 10000, maximumAge: 0}

更改位置設置后,您應該在設備中重新啟動。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM