我读取当前位置的纬度和经度值,然后在iPhone中成功锁定该位置.现在我想使用此纬度和经度值读取该地名.
我使用以下代码来读取查找当前位置:
- (void)mapView:(MKMapView *)mapView1 didUpdateUserLocation:(MKUserLocation *)userLocation{
CLLocation *whereIAm = userLocation.location;
NSLog(@"I'm at %@", whereIAm.description);
latitude = whereIAm.coordinate.latitude;
longitude = whereIAm.coordinate.longitude;
NSLog(@"LAT : %f",latitude);
NSLog(@"LONG : %f",longitude);
mapView.mapType=MKMapTypeStandard;
[mapView setMapType:MKMapTypeStandard];
[mapView setZoomEnabled:YES];
[mapView setScrollEnabled:YES];
MKCoordinateRegion region = { {0.0, 0.0 }, { 0.0, 0.0 } };
region.center.latitude =latitude; //22.569722 ;
region.center.longitude = longitude; //88.369722;
region.span.longitudeDelta = 0.01f;
region.span.latitudeDelta = 0.01f;
[mapView setRegion:region animated:YES];
[mapView setDelegate:self];
DisplayMap *ann = [[DisplayMap alloc] init];
ann.title = @" Welcome";
ann.subtitle = @"Hi";
ann.coordinate = …Run Code Online (Sandbox Code Playgroud) 试试:http://maps.googleapis.com/maps/api/geocode/json?address =Őrbottyán,Hungary&sensor = true
在iPhone 4和模拟器上,
-(void)requestFailed:(ASIHTTPRequest *)request {
NSLog(@"geocode fail code: %d",[request responseStatusCode]);
NSLog(@"geocoding failed: %@",[request responseString]);
}
2011-06-01 11:36:27.343 app[1174:307] geocode fail code: 0
2011-06-01 11:36:27.345 app[1174:307] geocoding failed: (null)
Run Code Online (Sandbox Code Playgroud)
在浏览器中,我得到:
"results" : [
{
"address_components" : [
{
"long_name" : "?rbottyán",
"short_name" : "?rbottyán",
"types" : [ "locality", "political" ]
},
{
"long_name" : "Pest",
"short_name" : "Pest",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "Hungary",
"short_name" : "HU",
"types" : [ …Run Code Online (Sandbox Code Playgroud) 这个问题可能看起来很熟悉:我有一个地方的纬度和经度.我需要得到国家的名字.我知道我必须使用反向地理编码.但我的问题是,有时它会返回该地区或国家的缩写形式(例如美国代表美国,CA代表加州).有什么方法可以得到这个国家的全名吗?我不能通过这个简短的表格与我预存的国家数据库进行匹配操作.
我正在开发一款适用于iOS的应用程序并计划将其移植到Android,而Google和Apple地理编码器提供的名称将是相同的,这一点至关重要.
我比较了他们在某些地方的工作方式,但没有看到差异.但事实上,我没有找到它并不意味着没有一个.
所以我的问题是:Apple和Google反向地理编码器给出的名称是不同的?
我要反转一些位置的Geo Code纬度和经度,并希望获得该位置的地址.我是通过谷歌网络服务完成的,但需要时间.我想知道是否有其他好的和有效的方法.
目前正在调用此服务,
NSString * getAddress = [NSString stringWithFormat:@"http://maps.googleapis.com/maps/api/geocode/json?latlng=%@,%@&sensor=true",Lattitude,Longitude];
Run Code Online (Sandbox Code Playgroud) 嗨,我写了一个应用程序,获取当前的纬度和经度,并将其转换为corrsponding address.i可以获得lattitude和longitutde但如何使用json将其转换为相应的地址.我是json的新手.我尝试了一些示例代码但没有获取地址
这是我的代码
import java.io.IOException;
import java.util.List;
import java.util.Locale;
import android.content.Context;
import android.location.Address;
import android.location.Geocoder;
import android.location.Location;
import android.location.LocationListener;
import android.location.LocationManager;
import android.os.Bundle;
import android.support.v4.app.FragmentActivity;
import android.util.Log;
import android.view.Menu;
import android.widget.Toast;
import com.google.android.gms.maps.CameraUpdate;
import com.google.android.gms.maps.CameraUpdateFactory;
import com.google.android.gms.maps.GoogleMap;
import com.google.android.gms.maps.SupportMapFragment;
import com.google.android.gms.maps.model.BitmapDescriptorFactory;
import com.google.android.gms.maps.model.CameraPosition;
import com.google.android.gms.maps.model.LatLng;
import com.google.android.gms.maps.model.LatLngBounds;
import com.google.android.gms.maps.model.Marker;
import com.google.android.gms.maps.model.MarkerOptions;
import com.google.android.maps.GeoPoint;
public class GMapActivity extends FragmentActivity {
private GoogleMap map;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_map);
LocationManager locManager = (LocationManager)getSystemService(Context.LOCATION_SERVICE);
LocationListener locListener = new GpsActivity(getBaseContext());
locManager.requestLocationUpdates( …Run Code Online (Sandbox Code Playgroud) android json geolocation reverse-geocoding google-maps-api-2
这是JSON输出:我只想获取formatted_address值&long_name&short_name。我提到了人们已经问过的问题,但是我做错了。指:
{
"results" : [
{
"address_components" : [
{
"long_name" : "Jalan Sungai Chua",
"short_name" : "B11",
"types" : [ "route" ]
},
{
"long_name" : "Sungai Chua",
"short_name" : "Sungai Chua",
"types" : [ "sublocality_level_1", "sublocality", "political" ]
},
{
"long_name" : "Kajang",
"short_name" : "Kajang",
"types" : [ "locality", "political" ]
},
{
"long_name" : "Selangor",
"short_name" : "Selangor",
"types" : [ "administrative_area_level_1", "political" ]
},
{
"long_name" : "Malaysia",
"short_name" : "MY",
"types" : [ …Run Code Online (Sandbox Code Playgroud) http://maps.googleapis.com/maps/api/geocode/xml?latlng=39.952853,32.901470&sensor=false
在这个 xml url 中,我无法从下面解释的区域获取数据。
<long_name>Alt?nevler Mahallesi</long_name>
Run Code Online (Sandbox Code Playgroud)
我正在使用 asp.net c#。你能帮我解决这个问题吗?
这是我试图从 xml 获取数据的代码
XmlDocument xdoc = new XmlDocument();
xdoc.Load(
"http://maps.googleapis.com/maps/api/geocode/xml?latlng=39.952853,32.901470&sensor=false"
);
XmlNodeList xNodelst = xdoc.DocumentElement.SelectNodes("entry");
foreach (XmlNode xNode in xNodelst)
{
label1.Text += "read";
}
Run Code Online (Sandbox Code Playgroud) 这是我的代码
if loc.latitude != 0.0 && loc.longitude != 0.0 {
let loca = CLLocation(latitude: loc.latitude, longitude: loc.longitude)
geoCoder.reverseGeocodeLocation(loca) { (placemarks, error) in // this is the last line that is being called
var placemark : CLPlacemark!
placemark = placemarks?[0]
city = (placemark.addressDictionary?["City"] as! String)
}
}
Run Code Online (Sandbox Code Playgroud)
在我的应用程序中执行此代码段是正确的,没有发生运行时错误.
但是,被调用的最后一行是
geoCoder.reverseGeocodeLocation(loca){(placemarks, error)
我也仔细检查过那loca不是零.
为什么没有调用完成处理程序?
我有一个项目需要确定某个位置(纬度和经度)的描笼涯(barrio/细分)。有没有我可以使用的 API?
在菲律宾,地址必须包含描笼涯。地址的示例格式如下[House No.][Street][Barangay][City][Region]。我尝试在 Google Maps API 和 LocationIQ API 中搜索,但响应不包括描笼涯。
ios ×4
google-maps ×3
iphone ×3
geocoding ×2
google-api ×2
json ×2
objective-c ×2
android ×1
asp.net ×1
c# ×1
clgeocoder ×1
cllocation ×1
geojson ×1
geolocation ×1
mkmapview ×1
php ×1
swift ×1
swift3 ×1
xml-parsing ×1