Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/345.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Android FusedLocationProviderClient.requestLocationUpdates()返回相同的位置坐标_Java_Android_Fusedlocationproviderapi_Android Fusedlocation - Fatal编程技术网

Java Android FusedLocationProviderClient.requestLocationUpdates()返回相同的位置坐标

Java Android FusedLocationProviderClient.requestLocationUpdates()返回相同的位置坐标,java,android,fusedlocationproviderapi,android-fusedlocation,Java,Android,Fusedlocationproviderapi,Android Fusedlocation,我发现有两种问题像这样,但都没有答案 我正在使用FusedLocationProviderClient获取设备的位置。我使用requestLocationUpdates()提供了一个后台服务来获取位置 即使应用程序在前台,返回的方法的纬度和经度也不会改变 下面是我如何使用该类的一个片段: private FusedLocationProviderClient fusedLocationClient fusedLocationClient = LocationServices.getFusedLo

我发现有两种问题像这样,但都没有答案

我正在使用
FusedLocationProviderClient
获取设备的位置。我使用
requestLocationUpdates()
提供了一个后台服务来获取位置

即使应用程序在前台,返回的方法的纬度和经度也不会改变

下面是我如何使用该类的一个片段:

private FusedLocationProviderClient fusedLocationClient
fusedLocationClient = LocationServices.getFusedLocationProviderClient(this);
fusedLocationClient.requestLocationUpdates(new LocationRequest(), locationCallback, Looper.getMainLooper());
locationCallback
只是一种在控制台上打印经度和纬度的方法

所有权限都已授予,我正在检查清单中的权限。以下是我添加的权限:

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

<application
    android:name=".App"
    android:allowBackup="true"
    android:icon="@mipmap/ic_launcher"
    android:label="@string/app_name"
    android:roundIcon="@mipmap/ic_launcher_round"
    android:supportsRtl="true"
    android:usesCleartextTraffic="true"
    android:theme="@style/AppTheme">
    <activity android:name=".HomeActivity"></activity>
    <activity android:name=".MainActivity">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

    <service android:name=".LocationService" />
</application>

LocationService
是我试图获取位置的服务


有人知道问题出在哪里吗??我被困了好几个小时了

如果您想进行更改,应该侦听位置更新

或者,如果没有应用程序要求位置更新,它将始终返回相同的最后已知位置