public static ChatMessage ChatMessageFromJavaObject(AndroidJavaObject chatMessageAJO) { User sender = AndroidUtils.UserFromJavaObj(chatMessageAJO.Call <AndroidJavaObject>("getSender")); string guid = chatMessageAJO.Call <string>("getGuid"); DateTime timestamp = AndroidUtils.DateTimeFromJavaUtilDate(chatMessageAJO.Call <AndroidJavaObject>("getTimestamp")); bool wasSentByMe = chatMessageAJO.Call <bool>("wasSentByMe"); // For now - only text messges supproted var msgText = chatMessageAJO.Call <AndroidJavaObject>("getContent").Call <string>("getText"); chatMessageAJO.Dispose(); return(new ChatMessage(sender, guid, timestamp, wasSentByMe, ChatMessageContent.CreateWithText(msgText))); }