IVGCVSW-3987 Fix for potential unique_ptr.release() bug

* Use an android strong pointer instead of a unique_ptr to
  avoid undefined behaviour of releasing unique_ptr to strong pointer

Signed-off-by: Kevin May <kevin.may@arm.com>
Change-Id: Icac255ba2407796888f20ffaba99a7988cb6f63c
diff --git a/ArmnnDriverImpl.cpp b/ArmnnDriverImpl.cpp
index 64188bb..de80445 100644
--- a/ArmnnDriverImpl.cpp
+++ b/ArmnnDriverImpl.cpp
@@ -150,7 +150,7 @@
         return ErrorStatus::NONE;
     }
 
-    unique_ptr<ArmnnPreparedModel<HalPolicy>> preparedModel(
+    sp<ArmnnPreparedModel<HalPolicy>> preparedModel(
             new ArmnnPreparedModel<HalPolicy>(
                     netId,
                     runtime.get(),
@@ -180,7 +180,7 @@
         }
     }
 
-    NotifyCallbackAndCheck(cb, ErrorStatus::NONE, preparedModel.release());
+    NotifyCallbackAndCheck(cb, ErrorStatus::NONE, preparedModel);
 
     return ErrorStatus::NONE;
 }