2017-01-28 3 views
0

OSM 데이터베이스에서 maxspeed에 액세스해야하는 앱을 만들고 있습니다. OSM wiki 에서 api http://overpass-api.de/api/을 찾았지만 액세스 할 수있는 방법을 찾을 수 없으며 API 온라인을 검색 할 때 Forbidden 오류가 다시 발생합니다.OSM API에 액세스하는 방법

데이터베이스 앱 json을 쿼리하여 안드로이드 앱 maxspeed을 찾을 수 있도록 내 앱이 API에 액세스하도록 프로그래밍 할 수있는 방법은 무엇입니까?

+0

http://stackoverflow.com/questions/8194233/open-street-maps-api-for-android – AnixPasBesoin

+0

@AnixPas Besoin, 나는 이미 라이브러리를 가지고 있으며 그것을 내 앱으로 가져 왔습니다. 데이터베이스에 액세스해야합니다. http 주소는 위키 피 디아 페이지에 따른 API이지만 클릭하면 액세스 거부 메시지가 표시됩니다. Open Sourse가되어야하는 이유가 무엇인지 이해할 수 없습니다. –

+1

정확히 같은 용도로 사용되는 기존 Android 앱이 여러 가지 있습니다 (https://github.com/plusCubed/velociraptor). 소스를 연구하는 것이 좋습니다. 더 구체적인 질문으로 돌아 오십시오. ** 중요 사항 ** : 오버 패스 API에는 준수해야하는 사용 정책이 있습니다. 또한 OSM API와 Overpass API는 전혀 다른 API입니다. – mmd

답변

2

"금지 된"문제없이 OSMBonusPack (osmdroid의 addon lib)에 OverpassAPIProvider이 준비되어 있습니다.

필요에 정확히 맞지 않으면 소스 코드를보고 원하는 것을 구현하는 데 도움이됩니다.

private String getOsmQuery(Location location) { 
    return "[out:json];" + 
      "way(around:15," 
      + location.getLatitude() + "," 
      + location.getLongitude() + 
      ")" + 
      "[\"highway\"];out body geom;"; 
} 
: MMD 제안에 따라

편집

OverpassAPI는 "현재"최대 속도를 얻을 간단하지 않을 수 있습니다 사용 ...

, 여기에 자신의 OverpassAPI 요청 문자열을 구축하기 위해 piece of code from velociraptor입니다

도움이 될 수 있습니다 ...

+0

업데이트에 감사드립니다. 실제로 Velociraptor에서 대부분의 코드를 살펴 보았습니다.이 코드를 사용하여 쿼리와 HTTP 함수를 만들었지 만 API는 절대로 필요한 정보를 제공하지 않았습니다. 시작부터 끝까지 올바른 쿼리를 얻으려고합니다. –

관련 문제