使用Android中的Place picker google API获取当前位置坐标

时间:2016-08-22 18:32:42

标签: android google-maps google-places-api

我想用位置字段保存用户表单信息。对于位置,我想在用户点击地图上的位置和填充后的位置到表单时,在某个按钮点击和位置上打开谷歌地图。

我是android新手,发现地方选择器是相关的解决方案,所以 我使用了Place Picker Google API,我可以打开谷歌地图,当我将箭头移到首选位置并单击选择此位置(显示黑色,现在坐标显示在该位置下)

确认框打开,带有2个选项:

1。)更改位置
2.)选择(禁用模式)

我想选择匿名位置并返回主要活动。

以下是我的代码:

private TextView get_place;
int PLACE_PICKER_REQUEST    =   1;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    get_place   =   (TextView)findViewById(R.id.textView1);
    get_place.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View view) {
            PlacePicker.IntentBuilder builder   =   new PlacePicker.IntentBuilder();
            Intent intent;
            try {
                intent  =   builder.build(getApplicationContext());
                startActivityForResult(intent,PLACE_PICKER_REQUEST );
            } catch (GooglePlayServicesRepairableException e) {
                e.printStackTrace();
            } catch (GooglePlayServicesNotAvailableException e) {
                e.printStackTrace();
            }
        }
    });
}

protected void onActivityResult( int requestCode , int resultCode , Intent data ){
    if( requestCode == PLACE_PICKER_REQUEST)
    {
        if(resultCode == RESULT_OK)
        {
            Place place =   PlacePicker.getPlace(data,this);
            Double latitude = place.getLatLng().latitude;
            Double longitude = place.getLatLng().longitude;
            String address = String.valueOf(latitude)+String.valueOf(longitude);
            get_place.setText(address);
        }
    }
}

请告诉我,如果还有其他最佳解决方案。 代码回复将非常有用或参考链接。

1 个答案:

答案 0 :(得分:0)

您需要从google开发人员api控制台启用地点