Merge "Use SharedRefBase::make to allocate."
diff --git a/DnsResolverService.cpp b/DnsResolverService.cpp
index c4b42bc..12ac191 100644
--- a/DnsResolverService.cpp
+++ b/DnsResolverService.cpp
@@ -78,7 +78,8 @@
 binder_status_t DnsResolverService::start() {
     // TODO: Add disableBackgroundScheduling(true) after libbinder_ndk support it. b/126506010
     // NetdNativeService does call disableBackgroundScheduling currently, so it is fine now.
-    DnsResolverService* resolverService = new DnsResolverService();
+    std::shared_ptr<DnsResolverService> resolverService =
+            ::ndk::SharedRefBase::make<DnsResolverService>();
     binder_status_t status =
             AServiceManager_addService(resolverService->asBinder().get(), getServiceName());
     if (status != STATUS_OK) {
diff --git a/DnsResolverService.h b/DnsResolverService.h
index e484b3c..5b19cf0 100644
--- a/DnsResolverService.h
+++ b/DnsResolverService.h
@@ -61,8 +61,9 @@
     // Debug log command
     ::ndk::ScopedAStatus setLogSeverity(int32_t logSeverity) override;
 
-  private:
     DnsResolverService();
+
+  private:
     // TODO: Remove below items after libbiner_ndk supports check_permission.
     ::ndk::ScopedAStatus checkAnyPermission(const std::vector<const char*>& permissions);
 };