我有一个场景,需要从服务器下载本地化文件。我在应用程序启动时下载文件,并将其存储在包中的文件夹中。例如,如果是英文文件,则将其存储在名为“en.lproj”且文件名为“Localizable.strings”的文件夹下。
现在,当文件被下载后,我使用"bundleWithPath:"方法加载包。一旦它加载完成,我使用"NSLocalizedStringFromTableInBundle(key, @"Localizable", bundle, @"")"方法来显示本地化信息。
到这里为止,一切正常。 但是,如果文件从服务器更新,我将再次下载英文文件,并替换旧文件。 但是,应用程序仍然显示来自已替换的旧文件的本地化信息。 请问是否有方法可以重新加载NSBundle以反映更新?
在上述场景中,当文件被更新时,应用程序未被杀死。 如果我杀死应用程序并重新启动它,那么更改就会反映出来。 但是我希望在不杀死应用程序的情况下反映更改。
有没有方法可以卸载已加载的NSBundle?
现在,当文件被下载后,我使用"bundleWithPath:"方法加载包。一旦它加载完成,我使用"NSLocalizedStringFromTableInBundle(key, @"Localizable", bundle, @"")"方法来显示本地化信息。
到这里为止,一切正常。 但是,如果文件从服务器更新,我将再次下载英文文件,并替换旧文件。 但是,应用程序仍然显示来自已替换的旧文件的本地化信息。 请问是否有方法可以重新加载NSBundle以反映更新?
在上述场景中,当文件被更新时,应用程序未被杀死。 如果我杀死应用程序并重新启动它,那么更改就会反映出来。 但是我希望在不杀死应用程序的情况下反映更改。
有没有方法可以卸载已加载的NSBundle?