2
我有一個調用休息Web服務的ios應用程序。我在我的應用程序中創建了一個屬性列表文件,其中包含將由服務器返回的錯誤代碼字典以及要顯示的相應消息。如何指定本地化屬性列表?
我想爲不同的語言有多個屬性列表文件。
我該如何讓應用程序根據語言環境提取特定的屬性列表?
我有一個調用休息Web服務的ios應用程序。我在我的應用程序中創建了一個屬性列表文件,其中包含將由服務器返回的錯誤代碼字典以及要顯示的相應消息。如何指定本地化屬性列表?
我想爲不同的語言有多個屬性列表文件。
我該如何讓應用程序根據語言環境提取特定的屬性列表?
您說服務器正在生成錯誤代碼和消息。
所以我認爲有更多的方法來做到這一點。
首先,您可以在您的請求中向服務器發送區域標頭,以便服務器爲您執行所有本地化(在我看來,它不如解決方案2)。
所以我寧願讓服務器只返回錯誤代碼和處理客戶端消息的方式。 你可以在Xcode中創建一個語言項目,爲每種語言要支持: http://www.ibabbleon.com/iphone_app_localization.html#extract
在localizable.strings文件我會做到以下幾點:
"RestServiceXYErrorTitle_1" = "Authentication failed";
"RestServiceXYErrorMessage_1" = "Your credentials were wrong";
"RestServiceXYErrorTitle_2" = "Resource not available";
"RestServiceXYErrorMessage_2" = "The resource you requested is no longer available";
....
然後我會採取錯誤代碼由服務器返回,例如1,把它連同我的本地化字符串:
NSString *localizedTitleKey = [NSString stringWithFormat:@"RestServiceXYErrorTitle_%@", errorCode];
NSString *localizedMessageKey = [NSString stringWithFormat:@"RestServiceXYErrorMessage_%@", errorCode];
NSString *errorTitle = NSLocalizedString(localizedTitleKey,@"");
NSString *errorMessage = NSLocalizedString(localizedMessageKey,@"");
我認爲這將是一個很好的解決方案
是的,我會實現的解決方案2,但有一種可能性,即從服務器發送的錯誤代碼是不在這裏處理,這將導致問題,這就是爲什麼我去財產清單.... – orak