Firebase多语言支持:可行吗?

3
可以在Firebase数据库中使用多语言JSON文件吗?
示例: 我在JSON文件中有以下内容:
"219" : {
      "AnswerA" : "Monarchy",
      "AnswerB" : "Aristocracy",
      "AnswerC" : "Theocracy",
      "AnswerD" : "Anarchy",
      "CategoryID" : "01",
      "CorrectAnswer" : "Theocracy",
      "IsImageQuestion" : "false",
      "Question" : "What is the type of Government in Swaziland?"
    },

如何添加翻译,以便用户选择另一种语言时,可以获取新语言的问题和答案?

1个回答

10
Firebase多语言支持:是否可能?
是的,但需要对数据库结构进行一些更改。对于您的用例,可能的多语言结构如下:
Firebase-root
   |
   --- questions
          |
          --- en
          |    |
          |    --- 219
          |         |
          |         --- //English values for your properties
          |
          --- fr
               |
               --- 219
                    |
                    --- //French values for your properties

使用这种结构,当用户选择另一种语言时,您可以轻松地在瞬间切换语言。一个英语问题的参考:

DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference();
DatabaseReference enQuestionIdRef = rootRef.child("questions").child("en").child("219");

对于法语版本,只需要进行一个简单的更改:

DatabaseReference enQuestionIdRef = rootRef.child("questions").child("fr").child("219");

3
糟糕的解决方案:你需要为所有语言存储数据对象的副本,而不是将特定于某地的数据排列在一个数据对象中。 - Serge

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接