Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/210.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
如何在MapsActivity AndroidStudio上获取当前位置_Android_Android Studio_Location - Fatal编程技术网

如何在MapsActivity AndroidStudio上获取当前位置

如何在MapsActivity AndroidStudio上获取当前位置,android,android-studio,location,Android,Android Studio,Location,我在互联网上到处搜索,寻找一个好的教程,解释如何在MapsActivity(Android Studio)上获取用户的位置。但我没有找到,甚至在论坛上也没有找到一些解释 所以我想要的是:当用户进入我的应用程序的地图布局时,他们应该看到他们当前的位置 我创建了MapsActivity(来自Android Studio),并在清单上设置了正确的权限。但我不知道使用什么函数来获取当前用户的位置,以及将该函数放在何处 以下是MapsActivity的代码: public class MapsActivi

我在互联网上到处搜索,寻找一个好的教程,解释如何在MapsActivity(Android Studio)上获取用户的位置。但我没有找到,甚至在论坛上也没有找到一些解释

所以我想要的是:当用户进入我的应用程序的地图布局时,他们应该看到他们当前的位置

我创建了MapsActivity(来自Android Studio),并在清单上设置了正确的权限。但我不知道使用什么函数来获取当前用户的位置,以及将该函数放在何处

以下是MapsActivity的代码:

public class MapsActivity extends FragmentActivity implements OnMapReadyCallback {

    private GoogleMap mMap;

    private GoogleApiClient client;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_maps);
        // Obtain the SupportMapFragment and get notified when the map is ready to be used.
        SupportMapFragment mapFragment = (SupportMapFragment) getSupportFragmentManager()
                .findFragmentById(R.id.map);
        mapFragment.getMapAsync(this);

        // ATTENTION: This was auto-generated to implement the App Indexing API.
        // See https://g.co/AppIndexing/AndroidStudio for more information.
        client = new GoogleApiClient.Builder(this).addApi(AppIndex.API).build();
    }



    @Override
    public void onMapReady(GoogleMap googleMap) {
        mMap = googleMap;

        // Add a marker in Paris and move the camera
        LatLng paris = new LatLng(48.858930, 2.350831);
        mMap.addMarker(new MarkerOptions().position(paris).title("Marker in Paris"));
        mMap.moveCamera(CameraUpdateFactory.newLatLng(paris));
    }
}
多谢各位

在Google API客户端提供的onConnected()回调中执行此操作,该回调在客户端准备就绪时调用。以下代码片段演示了请求和响应的简单处理:

这将为您提供最后一个位置。然后你可以用上面的代码把相机移到这里。更多信息请访问

在GoogleAPI客户端提供的onConnected()回调中执行此操作,该回调在客户端准备就绪时调用。以下代码片段演示了请求和响应的简单处理:

这将为您提供最后一个位置。然后你可以用上面的代码把相机移到这里。更多信息请访问


你试过什么吗。你可以尝试写在@iOSDeveloper此处接受的答案已弃用。对于api-23,您还需要在运行时向用户请求位置权限,请参见此处:非常感谢!你试过什么吗。你可以尝试写在@iOSDeveloper此处接受的答案已弃用。对于api-23,您还需要在运行时向用户请求位置权限,请参见此处:非常感谢!有效:)
public class MainActivity extends ActionBarActivity implements
ConnectionCallbacks, OnConnectionFailedListener {
...
@Override
public void onConnected(Bundle connectionHint) {
mLastLocation = LocationServices.FusedLocationApi.getLastLocation(
        mGoogleApiClient);
if (mLastLocation != null) {
    mLatitudeText.setText(String.valueOf(mLastLocation.getLatitude()));
    mLongitudeText.setText(String.valueOf(mLastLocation.getLongitude()));
    }
  }
}