Merge 24Q3 (ab/11976889) to aosp-main-future

Bug: 347831320
Merged-In: I2e802819614b547e8bf096a446ed48118a795e27
Change-Id: I8241cd97b325a2cf5163159b1c95fa9bdd27d7f2
diff --git a/libese_weaver/inc/TransportFactory.h b/libese_weaver/inc/TransportFactory.h
index 416f6d5..9cc0036 100644
--- a/libese_weaver/inc/TransportFactory.h
+++ b/libese_weaver/inc/TransportFactory.h
@@ -59,14 +59,14 @@
     TransportFactory(bool isEmulator, const std::vector<uint8_t>& mAppletAID) {
         if (!isEmulator) {
 #ifdef OMAPI_TRANSPORT
-            mTransport = std::unique_ptr<OmapiTransport>(new OmapiTransport(mAppletAID));
+            mTransport = OmapiTransport::make(mAppletAID);
 #else
-            mTransport = std::unique_ptr<HalToHalTransport>(new HalToHalTransport(mAppletAID));
+            mTransport = std::shared_ptr<HalToHalTransport>(new HalToHalTransport(mAppletAID));
 #endif
         }
 #ifndef NXP_EXTNS
         else
-            mTransport = std::unique_ptr<SocketTransport>(new SocketTransport(mAppletAID));
+            mTransport = std::shared_ptr<SocketTransport>(new SocketTransport(mAppletAID));
 #endif
     }
 
@@ -113,7 +113,7 @@
     /**
      * Holds the instance of either OmapiTransport class or SocketTransport class.
      */
-    std::unique_ptr<ITransport> mTransport;
+    std::shared_ptr<ITransport> mTransport;
 
 };
 } // namespace se_transport