android:从谷歌地方获取一个“关于”信息的地方

时间:2015-05-18 07:00:28

标签: android google-places-api

我正在使用Google地图构建Android应用。 有没有办法从Google Places API检索地点的信息? 我的意思是简单的文字,用几行来描述这个地方(不是地址,评级,身份等的常规属性)。只是“关于”这个地方。

谢谢。

1 个答案:

答案 0 :(得分:0)

您需要GooglePlaces API密钥,这是我的代码。

public class GooglePlacesDataSource {

private static final String URL = "https://maps.googleapis.com/maps/api/place/search/json?";
private static final String TYPES = "accounting|airport|amusement_park|aquarium|art_gallery|atm|bakery|bank|bar|beauty_salon|bicycle_store|book_store|bowling_alley|bus_station|cafe|campground|car_dealer|car_rental|car_repair|car_wash|casino|cemetery|church|city_hall|clothing_store|convenience_store|courthouse|dentist|department_store|doctor|electrician|electronics_store|embassy|establishment|finance|fire_station|florist|food|funeral_home|furniture_store|gas_station|general_contractor|grocery_or_supermarket|gym|hair_care|hardware_store|health|hindu_temple|home_goods_store|hospital|insurance_agency|jewelry_store|laundry|lawyer|library|liquor_store|local_government_office|locksmith|lodging|meal_delivery|meal_takeaway|mosque|movie_rental|movie_theater|moving_company|museum|night_club|painter|park|parking|pet_store|pharmacy|physiotherapist|place_of_worship|plumber|police|post_office|real_estate_agency|restaurant|roofing_contractor|rv_park|school|shoe_store|shopping_mall|spa|stadium|storage|store|subway_station|synagogue|taxi_stand|train_station|travel_agency|university|veterinary_care|zoo"; //all places

private static String key = null;

public GooglePlacesDataSource(Resources res) {
    if (res == null) throw new NullPointerException();

    key = res.getString(R.string.google_places_api_key); //add string with your's google places api key
}

@Override
public String createRequestURL(double lat, double lon, double alt, float radius, String locale) {
    try {
        return URL + "location="+lat+","+lon+"&radius="+(radius*1000.0f)+"&types="+TYPES+"&sensor=true&key="+key;
    } catch (Exception e) {
        e.printStackTrace();
        return null;
    }
}

/**
 Parse URL and return List of Object
 */

@Override
public List<Object> parse(String URL) {
    if (URL == null) throw new NullPointerException();

    InputStream stream = null;
    stream = getHttpGETInputStream(URL);
    if (stream == null) throw new NullPointerException();

    String string = null;
    string = getHttpInputString(stream);
    if (string == null) throw new NullPointerException();

    JSONObject json = null;
    try {
        json = new JSONObject(string);
    } catch (JSONException e) {
        e.printStackTrace();
    }
    if (json == null) throw new NullPointerException();

    return parse(json);
}}