我遇到了一個相當奇怪的情況:後端開發人員要求我強制將執行地理定位返回的城市名稱設置爲特定語言?例如,無論iOS的語言如何,它都會返回哥本哈根而不是哥本哈根。我在網上找不到關於此的任何內容。您的幫助將不勝感激。謝謝iOS Force地理位置以特定語言返回城市名稱
回答
不確定這是否是最好和最安全的解決方案,但您可以臨時更改區域設置,同時進行反向地理代碼調用,然後在完成後重置它。
NSArray *defaultLanguages = [[NSUserDefaults standardUserDefaults] valueForKey:@"AppleLanguages"];
NSArray *languages = [NSArray arrayWithObject:@"da"];
[[NSUserDefaults standardUserDefaults] setObject:languages forKey:@"AppleLanguages"];
[[NSUserDefaults standardUserDefaults] synchronize];
CLGeocoder *geocoder = [[CLGeocoder alloc] init];
CLLocation *location = [[CLLocation alloc] initWithLatitude:coordinate.latitude longitude:coordinate.longitude];
[geocoder reverseGeocodeLocation:location completionHandler:^(NSArray *placemarks, NSError *error) {
CLPlacemark *placemark = placemarks[0];
NSString *danish = placemark.country;
[[NSUserDefaults standardUserDefaults] setObject:defaultLanguages forKey:@"AppleLanguages"];
[[NSUserDefaults standardUserDefaults] synchronize];
}];
我們在這裏補充一點,提出的解決方案有一個非常糟糕的錯誤:它有效地將語言存儲在應用程序域中,因此覆蓋系統中Apple語言的任何進一步變化(例如,當用戶將iOS設備的語言更改爲其他值 - 因爲結果應用程序UI將不考慮這些語言更改)。讓我建議使用'[[NSUserDefaults standardUserDefaults] removeObjectForKey:@「AppleLanguages」]'來恢復覆蓋。 –
@GrigoryEntin是的,我剛纔提到你可能想在重新設置地理區域時使用地理編碼,但不能傷害強調不這樣做的危害。謝謝 –
嗯,我不確定我是否正確理解你。問題是你的解決方案中的[[NSUserDefaults standardUserDefaults] setObject:defaultLanguages forKey:@「AppleLanguages」](完成處理程序中)不會在完成時重設區域設置。它有效地將defaultLanguage的當前值存儲在應用程序域中,而不是刪除自定義域。因此,如果AppleLanguages的系統寬度值發生更改,它將不會反映在應用程序默認值中,因爲它將被存儲值覆蓋(不再與當前/系統範圍的值匹配)。 –
- 1. Android的地理編碼器返回無效的城市名稱
- 2. 獲取地理位置的城市名稱
- 3. 如何在iphone中獲取地理位置城市名稱?
- 4. 從城市獲取地理位置
- 5. 從特定語言的緯度,經度獲取城市名稱javascript api
- 6. 哪個地理服務(如果有的話)可以返回城市中心的經緯度和城市半徑給定城市名稱?
- 7. 在ios中搜索城市名稱
- 8. 如何在ios中獲取地理位置附近的城市或州名?
- 9. 反向地理編碼 - 僅返回城鎮/城市或國家
- 10. MKReverseGeocoder返回不是城市的城市?
- 11. 將緯度/經度轉換爲城市名稱? (反向進行地理定位)
- 12. 設置ios應用程序的語言特定名稱
- 13. 查詢多國語言城市名稱+從座標計算半徑Google地圖
- 14. 地理與城市名稱,谷歌地圖編碼
- 15. 尋找沒有城市名稱的地理性地形圖
- 16. 地理位置腳本,以確定當我在城市附近的城市評估爲假
- 17. 將mapkit設置爲只有城市名稱的位置
- 18. 得到位置示範城市名單多少位置爲每個城市
- 19. 市名,縣名在其他語言中不返回英語
- 20. iOS 6中未給出城市名稱的地標6
- 21. 從一個城市返回國家名?
- 22. 有沒有可以查詢當地城市名稱的公共地理定位系統?
- 23. 是否有可能在城市地區使用地理位置?
- 24. 地理位置和從輸入地址獲取城市(Rails)
- 25. 地理位置IP和國家/地區/城市DB
- 26. 返回人口最多的城市名稱
- 27. 如何將城市名稱作爲值而不是id返回?
- 28. 傳遞lon/lat和返回城市名稱的API
- 29. 城市名稱到地理座標PHP腳本?
- 30. 地理名稱數據庫(城市,興趣點)
我對這個問題有點困惑。您是否試圖將地理編碼反轉到一個位置(即給定位置,以特定語言獲取該城市名稱的位置)? –
類似的東西。我試圖對地址進行地理編碼,並使核心位置框架以特定語言向我返回城市。但是從我所看到的框架使用語言環境語言以用戶在他的手機上設置的語言返回城市。我只是需要它在例如丹麥語,無論用戶在他的ios上設置了什麼語言 – alex