2017-09-05 115 views
0

在我的应用程序中,我正在从设备数据库中读取组名和ID,并且我想创建用于添加权限的组名列表,可以将哪种类型的联系人发送到我的http服务器。数据库中的默认组名使用英语,但在添加/编辑联系人期间,它们被翻译成当前的设备语言。我的应用应该完全是多语言。如何在我的应用程序中翻译此内容?我在读组由以下内容URI:Android如何翻译组名?

ContactsContract.Groups.CONTENT_URI, 

从柱:

My Contacts 
Family 
Friends 
Coworkers 

其他团体都没有:

ContactsContract.Groups.TITLE 

回答

1

只有4个标准组在英语默认创建英文默认情况下,它们的标题是用户创建它们。

您可以检测应用程序中的这些标准组(通过将标题与这4个字符串中的一个进行比较),然后将转换添加到您希望支持的每种语言的strings.xml文件中。

+0

感谢您的回复。你确定只有4个组是默认的吗?我的联想K5设备还有另外一些:“安卓星空”和“VIP”组,这些并不是我自己创建的。如果可以收集所有静态组,您的解决方案非常好,但我觉得其他设备可能有其他设备。 – grabarz121

+1

我提到的4个组称为“系统组”,默认情况下由您的Google Contacts帐户创建,“Android中出现星号”由Google的SyncAdapter在Android上创建,我不确定“VIP”,但我拥有一个应用程序在许多不同类型的设备上,并没有在任何地方看到任何设备创建的组,所以我会去那些5,并且你可以添加“VIP”以及 – marmor