Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit a2fe812e authored by Dianne Hackborn's avatar Dianne Hackborn
Browse files

Rework platform version to hide codenames.

The public platform version no longer can be a codename, it is
always the most recently released platform.  A new build property
and API provides either the offical version or the current codename
as appropriate.  This will avoid breaking apps that look at the
platform version while development is under a codename.

Bug:  143175463
Test: manual
Change-Id: I72975ec86ac07700dc9052245b54411fa77982b8
parent cf6db591
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -1735,7 +1735,7 @@ public class StatsCompanionService extends IStatsCompanionService.Stub {
        e.writeString(Build.BRAND);
        e.writeString(Build.PRODUCT);
        e.writeString(Build.DEVICE);
        e.writeString(Build.VERSION.RELEASE);
        e.writeString(Build.VERSION.RELEASE_OR_CODENAME);
        e.writeString(Build.ID);
        e.writeString(Build.VERSION.INCREMENTAL);
        e.writeString(Build.TYPE);
+1 −0
Original line number Diff line number Diff line
@@ -34389,6 +34389,7 @@ package android.os {
    field public static final String INCREMENTAL;
    field public static final int PREVIEW_SDK_INT;
    field public static final String RELEASE;
    field @NonNull public static final String RELEASE_OR_CODENAME;
    field @Deprecated public static final String SDK;
    field public static final int SDK_INT;
    field public static final String SECURITY_PATCH;
+7 −0
Original line number Diff line number Diff line
@@ -238,6 +238,13 @@ public class Build {
         */
        public static final String RELEASE = getString("ro.build.version.release");

        /**
         * The version string we show to the user; may be {@link #RELEASE} or
         * {@link #CODENAME} if not a final release build.
         */
        @NonNull public static final String RELEASE_OR_CODENAME = getString(
                "ro.build.version.release_or_codename");

        /**
         * The base OS build the product is based on.
         */
+1 −1
Original line number Diff line number Diff line
@@ -277,7 +277,7 @@ public class RuntimeInit {
        result.append(System.getProperty("java.vm.version")); // such as 1.1.0
        result.append(" (Linux; U; Android ");

        String version = Build.VERSION.RELEASE; // "1.0" or "3.4b5"
        String version = Build.VERSION.RELEASE_OR_CODENAME; // "1.0" or "3.4b5"
        result.append(version.length() > 0 ? version : "1.0");

        // add the model for the release build
+1 −1
Original line number Diff line number Diff line
@@ -60,7 +60,7 @@ public class BuildTest extends TestCase {
        assertNotEmpty("BRAND", Build.BRAND);
        assertNotEmpty("MODEL", Build.MODEL);
        assertNotEmpty("VERSION.INCREMENTAL", Build.VERSION.INCREMENTAL);
        assertNotEmpty("VERSION.RELEASE", Build.VERSION.RELEASE);
        assertNotEmpty("VERSION.RELEASE", Build.VERSION.RELEASE_OR_CODENAME);
        assertNotEmpty("TYPE", Build.TYPE);
        Assert.assertNotNull("TAGS", Build.TAGS); // TAGS is allowed to be empty.
        assertNotEmpty("FINGERPRINT", Build.FINGERPRINT);
Loading