Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/xpath/2.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
Android 无法解析google maps latlngObject_Android_Google Maps - Fatal编程技术网

Android 无法解析google maps latlngObject

Android 无法解析google maps latlngObject,android,google-maps,Android,Google Maps,我发现latlngObject无法解决。这是我导入的一个项目,latlngObject应该来自谷歌地图 如果你能帮助我,我会很感激的! 我发现latlngObject无法解决。这是我导入的一个项目,latlngObject应该来自谷歌地图 如果你能帮助我,我会很感激的! 为您的问题添加更多内容。latlngObject来自哪里?发布完整的代码 package com.danielZomber.places.control.service; import org.json.JSONArray

我发现latlngObject无法解决。这是我导入的一个项目,latlngObject应该来自谷歌地图

如果你能帮助我,我会很感激的!

我发现latlngObject无法解决。这是我导入的一个项目,latlngObject应该来自谷歌地图

如果你能帮助我,我会很感激的!

为您的问题添加更多内容。latlngObject来自哪里?发布完整的代码
package com.danielZomber.places.control.service;


import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;

import util.SearchNear;
import android.app.IntentService;
import android.content.ContentValues;
import android.content.Intent;
import android.util.Log;
import android.widget.EditText;

import com.danielZomber.places.R;
import com.danielZomber.places.control.GoogleAccess;
import com.danielZomber.places.model.PlacesContract;

public class ServiceSearch extends IntentService {

    private static final String TAG = "ServiceSearch";
    String query;
    Double Nlat;
    Double Nlng;

    public ServiceSearch() {
        super("ServiceSearch");
    }

    @Override
    protected void onHandleIntent(Intent intent) {

        String action = intent.getAction();
        query = intent.getStringExtra("query");
        Nlat = intent.getDoubleExtra("lat", 0);
        Nlng = intent.getDoubleExtra("lng", 0);

        if (action.equals("com.danielZomber.places.action.PLACE")) {
            Log.d(TAG, "searchPlace ACTION");
            searchPlace();

        } else if (action.equals("com.danielZomber.places.action.NEAR")) {
            Log.d(TAG, "searchNear ACTION");
            searchNear();

        }
    }

    private void searchPlace() {



        if (query == null || query.length() < 2) {
            //don't search for queries less then 2 letters
            return;
        }


        getContentResolver().delete(PlacesContract.Places.CONTENT_URI, null, null);


        String result = GoogleAccess.searchPlace(query, Nlat, Nlng);
        Log.d(TAG, result);



        try {


            JSONObject jsonResult = new JSONObject(result);


            JSONArray resultsArray = jsonResult.getJSONArray("results");

            for (int i = 0; i < resultsArray.length(); i++) {
                Log.d(TAG, "result " + i);


                JSONObject place = resultsArray.getJSONObject(i);


                String address = place.getString("formatted_address");
                String name = place.getString("name");
                double lat = latlngObject.getDouble("lat");
                double lng = latlngObject.getDouble("lng");


                Log.d(TAG, name);
                Log.d(TAG, address);


                ContentValues values = new ContentValues();
                values.put(PlacesContract.Places.NAME, name);
                values.put(PlacesContract.Places.ADDRESS, address);
                values.put(PlacesContract.Places.LAT, lat);
                values.put(PlacesContract.Places.LNG, lng);



                getContentResolver().insert(PlacesContract.Places.CONTENT_URI, values);     
            }
        } catch (JSONException e) {
            e.printStackTrace();
        }
    }

    private void searchNear() {
        if (query == null || query.length() < 2) {
            return;
        }

        getContentResolver().delete(PlacesContract.Places.CONTENT_URI,null,null);

        String result = SearchNear.searchPlaceNear(query, Nlat, Nlng);
        try {
            JSONObject placesJson = new JSONObject(result); 
            JSONArray resultsArray = placesJson.getJSONArray("results");
            Log.d(TAG, "array ");


            for (int i = 0; i < resultsArray.length(); i++) {
                Log.d(TAG, "parsing " + i);
                JSONObject placeObject = resultsArray.getJSONObject(i);
                JSONObject locationObject = placeObject.getJSONObject("geometry");
                JSONObject latlngObject = locationObject.getJSONObject("location");




                String name = placeObject.getString("name");
                double lat = latlngObject.getDouble("lat");
                double lng = latlngObject.getDouble("lng");
                String address = placeObject.getString("vicinity");



                ContentValues values = new ContentValues();

                values.put(PlacesContract.Places.NAME, name);
                values.put(PlacesContract.Places.LAT , lat);
                values.put(PlacesContract.Places.LNG , lng);
                values.put(PlacesContract.Places.ADDRESS , address);


                //insert to the provider:
                getContentResolver().insert(PlacesContract.Places.CONTENT_URI, values );



            }


        } catch (JSONException e) {
            e.printStackTrace();
        }
        Log.d(TAG,"result - " + result);        
    }






    }