More default visibility for framework modules

Stub libraries are public. Stub sources and impl library are not.

Bug: 149906971
Test: m nothing
Change-Id: Iadb1c8ba021aa5225d4f5ea13388e843ff846eaa
Merged-In: Iadb1c8ba021aa5225d4f5ea13388e843ff846eaa
(cherry picked from commit 70882b5a56b2897965fee57ff32169af63b4e2f0)
diff --git a/apex/Android.bp b/apex/Android.bp
index 992648b..0f918a1 100644
--- a/apex/Android.bp
+++ b/apex/Android.bp
@@ -94,20 +94,13 @@
 
     annotations_enabled: true,
 
-    stubs_library_visibility: [
-        "//visibility:public",
-    ],
+    // Allow access to the stubs from anywhere
+    visibility: ["//visibility:public"],
+    stubs_library_visibility: ["//visibility:public"],
 
-    // Set the visibility of the modules creating the stubs source.
-    stubs_source_visibility: [
-        // Ignore any visibility rules specified on the java_sdk_library when
-        // setting the visibility of the stubs source modules.
-        "//visibility:override",
-
-        // Currently, the stub source is not required for anything other than building
-        // the stubs library so is private to avoid misuse.
-        "//visibility:private",
-    ],
+    // Hide impl library and stub sources
+    impl_library_visibility: [":__package__"],
+    stubs_source_visibility: ["//visibility:private"],
 
     // Collates API usages from each module for further analysis.
     plugins: ["java_api_finder"],