示例#1
0
        private void GetAvatarFromChosenContact()
        {
            if (!rainbowApplication.IsConnected())
            {
                return;
            }

            string id = contact_id.StringValue;

            rainbowContacts.GetAvatarFromContactId(id, 80, callback =>
            {
                if (callback.Result.Success)
                {
                    byte[] data = callback.Data;

                    if (data != null)
                    {
                        BeginInvokeOnMainThread(() => UpdateContactAvatar(data));
                        AddStateLine("Avatar has been retrieved");
                    }
                    else
                    {
                        AddStateLine("This contact doesn't have an avatar yet");
                    }
                }
                else
                {
                    string logline = String.Format("Impossible to get the avatar of this contact [{1}]:\r\n{0}", Util.SerializeSdkError(callback.Result), id);
                    AddStateLine(logline);
                    log.Warn(logline);
                }
            });
        }