Use sp<T>::make to create the sp pointer for EventLoopCallback

In wificond, EventLoopCallback is derrived from MessageHandler,
which is derrived from RefBase, so we should be using sp<T>::make to
create the smart pointer so the incStrong will occur on the Refbase
object.

Bug: 243362981
Test: Flash hwasan build and do wificond scan, do not observe crash.
Merged-In: Ia9505a2247bd129665ed3b1ca87f701f7e4c48f6
Change-Id: Ia9505a2247bd129665ed3b1ca87f701f7e4c48f6
(cherry picked from commit 77798e915cb1091111c511b41ede98d11858e23c)
Merged-In: Ia9505a2247bd129665ed3b1ca87f701f7e4c48f6
diff --git a/looper_backed_event_loop.cpp b/looper_backed_event_loop.cpp
index f759948..e97d1d9 100644
--- a/looper_backed_event_loop.cpp
+++ b/looper_backed_event_loop.cpp
@@ -30,7 +30,7 @@
 
   ~EventLoopCallback() override = default;
 
-  virtual void handleMessage(const android::Message& message) {
+  void handleMessage(const android::Message& message) override {
     callback_();
   }
 
@@ -77,16 +77,13 @@
 }
 
 void LooperBackedEventLoop::PostTask(const std::function<void()>& callback) {
-  sp<android::MessageHandler> event_loop_callback =
-      new EventLoopCallback(callback);
-  looper_->sendMessage(event_loop_callback, Message());
+  looper_->sendMessage(sp<EventLoopCallback>::make(callback), Message());
 }
 
 void LooperBackedEventLoop::PostDelayedTask(
     const std::function<void()>& callback,
     int64_t delay_ms) {
-  sp<android::MessageHandler> looper_callback = new EventLoopCallback(callback);
-  looper_->sendMessageDelayed(ms2ns(delay_ms), looper_callback, Message());
+  looper_->sendMessageDelayed(ms2ns(delay_ms), sp<EventLoopCallback>::make(callback), Message());
 }
 
 bool LooperBackedEventLoop::WatchFileDescriptor(