framework-wifi: remove duplicate classes

Preconditions & Inet4AddressUtils are statically
linked into both framework-wifi and service-wifi.
This creates duplicate classes, which should be
avoided. Instead, service-wifi should simply refer
to the copy of Preconditions/Inet4AddressUtils in
framework-wifi.

(dirty cherry pick from internal branch)

Bug: 153596226
Test: device boots up and connects to wifi
Change-Id: Ie78e5cf0f6ff7bc8a2fa8d7264b742f912601143
Merged-In: Ie78e5cf0f6ff7bc8a2fa8d7264b742f912601143
diff --git a/Android.bp b/Android.bp
index 9ed72ee..1a94e0a 100644
--- a/Android.bp
+++ b/Android.bp
@@ -647,15 +647,32 @@
     ],
 }
 
+// utility classes statically linked into framework-wifi and dynamically linked
+// into wifi-service
+java_library {
+    name: "framework-wifi-util-lib",
+    sdk_version: "module_current",
+    srcs: [
+        "core/java/android/net/shared/Inet4AddressUtils.java",
+        "core/java/com/android/internal/util/Preconditions.java",
+    ],
+    libs: [
+        "framework-annotations-lib",
+        "unsupportedappusage",
+    ],
+    visibility: [
+        "//frameworks/base/wifi",
+        "//frameworks/base/services/net",
+    ],
+}
+
 filegroup {
     name: "framework-services-net-module-wifi-shared-srcs",
     srcs: [
         "core/java/android/net/DhcpResults.java",
-        "core/java/android/net/shared/Inet4AddressUtils.java",
         "core/java/android/net/shared/InetAddressUtils.java",
         "core/java/android/net/util/IpUtils.java",
         "core/java/android/util/LocalLog.java",
-        "core/java/com/android/internal/util/Preconditions.java",
     ],
 }