aboutsummaryrefslogtreecommitdiff
path: root/en/devices/tech
diff options
context:
space:
mode:
Diffstat (limited to 'en/devices/tech')
-rw-r--r--en/devices/tech/config/namespaces_libraries.html42
-rw-r--r--en/devices/tech/display/adaptive-icons.html4
-rw-r--r--en/devices/tech/health/deprecation.md30
-rw-r--r--en/devices/tech/settings/info-architecture.html2
4 files changed, 55 insertions, 23 deletions
diff --git a/en/devices/tech/config/namespaces_libraries.html b/en/devices/tech/config/namespaces_libraries.html
index 1e94bf1b..5dae4b07 100644
--- a/en/devices/tech/config/namespaces_libraries.html
+++ b/en/devices/tech/config/namespaces_libraries.html
@@ -54,11 +54,43 @@ with <code>libpng</code>).
libraries</h2>
<p>
-In addition to standard public native libraries, vendors may choose to provide
-additional native libraries accessible to apps by putting them under the
-<code>/vendor</code> library folder (/vendor/lib for 32 bit libraries and,
-/vendor/lib64 for 64 bit) and listing them in:
-<code>/vendor/etc/public.libraries.txt</code>
+In addition to standard public native libraries, silicon vendors (starting from Android 7.0) and
+device manufactures (starting from Android 9) may choose to provide additional native libraries
+accessible to apps by putting them under the respective library folders and explicitly listing them
+in .txt files.
+</p>
+
+<p>The library folders are:</p>
+<ul>
+ <li><code>/vendor/lib</code> (for 32-bit) and <code>/vendor/lib64</code> (for 64-bit)
+ for libraries from silicon vendors</li>
+ <li><code>/system/lib</code> (for 32-bit) and <code>/system/lib64</code> (for 64-bit)
+ for libraries from device manufacturers</li>
+<ul>
+
+<p>The .txt files are:</p>
+<ul>
+ <li><code>/vendor/etc/public.libraries.txt</code> for libraries from silicon vendors</li>
+ <li><code>/system/etc/public.libraries-COMPANYNAME.txt</code> for libraries from device manufacturers,
+ where <code>COMPANYNAME</code> refers to a name of the manufacturer (such as
+ <code>awesome.company</code>). <code>COMPANYNAME</code> should match with
+ <code>[A-Za-z0-9_.-]+</code>; alphanumeric characters, _, . (dot) and -. It is possible to
+ have multiple such .txt files in a device if some libraries are from external solution
+ providers.
+</ul>
+
+<p>
+ Native libraries in the <code>system</code> partition that are made public by device manufacturers
+ <strong>MUST</strong> be named <code>lib*COMPANYNAME.so</code>, e.g., <code>libFoo.awesome.company.so</code>.
+ In other words, <code>libFoo.so</code> without the company name suffix MUST NOT be made public.
+ The <code>COMPANYNAME</code> in the library file name MUST match with the <code>COMPANYNAME</code> in the
+ txt file name in which the library name is listed.
+</p>
+
+<p>
+ Native libraries that are part of AOSP MUST NOT be made public (except the standard
+ public native libraries which are public by default). Only the additional libraries added by
+ silicon vendors or device manufacturers can be made accessible to apps.
</p>
<p>
diff --git a/en/devices/tech/display/adaptive-icons.html b/en/devices/tech/display/adaptive-icons.html
index 5d74b10c..31770a3a 100644
--- a/en/devices/tech/display/adaptive-icons.html
+++ b/en/devices/tech/display/adaptive-icons.html
@@ -109,7 +109,7 @@
class="prettyprint">public class Icon extends Parceleable {
method public Bitmap createWithAdaptiveBitmap();
}</pre>
- <h2>Reference Implementation</h2>
+ <h2>Reference implementation</h2>
<p>
Nothing needs to be done to render the static adaptive icons on any of the
System UI surfaces. When PackageManager returns a drawable, simply bind that to
@@ -131,7 +131,7 @@
A recommended manual test case can be found at:
platform/development/samples/AdaptiveIconSample/.
</p>
- <h2>Known Issues</h2>
+ <h2>Known issues</h2>
<p>
Known issues include the following:
</p><ul>
diff --git a/en/devices/tech/health/deprecation.md b/en/devices/tech/health/deprecation.md
index fcaf711f..9a31cd5b 100644
--- a/en/devices/tech/health/deprecation.md
+++ b/en/devices/tech/health/deprecation.md
@@ -49,21 +49,21 @@ To do so:
1. Remove `healthd` and `healthd.rc` from the system image by adding the
following line to the device-specific implementation in Soong:
- ```
- cc_binary {
- name: "android.hardware.health@2.0-service.device_name"
- overrides: ["healthd"],
- // ...
- }
- ```
-
- Or, if the module is in Make:
-
- ```yaml
- LOCAL_MODULE_NAME := \
- android.hardware.health@2.0-service.device_name
- LOCAL_OVERRIDES_MODULES := healthd
- ```
+ ```
+ cc_binary {
+ name: "android.hardware.health@2.0-service.device_name"
+ overrides: ["healthd"],
+ // ...
+ }
+ ```
+
+ Or, if the module is in Make:
+
+ ```yaml
+ LOCAL_MODULE_NAME := \
+ android.hardware.health@2.0-service.device_name
+ LOCAL_OVERRIDES_MODULES := healthd
+ ```
If the default implementation `android.hardware.health@2.0-service` is
installed, implement a device-specific
diff --git a/en/devices/tech/settings/info-architecture.html b/en/devices/tech/settings/info-architecture.html
index d0f027de..48f74bfe 100644
--- a/en/devices/tech/settings/info-architecture.html
+++ b/en/devices/tech/settings/info-architecture.html
@@ -103,7 +103,7 @@ single host fragment and multiple setting controllers.
<p>
<code>DashboardFragment</code> is the host of plugin-style preference controllers.
The fragment inherits from <code>PreferenceFragment</code> and has hooks to
-inflate and update both static preference lists and dynamic preference lists.
+expand and update both static preference lists and dynamic preference lists.
</p>
<h3 id="static-preferences">Static preferences</h3>