我正在与Applozic SDK一起使用Twitter的Digits。我通过使用Digits提供的“查找朋友”来创建自定义联系人列表,然后使用其朋友的ID从Applozic获取其显示名称。


  这是我的代码:


Log.e("Friend ID", user.idStr);
AppContactService appContactService = new AppContactService(context);
Contact contact = appContactService.getContactById(user.idStr);
Log.e("Friend Display Name", contact.getDisplayName());



  这是我的logcat输出:


E/Friend ID: 753958303214870528
E/Friend Display Name: 753958303214870528
E/Friend ID: 751769088456790016
E/Friend Display Name: 751769088456790016


如您所见,即使getDisplayName()也会返回UserID。这是我的Applozic信息中心

java - 如何在Applozic中通过用户ID获取联系人的显示名称?-LMLPHP

我做错了什么吗?

最佳答案

为此,您需要拨打服务器并从服务器获取用户详细信息。您正在使用的上述方法只能从本地数据库中检查

您可以使用此方法从服务器获取详细信息

 Set<String> userIds = new HashSet<>();
             userIds.add("user1");
             userIds.add("user2");
             userIds.add("user3");

   UserService.getInstance(context).processUserDetails(userIds); //server call

   AppContactService appContactService = new AppContactService(context);
   Contact contact = appContactService.getContactById("user1");
            if(contact != null){
               Log.e("Friend Display Name", contact.getDisplayName());
              }

09-25 22:01