Android位置(经度和纬度)

时间:2018-10-24 05:17:47

标签: java android latitude-longitude

我正在尝试找出其他/所需位置的纬度和经度。请记住,我并不是要获取当前位置的纬度和经度。

我还需要找出其他/所需位置附近的地方吗?

预先感谢

1 个答案:

答案 0 :(得分:0)

只需转到开发人员控制台并启用places-api 请参阅this链接以启用api或this链接 并执行以下代码

activity_main.xml

<fragment
        android:id="@+id/place_autocomplete_fragment"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:name="com.google.android.gms.location.places.ui.PlaceAutocompleteFragment"
        />

MainActivity.java

String location=null;
   PlaceAutocompleteFragment autocompleteFragment = (PlaceAutocompleteFragment)
                getFragmentManager().findFragmentById(R.id.place_autocomplete_fragment);



        autocompleteFragment.setOnPlaceSelectedListener(new PlaceSelectionListener() {
            @Override
            public void onPlaceSelected(Place place) {
                // TODO: Get info about the selected place.
                Log.i(TAG, "Place===: " + place.getName());
                location=place.getName().toString();
 if(location!=null || !location.equals("")) {
                    Geocoder geocoder = new Geocoder(getApplicationContext());

                    try {
                        addresses = geocoder.getFromLocationName(location, 1);

                    } catch (IOException e) {
                        e.printStackTrace();
                    }
                    Address address = addresses.get(0);

                    String place_name = addresses.get(0).getAddressLine(0);
                    String latitude=address.getLatitude();
                    String longitude= address.getLongitude());


                }

            }

            @Override
            public void onError(Status status) {
                // TODO: Handle the error.
                Log.i(TAG, "An error occurred===: " + status);
            }
        });

在manifest.xml中添加以下行

 <uses-permission android:name="android.permission.INTERNET" />

并在应用程序标签下添加

 <meta-data
            android:name="com.google.android.geo.API_KEY"
            android:value="@string/google_maps_key" />
        <meta-data
            android:name="com.google.android.gms.version"
            android:value="@integer/google_play_services_version" />

尝试此代码。