앱을 처음 시작할 때 다른 언어를 기본값으로 설정하고 싶습니다. iOS에는이 언어가 인터페이스 언어로되어 있지 않으므로 수동으로 설정하는 것이 유일한 방법입니다. 저는 수십 가지 솔루션을 찾았습니다. 작동하는 솔루션은 시뮬레이터에서만 작동하며 실제 장치에서는 작동하지 않습니다. 여기에 내가 무엇을 시도했다입니다 : 모든iOS/Swift에서 앱을 처음 시작하기 전에 기본 언어를 설정하십시오.
첫째, 응용 프로그램의 언어를 설정하는 방법은 다음과 같습니다
UserDefaults.standard.set(["xx-XX", "yy-YY"], forKey: "AppleLanguages")
것은이 다시 시작되는 응용 프로그램을 필요로한다, 동안 난에 원하는 앱이 처음 시작될 때 설정하십시오. 나는 또한 시도했다 :
UserDefaults.standard.register(defaults: ["AppleLanguages": ["xx-XX", "yy-YY"]])
그리고 대부분의 경우에 전혀 호출 할 필요가없는 UserDefaults.standard.synchronize()
을 호출했다.
그리고 장소는이 코드 퍼팅 시도했다 :
- 응용 프로그램 (: didFinishLaunchingWithOptions :
- 응용 프로그램 초기화를 : |
- 서브 클래스
UIApplication
,main.swift
생성 및 최상위 문
같은 코드 위 info.plist
에 추가 :
- 는
xx-XX
에
- 에
Localization native development region
설정
Localizations
의 첫 번째 요소를 설정
xx-XX
그런데 맞춤 현지화를 구현하는 것은 현재 시점에서 옵션이 아닙니다.
가장 혼란스러워하는 부분은 왜 그런 기능이 실제 장치가 아닌 시뮬레이터에서 작동하는지입니다.
편집 : 나는 심지어 기본 영어 (English)를 삭제하고, 그 옆에는 Development Language
레이블이 없었다, 그래서 다시 English (World)
를 추가. 아직도 작동하지 않았다.