Properly store incoming messages on incoming sessions

Add a onMessageReceived listener for SimpleChatSessions set up
on the incoming side so they can be properly stored in the chat
db.

Bug: 181276359
Test: send 1:1 chat to the same device
Change-Id: I62f254f2d071664c539da70beb287a03451afdeb
diff --git a/testapps/TestRcsApp/TestApp/src/com/google/android/sample/rcsclient/util/ChatManager.java b/testapps/TestRcsApp/TestApp/src/com/google/android/sample/rcsclient/util/ChatManager.java
index 9d27fbc..0447d1a 100644
--- a/testapps/TestRcsApp/TestApp/src/com/google/android/sample/rcsclient/util/ChatManager.java
+++ b/testapps/TestRcsApp/TestApp/src/com/google/android/sample/rcsclient/util/ChatManager.java
@@ -91,6 +91,21 @@
         mImsService.setListener((session) -> {
             Log.i(TAG, "onIncomingSession()");
             mContactSessionMap.put(session.getRemoteUri(), session);
+            session.setListener(
+                    // implement onMessageReceived()
+                    (message) -> {
+                        mFixedThreadPool.execute(() -> {
+                            String msg = message.content();
+                            String phoneNumber = getNumberFromUri(
+                                    session.getRemoteUri().toString());
+                            if (TextUtils.isEmpty(phoneNumber)) {
+                                Log.i(TAG, "dest number is empty, uri:"
+                                        + session.getRemoteUri());
+                            } else {
+                                addNewMessage(msg, phoneNumber, SELF);
+                            }
+                        });
+                    });
         });
     }