【发布时间】:2020-10-21 15:05:16
【问题描述】:
我在 Unity 中制作了一个应用程序,该应用程序已在 Google Play 商店上架一年多。今天我想在 Apple App Market 上部署它,但翻译在那里不起作用。
我使用以下代码加载我的应用翻译
public bool LoadLocalizedText(SystemLanguage language)
{
localizedText = new Dictionary<string, string>();
string filePath = Path.Combine(Application.streamingAssetsPath, "localizedText_" + language + ".json");
WWW reader = new WWW(filePath);
if (reader.text == null || reader.text == "") return false;
while (!reader.isDone) { }
string dataAsJson;
dataAsJson = reader.text;
LocalizationData loadedData = JsonUtility.FromJson<LocalizationData>(dataAsJson);
for (int i = 0; i < loadedData.items.Length; i++)
{
localizedText.Add(loadedData.items[i].key, loadedData.items[i].value);
}
Debug.Log("Data loaded, dictionary contains: " + localizedText.Count + " entries");
if (localizedText.Count == 0) return false;
else
{
isReady = true;
return true;
}
}
但不知何故,所有文本字段都显示“未找到本地化文本”,因为它找不到我的资产...这可能是什么?
这是因为 StreamingAssets 文件夹未复制到 xCode 吗? 是因为iOS上的位置不同吗? 还有什么?
【问题讨论】:
-
这适用于 Android 吗?你能显示你把 json 文件放在哪里的屏幕截图吗?
-
@Programmer 是的,它确实适用于 Android。我现在已经在文件夹结构中包含了一个屏幕截图。 StreamingAssets 里面是 json 文件