Bug 1384482 - Rename android-api-15 into android-api-16 r=mtabara draft
authorJohan Lorenzo <jlorenzo@mozilla.com>
Wed, 09 Aug 2017 16:18:15 +0200
changeset 654867 d24bd3b0298e4fc21e9e8029e5f69a65fd1012f9
parent 654592 1b4c59eef820b46eb0037aca68f83a15088db45f
child 728694 1814df594f71c1ce68aeca8bf4d4f81666670449
push id76716
push userbmo:jlorenzo@mozilla.com
push dateTue, 29 Aug 2017 11:32:11 +0000
reviewersmtabara
bugs1384482
milestone57.0a1
Bug 1384482 - Rename android-api-15 into android-api-16 r=mtabara MozReview-Commit-ID: 4j66pTZEJzq
build/docs/toolchains.rst
mobile/android/config/mozconfigs/android-api-15-frontend/nightly
mobile/android/config/mozconfigs/android-api-15-gradle-dependencies/nightly
mobile/android/config/mozconfigs/android-api-15-gradle/nightly
mobile/android/config/mozconfigs/android-api-15-gradle/nightly-artifact
mobile/android/config/mozconfigs/android-api-15/debug
mobile/android/config/mozconfigs/android-api-15/debug-artifact
mobile/android/config/mozconfigs/android-api-15/l10n-nightly
mobile/android/config/mozconfigs/android-api-15/nightly
mobile/android/config/mozconfigs/android-api-15/nightly-artifact
mobile/android/config/mozconfigs/android-api-15/nightly-old-id
mobile/android/config/mozconfigs/android-api-16-frontend/nightly
mobile/android/config/mozconfigs/android-api-16-gradle-dependencies/nightly
mobile/android/config/mozconfigs/android-api-16-gradle/nightly
mobile/android/config/mozconfigs/android-api-16-gradle/nightly-artifact
mobile/android/config/mozconfigs/android-api-16/debug
mobile/android/config/mozconfigs/android-api-16/debug-artifact
mobile/android/config/mozconfigs/android-api-16/l10n-nightly
mobile/android/config/mozconfigs/android-api-16/nightly
mobile/android/config/mozconfigs/android-api-16/nightly-artifact
mobile/android/config/mozconfigs/android-api-16/nightly-old-id
mobile/android/config/mozconfigs/android-x86/debug
mobile/android/config/mozconfigs/android-x86/l10n-nightly
mobile/android/config/mozconfigs/android-x86/nightly
mobile/android/config/mozconfigs/android-x86/nightly-old-id
mobile/android/config/mozconfigs/public-partner/distribution_sample/mozconfig1
mobile/android/confvars.sh
mobile/locales/l10n-changesets.json
python/mozbuild/mozbuild/artifacts.py
python/mozbuild/mozbuild/mach_commands.py
taskcluster/ci/build/android-stuff.yml
taskcluster/ci/build/android.yml
taskcluster/ci/l10n/kind.yml
taskcluster/ci/nightly-l10n/kind.yml
taskcluster/ci/test/test-platforms.yml
taskcluster/ci/test/tests.yml
taskcluster/ci/upload-symbols/kind.yml
taskcluster/docs/transforms.rst
taskcluster/taskgraph/target_tasks.py
taskcluster/taskgraph/transforms/beetmover.py
taskcluster/taskgraph/transforms/gecko_v2_whitelist.py
taskcluster/taskgraph/transforms/job/mozharness_test.py
taskcluster/taskgraph/transforms/tests.py
taskcluster/taskgraph/try_option_syntax.py
taskcluster/taskgraph/util/push_apk.py
testing/mozharness/configs/builds/branch_specifics.py
testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15.py
testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_artifact.py
testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_debug.py
testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_debug_artifact.py
testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_gradle.py
testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_gradle_artifact.py
testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_gradle_dependencies.py
testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_old_id.py
testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_partner_sample1.py
testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16.py
testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_artifact.py
testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_debug.py
testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_debug_artifact.py
testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_gradle.py
testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_gradle_artifact.py
testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_gradle_dependencies.py
testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_old_id.py
testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_partner_sample1.py
testing/mozharness/configs/builds/releng_sub_android_configs/64_checkstyle.py
testing/mozharness/configs/builds/releng_sub_android_configs/64_findbugs.py
testing/mozharness/configs/builds/releng_sub_android_configs/64_lint.py
testing/mozharness/configs/builds/releng_sub_android_configs/64_test.py
testing/mozharness/configs/l10n_bumper/jamun.py
testing/mozharness/configs/l10n_bumper/mozilla-aurora.py
testing/mozharness/configs/l10n_bumper/mozilla-beta.py
testing/mozharness/configs/l10n_bumper/mozilla-central.py
testing/mozharness/configs/merge_day/beta_to_release.py
testing/mozharness/configs/merge_day/central_to_beta.py
testing/mozharness/configs/multi_locale/jamun_android-armv6.json
testing/mozharness/configs/multi_locale/jamun_android-x86.json
testing/mozharness/configs/multi_locale/jamun_android.json
testing/mozharness/configs/releases/bouncer_fennec.py
testing/mozharness/configs/releases/bouncer_fennec_beta.py
testing/mozharness/configs/single_locale/ash_android-api-15.py
testing/mozharness/configs/single_locale/ash_android-api-16.py
testing/mozharness/configs/single_locale/date_android-api-15.py
testing/mozharness/configs/single_locale/date_android-api-16.py
testing/mozharness/configs/single_locale/jamun_android-api-15.py
testing/mozharness/configs/single_locale/jamun_android-api-16.py
testing/mozharness/configs/single_locale/mozilla-aurora_android-api-15.py
testing/mozharness/configs/single_locale/mozilla-aurora_android-api-16.py
testing/mozharness/configs/single_locale/mozilla-beta_android-api-15.py
testing/mozharness/configs/single_locale/mozilla-beta_android-api-16.py
testing/mozharness/configs/single_locale/mozilla-central_android-api-15.py
testing/mozharness/configs/single_locale/mozilla-central_android-api-16.py
testing/mozharness/configs/single_locale/mozilla-release_android-api-15.py
testing/mozharness/configs/single_locale/mozilla-release_android-api-16.py
testing/mozharness/configs/single_locale/staging_release_mozilla-beta_android_api_15.py
testing/mozharness/configs/single_locale/staging_release_mozilla-beta_android_api_16.py
testing/mozharness/configs/single_locale/staging_release_mozilla-release_android_api_15.py
testing/mozharness/configs/single_locale/staging_release_mozilla-release_android_api_16.py
testing/mozharness/configs/single_locale/tc_android-api-15.py
testing/mozharness/configs/single_locale/tc_android-api-16.py
testing/mozharness/configs/single_locale/try_android-api-15.py
testing/mozharness/configs/single_locale/try_android-api-16.py
testing/mozharness/mozharness/mozilla/building/buildbase.py
testing/mozharness/scripts/mobile_l10n.py
--- a/build/docs/toolchains.rst
+++ b/build/docs/toolchains.rst
@@ -69,17 +69,17 @@ don't need to fetch additional Maven dep
 redistributed publicly.)
 
 Archiving the Gradle executable is straight-forward, but archiving a
 local Maven repository is not.  Therefore a special Task Cluster
 Docker image and job exist for producing the required archives.  The
 Docker image definition is rooted in
 ``taskcluster/docker/android-gradle-build``.  The Task Cluster job
 definition is in
-``testing/taskcluster/tasks/builds/android_api_15_gradle_dependencies.yml``.
+``testing/taskcluster/tasks/builds/android_api_16_gradle_dependencies.yml``.
 The job runs in a container based on the custom Docker image and
 spawns a Sonatype Nexus proxying Maven repository process in the
 background.  The job builds Firefox for Android using Gradle and the
 in-tree Gradle configuration rooted at ``build.gradle``.  The spawned
 proxying Maven repository downloads external dependencies and collects
 them.  After the Gradle build completes, the job archives the Gradle
 version used to build, and the downloaded Maven repository, and
 exposes them as Task Cluster artifacts.
@@ -97,15 +97,15 @@ To update the version of Gradle in the a
 ``gradle/wrapper/gradle-wrapper.properties``.  Be sure to also update
 the SHA256 checksum to prevent poisoning the build machines!
 
 To update the versions of Gradle dependencies used, update
 ``dependencies`` sections in the in-tree Gradle configuration rooted
 at ``build.gradle``.  Once you are confident your changes build
 locally, push a fresh try build with an invocation like::
 
-   $ hg push-to-try -m "try: -b o -p android-api-15-gradle-dependencies"
+   $ hg push-to-try -m "try: -b o -p android-api-16-gradle-dependencies"
 
 Then `upload your archives to tooltool
 <https://wiki.mozilla.org/ReleaseEngineering/Applications/Tooltool#How_To_Upload_To_Tooltool>`_,
 update the in-tree manifests in
 ``mobile/android/config/tooltool-manifests``, and push a fresh try
 build.
rename from mobile/android/config/mozconfigs/android-api-15-frontend/nightly
rename to mobile/android/config/mozconfigs/android-api-16-frontend/nightly
--- a/mobile/android/config/mozconfigs/android-api-15-frontend/nightly
+++ b/mobile/android/config/mozconfigs/android-api-16-frontend/nightly
@@ -20,21 +20,26 @@ export GRADLE_MAVEN_REPOSITORIES="file:/
 unset HOST_CC
 unset HOST_CXX
 unset RUSTC
 unset CARGO
 
 ac_add_options --disable-compile-environment
 ac_add_options --disable-tests
 
-# From here on, like ../android-api-15/nightly.
+# From here on, like ../android-api-16/nightly.
 
 ac_add_options --enable-profiling
 
 # Android
+# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
+# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
+# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
+# If you think you can't handle the whole set of changes, please reach out to the Release
+# Engineering team.
 ac_add_options --with-android-min-sdk=16
 ac_add_options --target=arm-linux-androideabi
 
 ac_add_options --with-branding=mobile/android/branding/nightly
 
 # This will overwrite the default of stripping everything and keep the symbol table.
 # This is useful for profiling with eideticker. See bug 788680
 STRIP_FLAGS="--strip-debug"
rename from mobile/android/config/mozconfigs/android-api-15-gradle-dependencies/nightly
rename to mobile/android/config/mozconfigs/android-api-16-gradle-dependencies/nightly
--- a/mobile/android/config/mozconfigs/android-api-15-gradle-dependencies/nightly
+++ b/mobile/android/config/mozconfigs/android-api-16-gradle-dependencies/nightly
@@ -14,41 +14,46 @@ NO_NDK=1
 
 . "$topsrcdir/mobile/android/config/mozconfigs/common"
 
 # We want to download Gradle.
 ac_add_options --with-gradle
 # We want to use (and populate!) the local Nexus repositories.
 export GRADLE_MAVEN_REPOSITORIES="http://localhost:8081/nexus/content/repositories/jcenter/","http://localhost:8081/nexus/content/repositories/google/"
 
-# From here on, just like ../android-api-15-frontend/nightly.
+# From here on, just like ../android-api-16-frontend/nightly.
 
 ac_add_options --disable-compile-environment
 unset HOST_CC
 unset HOST_CXX
 unset RUSTC
 unset CARGO
 
 ac_add_options --disable-tests
 
 ac_add_options --enable-profiling
 
 # Android
+# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
+# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
+# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
+# If you think you can't handle the whole set of changes, please reach out to the Release
+# Engineering team.
 ac_add_options --with-android-min-sdk=16
 ac_add_options --target=arm-linux-androideabi
 
 ac_add_options --with-branding=mobile/android/branding/nightly
 
 # This will overwrite the default of stripping everything and keep the symbol table.
 # This is useful for profiling with eideticker. See bug 788680
 STRIP_FLAGS="--strip-debug"
 
 export MOZILLA_OFFICIAL=1
 export MOZ_TELEMETRY_REPORTING=1
 export MOZ_ANDROID_POCKET=1
 
 . "$topsrcdir/mobile/android/config/mozconfigs/common.override"
 
-# End ../android-api-15-frontend/nightly.
+# End ../android-api-16-frontend/nightly.
 
 # Populated after checking out the sources and before building the
 # tree as part of the dependencies task bin/ scripts.
 ac_add_options --with-android-sdk="/builds/worker/.mozbuild/android-sdk-linux"
rename from mobile/android/config/mozconfigs/android-api-15-gradle/nightly
rename to mobile/android/config/mozconfigs/android-api-16-gradle/nightly
--- a/mobile/android/config/mozconfigs/android-api-15-gradle/nightly
+++ b/mobile/android/config/mozconfigs/android-api-16-gradle/nightly
@@ -1,8 +1,8 @@
 . "$topsrcdir/mobile/android/config/mozconfigs/common"
 
-. "$topsrcdir/mobile/android/config/mozconfigs/android-api-15/nightly"
+. "$topsrcdir/mobile/android/config/mozconfigs/android-api-16/nightly"
 
 ac_add_options --with-gradle="$topsrcdir/gradle-dist/bin/gradle"
 export GRADLE_MAVEN_REPOSITORIES="file://$topsrcdir/jcenter","file://$topsrcdir/google"
 
 . "$topsrcdir/mobile/android/config/mozconfigs/common.override"
rename from mobile/android/config/mozconfigs/android-api-15-gradle/nightly-artifact
rename to mobile/android/config/mozconfigs/android-api-16-gradle/nightly-artifact
--- a/mobile/android/config/mozconfigs/android-api-15-gradle/nightly-artifact
+++ b/mobile/android/config/mozconfigs/android-api-16-gradle/nightly-artifact
@@ -1,12 +1,12 @@
 . "$topsrcdir/build/mozconfig.artifact.automation"
 
 NO_CACHE=1
 NO_NDK=1
 
 . "$topsrcdir/mobile/android/config/mozconfigs/common"
 
-. "$topsrcdir/mobile/android/config/mozconfigs/android-api-15-gradle/nightly"
+. "$topsrcdir/mobile/android/config/mozconfigs/android-api-16-gradle/nightly"
 
 . "$topsrcdir/build/mozconfig.artifact"
 
 . "$topsrcdir/mobile/android/config/mozconfigs/common.override"
rename from mobile/android/config/mozconfigs/android-api-15/debug
rename to mobile/android/config/mozconfigs/android-api-16/debug
--- a/mobile/android/config/mozconfigs/android-api-15/debug
+++ b/mobile/android/config/mozconfigs/android-api-16/debug
@@ -1,15 +1,20 @@
 . "$topsrcdir/mobile/android/config/mozconfigs/common"
 
 # Global options
 ac_add_options --enable-debug
 ac_add_options --enable-marionette
 
 # Android
+# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
+# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
+# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
+# If you think you can't handle the whole set of changes, please reach out to the Release
+# Engineering team.
 ac_add_options --with-android-min-sdk=16
 ac_add_options --target=arm-linux-androideabi
 
 export MOZILLA_OFFICIAL=1
 export MOZ_TELEMETRY_REPORTING=1
 
 ac_add_options --with-branding=mobile/android/branding/nightly
 
rename from mobile/android/config/mozconfigs/android-api-15/debug-artifact
rename to mobile/android/config/mozconfigs/android-api-16/debug-artifact
--- a/mobile/android/config/mozconfigs/android-api-15/debug-artifact
+++ b/mobile/android/config/mozconfigs/android-api-16/debug-artifact
@@ -4,15 +4,15 @@ NO_CACHE=1
 NO_NDK=1
 
 . "$topsrcdir/mobile/android/config/mozconfigs/common"
 
 # Global options
 ac_add_options --enable-debug
 ac_add_options --enable-marionette
 
-. "$topsrcdir/mobile/android/config/mozconfigs/android-api-15/nightly"
+. "$topsrcdir/mobile/android/config/mozconfigs/android-api-16/nightly"
 
 . "$topsrcdir/build/mozconfig.artifact"
 
 ac_add_options --enable-artifact-build-symbols
 
 . "$topsrcdir/mobile/android/config/mozconfigs/common.override"
rename from mobile/android/config/mozconfigs/android-api-15/l10n-nightly
rename to mobile/android/config/mozconfigs/android-api-16/l10n-nightly
--- a/mobile/android/config/mozconfigs/android-api-15/l10n-nightly
+++ b/mobile/android/config/mozconfigs/android-api-16/l10n-nightly
@@ -6,16 +6,21 @@ NO_NDK=1
 ac_add_options --with-l10n-base=../../l10n-central
 
 . "$topsrcdir/build/mozconfig.no-compile"
 
 # Global options
 ac_add_options --disable-tests
 
 # Android
+# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
+# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
+# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
+# If you think you can't handle the whole set of changes, please reach out to the Release
+# Engineering team.
 ac_add_options --with-android-min-sdk=16
 ac_add_options --target=arm-linux-androideabi
 
 ac_add_options --enable-updater
 ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL}
 
 export MOZILLA_OFFICIAL=1
 
rename from mobile/android/config/mozconfigs/android-api-15/nightly
rename to mobile/android/config/mozconfigs/android-api-16/nightly
--- a/mobile/android/config/mozconfigs/android-api-15/nightly
+++ b/mobile/android/config/mozconfigs/android-api-16/nightly
@@ -1,13 +1,18 @@
 . "$topsrcdir/mobile/android/config/mozconfigs/common"
 
 ac_add_options --enable-profiling
 
 # Android
+# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
+# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
+# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
+# If you think you can't handle the whole set of changes, please reach out to the Release
+# Engineering team.
 ac_add_options --with-android-min-sdk=16
 ac_add_options --target=arm-linux-androideabi
 
 ac_add_options --with-branding=mobile/android/branding/nightly
 
 # This will overwrite the default of stripping everything and keep the symbol table.
 # This is useful for profiling with eideticker. See bug 788680
 STRIP_FLAGS="--strip-debug"
rename from mobile/android/config/mozconfigs/android-api-15/nightly-artifact
rename to mobile/android/config/mozconfigs/android-api-16/nightly-artifact
--- a/mobile/android/config/mozconfigs/android-api-15/nightly-artifact
+++ b/mobile/android/config/mozconfigs/android-api-16/nightly-artifact
@@ -1,14 +1,14 @@
 . "$topsrcdir/build/mozconfig.artifact.automation"
 
 NO_CACHE=1
 NO_NDK=1
 
 . "$topsrcdir/mobile/android/config/mozconfigs/common"
 
-. "$topsrcdir/mobile/android/config/mozconfigs/android-api-15/nightly"
+. "$topsrcdir/mobile/android/config/mozconfigs/android-api-16/nightly"
 
 . "$topsrcdir/build/mozconfig.artifact"
 
 ac_add_options --enable-artifact-build-symbols
 
 . "$topsrcdir/mobile/android/config/mozconfigs/common.override"
rename from mobile/android/config/mozconfigs/android-api-15/nightly-old-id
rename to mobile/android/config/mozconfigs/android-api-16/nightly-old-id
--- a/mobile/android/config/mozconfigs/android-api-15/nightly-old-id
+++ b/mobile/android/config/mozconfigs/android-api-16/nightly-old-id
@@ -1,13 +1,18 @@
 . "$topsrcdir/mobile/android/config/mozconfigs/common"
 
 
 
 # Android
+# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
+# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
+# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
+# If you think you can't handle the whole set of changes, please reach out to the Release
+# Engineering team.
 ac_add_options --with-android-min-sdk=16
 ac_add_options --target=arm-linux-androideabi
 
 ac_add_options --with-branding=mobile/android/branding/nightly-old-id
 
 # This will overwrite the default of stripping everything and keep the symbol table.
 # This is useful for profiling with eideticker. See bug 788680
 STRIP_FLAGS="--strip-debug"
--- a/mobile/android/config/mozconfigs/android-x86/debug
+++ b/mobile/android/config/mozconfigs/android-x86/debug
@@ -1,14 +1,19 @@
 . "$topsrcdir/mobile/android/config/mozconfigs/common"
 
 # Global options
 ac_add_options --enable-debug
 
 # Android
+# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
+# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
+# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
+# If you think you can't handle the whole set of changes, please reach out to the Release
+# Engineering team.
 ac_add_options --target=i386-linux-android
 ac_add_options --with-android-min-sdk=16
 
 export MOZILLA_OFFICIAL=1
 export MOZ_TELEMETRY_REPORTING=1
 export MOZ_ANDROID_POCKET=1
 
 ac_add_options --with-branding=mobile/android/branding/nightly
--- a/mobile/android/config/mozconfigs/android-x86/l10n-nightly
+++ b/mobile/android/config/mozconfigs/android-x86/l10n-nightly
@@ -6,16 +6,21 @@ NO_NDK=1
 ac_add_options --with-l10n-base=../../l10n-central
 
 . "$topsrcdir/build/mozconfig.no-compile"
 
 # Global options
 ac_add_options --disable-tests
 
 # Android
+# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
+# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
+# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
+# If you think you can't handle the whole set of changes, please reach out to the Release
+# Engineering team.
 ac_add_options --target=i386-linux-android
 ac_add_options --with-android-min-sdk=16
 
 ac_add_options --enable-updater
 ac_add_options --enable-update-channel=${MOZ_UPDATE_CHANNEL}
 
 export MOZILLA_OFFICIAL=1
 
--- a/mobile/android/config/mozconfigs/android-x86/nightly
+++ b/mobile/android/config/mozconfigs/android-x86/nightly
@@ -1,10 +1,15 @@
 . "$topsrcdir/mobile/android/config/mozconfigs/common"
 
+# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
+# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
+# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
+# If you think you can't handle the whole set of changes, please reach out to the Release
+# Engineering team.
 ac_add_options --target=i386-linux-android
 ac_add_options --with-android-min-sdk=16
 
 ac_add_options --enable-profiling
 
 ac_add_options --with-branding=mobile/android/branding/nightly
 
 # This will overwrite the default of stripping everything and keep the symbol table.
--- a/mobile/android/config/mozconfigs/android-x86/nightly-old-id
+++ b/mobile/android/config/mozconfigs/android-x86/nightly-old-id
@@ -1,10 +1,15 @@
 . "$topsrcdir/mobile/android/config/mozconfigs/common"
 
+# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
+# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
+# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
+# If you think you can't handle the whole set of changes, please reach out to the Release
+# Engineering team.
 ac_add_options --target=i386-linux-android
 ac_add_options --with-android-min-sdk=16
 
 
 
 ac_add_options --with-branding=mobile/android/branding/nightly-old-id
 
 # This will overwrite the default of stripping everything and keep the symbol table.
--- a/mobile/android/config/mozconfigs/public-partner/distribution_sample/mozconfig1
+++ b/mobile/android/config/mozconfigs/public-partner/distribution_sample/mozconfig1
@@ -1,14 +1,19 @@
-# currently a copy of mobile/android/config/mozconfigs/android-api-15/nightly
+# currently a copy of mobile/android/config/mozconfigs/android-api-16/nightly
 . "$topsrcdir/mobile/android/config/mozconfigs/common"
 
 ac_add_options --enable-profiling
 
 # Android
+# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
+# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
+# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
+# If you think you can't handle the whole set of changes, please reach out to the Release
+# Engineering team.
 ac_add_options --with-android-min-sdk=16
 ac_add_options --target=arm-linux-androideabi
 
 ac_add_options --with-branding=mobile/android/branding/nightly
 
 ac_add_options --with-android-distribution-directory=/builds/worker/workspace/build/partner
 
 # This will overwrite the default of stripping everything and keep the symbol table.
--- a/mobile/android/confvars.sh
+++ b/mobile/android/confvars.sh
@@ -10,16 +10,22 @@ MOZ_APP_VERSION_DISPLAY=$FIREFOX_VERSION
 MOZ_APP_UA_NAME=Firefox
 
 MOZ_BRANDING_DIRECTORY=mobile/android/branding/unofficial
 MOZ_OFFICIAL_BRANDING_DIRECTORY=mobile/android/branding/official
 # MOZ_APP_DISPLAYNAME is set by branding/configure.sh
 
 # We support Android SDK version 16 and up by default.
 # See the --enable-android-min-sdk and --enable-android-max-sdk arguments in configure.in.
+# 
+# Warning: Before increasing the with-android-min-sdk value, please note several places in and out
+# of tree have to be changed. Otherwise, places like Treeherder or archive.mozilla.org will
+# advertise a bad API level. This may confuse people. As an example, please look at bug 1384482.
+# If you think you can't handle the whole set of changes, please reach out to the Release
+# Engineering team.
 MOZ_ANDROID_MIN_SDK_VERSION=16
 
 # There are several entry points into the Firefox application.  These are the names of some of the classes that are
 # listed in the Android manifest.  They are specified in here to avoid hard-coding them in source code files.
 MOZ_ANDROID_APPLICATION_CLASS=org.mozilla.gecko.GeckoApplication
 MOZ_ANDROID_BROWSER_INTENT_CLASS=org.mozilla.gecko.BrowserApp
 MOZ_ANDROID_SEARCH_INTENT_CLASS=org.mozilla.search.SearchActivity
 
--- a/mobile/locales/l10n-changesets.json
+++ b/mobile/locales/l10n-changesets.json
@@ -1,734 +1,734 @@
 {
     "an": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "ar": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "as": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "ast": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "az": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "be": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "bg": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "bn-BD": {
         "platforms": [
-            "android", 
-            "android-api-15"
-        ], 
+            "android",
+            "android-api-16"
+        ],
         "revision": "default"
-    }, 
+    },
     "bn-IN": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "br": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "ca": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "cak": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "cs": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "cy": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "da": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "de": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "dsb": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "el": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "en-GB": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "en-ZA": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "eo": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "es-AR": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "es-CL": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "es-ES": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "es-MX": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "et": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "eu": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "fa": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "ff": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "fi": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "fr": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "fy-NL": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "ga-IE": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "gd": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "gl": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "gn": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "gu-IN": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "he": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "hi-IN": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "hr": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "hsb": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "hu": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "hy-AM": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "id": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "is": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "it": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "ja": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "ka": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "kab": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "kk": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "kn": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "ko": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "lo": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "lt": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "lv": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "mai": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "ml": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "mr": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "ms": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "my": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "nb-NO": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "ne-NP": {
         "platforms": [
-            "android", 
-            "android-api-15"
-        ], 
+            "android",
+            "android-api-16"
+        ],
         "revision": "default"
-    }, 
+    },
     "nl": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "nn-NO": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "or": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "pa-IN": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "pl": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "pt-BR": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "pt-PT": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "rm": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "ro": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "ru": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "sk": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "sl": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "son": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "sq": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "sr": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "sv-SE": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "ta": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "te": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "th": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "tr": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "trs": {
         "platforms": [
-            "android", 
-            "android-api-15"
-        ], 
+            "android",
+            "android-api-16"
+        ],
         "revision": "default"
-    }, 
+    },
     "uk": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "ur": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "uz": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "vi": {
         "platforms": [
-            "android", 
-            "android-api-15"
-        ], 
+            "android",
+            "android-api-16"
+        ],
         "revision": "default"
-    }, 
+    },
     "wo": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "xh": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "zam": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "zh-CN": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
-    }, 
+    },
     "zh-TW": {
         "platforms": [
-            "android", 
-            "android-api-15", 
+            "android",
+            "android-api-16",
             "android-multilocale"
-        ], 
+        ],
         "revision": "default"
     }
 }
--- a/python/mozbuild/mozbuild/artifacts.py
+++ b/python/mozbuild/mozbuild/artifacts.py
@@ -467,19 +467,19 @@ class WinArtifactJob(ArtifactJob):
                              'matched an archive path.'.format(
                                  patterns=self.artifact_patterns))
 
 # Keep the keys of this map in sync with the |mach artifact| --job
 # options.  The keys of this map correspond to entries at
 # https://tools.taskcluster.net/index/artifacts/#gecko.v2.mozilla-central.latest/gecko.v2.mozilla-central.latest
 # The values correpsond to a pair of (<package regex>, <test archive regex>).
 JOB_DETAILS = {
-    'android-api-15-opt': (AndroidArtifactJob, (r'(public/build/fennec-(.*)\.android-arm.apk|public/build/target\.apk)',
+    'android-api-16-opt': (AndroidArtifactJob, (r'(public/build/fennec-(.*)\.android-arm.apk|public/build/target\.apk)',
                                                 r'public/build/fennec-(.*)\.common\.tests\.zip|public/build/target\.common\.tests\.zip')),
-    'android-api-15-debug': (AndroidArtifactJob, (r'public/build/target\.apk',
+    'android-api-16-debug': (AndroidArtifactJob, (r'public/build/target\.apk',
                                                   r'public/build/target\.common\.tests\.zip')),
     'android-x86-opt': (AndroidArtifactJob, (r'public/build/target\.apk',
                                              r'public/build/target\.common\.tests\.zip')),
     'linux-opt': (LinuxArtifactJob, (r'public/build/target\.tar\.bz2',
                                      r'public/build/target\.common\.tests\.zip')),
     'linux-debug': (LinuxArtifactJob, (r'public/build/target\.tar\.bz2',
                                        r'public/build/target\.common\.tests\.zip')),
     'linux64-opt': (LinuxArtifactJob, (r'public/build/target\.tar\.bz2',
@@ -888,17 +888,17 @@ class Artifacts(object):
         if self._substs.get('MOZ_DEBUG'):
             target_suffix = '-debug'
         else:
             target_suffix = '-opt'
 
         if self._substs.get('MOZ_BUILD_APP', '') == 'mobile/android':
             if self._substs['ANDROID_CPU_ARCH'] == 'x86':
                 return 'android-x86-opt'
-            return 'android-api-15' + target_suffix
+            return 'android-api-16' + target_suffix
 
         target_64bit = False
         if self._substs['target_cpu'] == 'x86_64':
             target_64bit = True
 
         if self._defines.get('XP_LINUX', False):
             return ('linux64' if target_64bit else 'linux') + target_suffix
         if self._defines.get('XP_WIN', False):
--- a/python/mozbuild/mozbuild/mach_commands.py
+++ b/python/mozbuild/mozbuild/mach_commands.py
@@ -1646,17 +1646,17 @@ class MachDebug(MachCommandBase):
                     return list(obj)
                 return json.JSONEncoder.default(self, obj)
         json.dump(self, cls=EnvironmentEncoder, sort_keys=True, fp=out)
 
 class ArtifactSubCommand(SubCommand):
     def __call__(self, func):
         after = SubCommand.__call__(self, func)
         jobchoices = {
-            'android-api-15',
+            'android-api-16',
             'android-x86',
             'linux',
             'linux64',
             'macosx64',
             'win32',
             'win64'
         }
         args = [
--- a/taskcluster/ci/build/android-stuff.yml
+++ b/taskcluster/ci/build/android-stuff.yml
@@ -1,15 +1,15 @@
 android-dependencies/opt:
-    description: "Android armv7 API 15+ gradle dependencies"
+    description: "Android armv7 api-16+ gradle dependencies"
     index:
         product: mobile
         job-name: android-dependencies
     treeherder:
-        platform: android-4-0-armv7-api15/opt
+        platform: android-4-0-armv7-api16/opt
         kind: build
         tier: 2
         symbol: tc(Deps)
     worker-type: aws-provisioner-v1/gecko-{level}-b-android
     worker:
         docker-image: {in-tree: android-gradle-build}
         env:
             GRADLE_USER_HOME: "/builds/worker/workspace/build/src/dotgradle-online"
@@ -31,33 +31,33 @@ android-dependencies/opt:
         using: mozharness
         actions: [get-secrets build multi-l10n update]
         config:
             - builds/releng_base_android_64_builds.py
             - disable_signing.py
             - platform_supports_post_upload_to_latest.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
-        custom-build-variant-cfg: api-15-gradle-dependencies
+        custom-build-variant-cfg: api-16-gradle-dependencies
         tooltool-downloads: internal
         job-script: taskcluster/scripts/builder/build-android-dependencies.sh
     optimizations:
       - - skip-unless-changed
         - - "mobile/android/config/**"
           - "testing/mozharness/configs/builds/releng_sub_android_configs/*gradle_dependencies.py"
           - "**/*.gradle"
           - "taskcluster/docker/android-gradle-build/**"
 
 android-test/opt:
     description: "Android armv7 unit tests"
     index:
         product: mobile
         job-name: android-test
     treeherder:
-        platform: android-4-0-armv7-api15/opt
+        platform: android-4-0-armv7-api16/opt
         kind: build
         tier: 2
         symbol: tc(test)
     worker-type: aws-provisioner-v1/gecko-{level}-b-android
     worker:
         docker-image: {in-tree: desktop-build}
         env:
             GRADLE_USER_HOME: "/builds/worker/workspace/build/src/dotgradle"
@@ -89,17 +89,17 @@ android-test/opt:
           - "**/*.gradle"
 
 android-lint/opt:
     description: "Android lint"
     index:
         product: mobile
         job-name: android-lint
     treeherder:
-        platform: android-4-0-armv7-api15/opt
+        platform: android-4-0-armv7-api16/opt
         kind: build
         tier: 2
         symbol: tc(lint)
     worker-type: aws-provisioner-v1/gecko-{level}-b-android
     worker:
         docker-image: {in-tree: desktop-build}
         env:
             GRADLE_USER_HOME: "/builds/worker/workspace/build/src/dotgradle"
@@ -152,17 +152,17 @@ android-lint/opt:
           - "**/*.gradle"
 
 android-checkstyle/opt:
     description: "Android checkstyle"
     index:
         product: mobile
         job-name: android-checkstyle
     treeherder:
-        platform: android-4-0-armv7-api15/opt
+        platform: android-4-0-armv7-api16/opt
         kind: build
         tier: 2
         symbol: tc(checkstyle)
     worker-type: aws-provisioner-v1/gecko-{level}-b-android
     worker:
         docker-image: {in-tree: desktop-build}
         env:
             GRADLE_USER_HOME: "/builds/worker/workspace/build/src/dotgradle"
@@ -199,17 +199,17 @@ android-checkstyle/opt:
           - "**/*.gradle"
 
 android-findbugs/opt:
     description: "Android findbugs"
     index:
         product: mobile
         job-name: android-findbugs
     treeherder:
-        platform: android-4-0-armv7-api15/opt
+        platform: android-4-0-armv7-api16/opt
         kind: build
         tier: 2
         symbol: tc(findbugs)
     worker-type: aws-provisioner-v1/gecko-{level}-b-android
     worker:
         docker-image: {in-tree: desktop-build}
         env:
             GRADLE_USER_HOME: "/builds/worker/workspace/build/src/dotgradle"
--- a/taskcluster/ci/build/android.yml
+++ b/taskcluster/ci/build/android.yml
@@ -1,31 +1,31 @@
-android-api-15/debug:
-    description: "Android 4.0 API15+ Debug"
+android-api-16/debug:
+    description: "Android 4.0 api-16+ Debug"
     index:
         product: mobile
-        job-name: android-api-15-debug
+        job-name: android-api-16-debug
     treeherder:
-        platform: android-4-0-armv7-api15/debug
+        platform: android-4-0-armv7-api-16/debug
         symbol: tc(B)
     worker-type: aws-provisioner-v1/gecko-{level}-b-android
     worker:
         max-run-time: 7200
         env:
             TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
     run:
         using: mozharness
         actions: [get-secrets build multi-l10n update]
         config:
             - builds/releng_base_android_64_builds.py
             - disable_signing.py
             - platform_supports_post_upload_to_latest.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
-        custom-build-variant-cfg: api-15-debug
+        custom-build-variant-cfg: api-16-debug
         tooltool-downloads: internal
     toolchains:
         - linux64-gcc
         - linux64-sccache
 
 android-x86/opt:
     description: "Android 4.2 x86 Opt"
     index:
@@ -81,71 +81,71 @@ android-x86-nightly/opt:
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
         custom-build-variant-cfg: x86
         tooltool-downloads: internal
     toolchains:
         - linux64-gcc
         - linux64-sccache
 
-android-api-15/opt:
-    description: "Android 4.0 API15+ Opt"
+android-api-16/opt:
+    description: "Android 4.0 api-16+ Opt"
     index:
         product: mobile
-        job-name: android-api-15-opt
+        job-name: android-api-16-opt
     treeherder:
-        platform: android-4-0-armv7-api15/opt
+        platform: android-4-0-armv7-api-16/opt
         symbol: tc(B)
     worker-type: aws-provisioner-v1/gecko-{level}-b-android
     worker:
         max-run-time: 7200
         env:
             TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
     run:
         using: mozharness
         actions: [get-secrets build multi-l10n update]
         config:
             - builds/releng_base_android_64_builds.py
             - disable_signing.py
             - platform_supports_post_upload_to_latest.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
-        custom-build-variant-cfg: api-15
+        custom-build-variant-cfg: api-16
         tooltool-downloads: internal
     toolchains:
         - linux64-gcc
         - linux64-sccache
 
-android-api-15-nightly/opt:
-    description: "Android 4.0 API15+ Nightly"
+android-api-16-nightly/opt:
+    description: "Android 4.0 api-16+ Nightly"
     attributes:
         nightly: true
     index:
         product: mobile
-        job-name: android-api-15-opt
+        job-name: android-api-16-opt
         type: nightly-with-multi-l10n
     treeherder:
-        platform: android-4-0-armv7-api15/opt
+        platform: android-4-0-armv7-api-16/opt
         symbol: tc(N)
     worker-type: aws-provisioner-v1/gecko-{level}-b-android
     worker:
         max-run-time: 7200
         env:
             TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
     run:
         using: mozharness
         actions: [get-secrets build multi-l10n update]
         config:
             - builds/releng_base_android_64_builds.py
             - disable_signing.py
             - platform_supports_post_upload_to_latest.py
             - taskcluster_nightly.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
-        custom-build-variant-cfg: api-15
+        custom-build-variant-cfg: api-16
         tooltool-downloads: internal
     toolchains:
         - linux64-gcc
         - linux64-sccache
 
 android-x86-old-id/opt:
     description: "Android 4.2 x86 Opt OldId"
     index:
@@ -203,85 +203,85 @@ android-x86-old-id-nightly/opt:
         secrets: true
         custom-build-variant-cfg: x86-old-id
         tooltool-downloads: internal
     run-on-projects: [ 'mozilla-central' ]
     toolchains:
         - linux64-gcc
         - linux64-sccache
 
-android-api-15-old-id/opt:
-    description: "Android 4.0 API15+ Opt OldId"
+android-api-16-old-id/opt:
+    description: "Android 4.0 api-16+ Opt OldId"
     index:
         product: mobile
-        job-name: android-api-15-old-id-opt
+        job-name: android-api-16-old-id-opt
     treeherder:
-        platform: android-4-0-armv7-api15-old-id/opt
+        platform: android-4-0-armv7-api-16-old-id/opt
         symbol: tc(B)
     worker-type: aws-provisioner-v1/gecko-{level}-b-android
     worker:
         max-run-time: 7200
         env:
             TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
     run:
         using: mozharness
         actions: [get-secrets build multi-l10n update]
         config:
             - builds/releng_base_android_64_builds.py
             - disable_signing.py
             - platform_supports_post_upload_to_latest.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
-        custom-build-variant-cfg: api-15-old-id
+        custom-build-variant-cfg: api-16-old-id
         tooltool-downloads: internal
     run-on-projects: [ 'mozilla-central' ]
     toolchains:
         - linux64-gcc
         - linux64-sccache
 
-android-api-15-old-id-nightly/opt:
-    description: "Android 4.0 API15+ OldId Nightly"
+android-api-16-old-id-nightly/opt:
+    description: "Android 4.0 api-16+ OldId Nightly"
     attributes:
         nightly: true
     index:
         product: mobile
-        job-name: android-api-15-old-id-opt
+        job-name: android-api-16-old-id-opt
         type: nightly-with-multi-l10n
     treeherder:
-        platform: android-4-0-armv7-api15-old-id/opt
+        platform: android-4-0-armv7-api-16-old-id/opt
         symbol: tc(N)
     worker-type: aws-provisioner-v1/gecko-{level}-b-android
     worker:
         max-run-time: 7200
         env:
             TOOLTOOL_MANIFEST: "mobile/android/config/tooltool-manifests/android/releng.manifest"
     run:
         using: mozharness
         actions: [get-secrets build multi-l10n update]
         config:
             - builds/releng_base_android_64_builds.py
             - disable_signing.py
             - platform_supports_post_upload_to_latest.py
             - taskcluster_nightly.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
-        custom-build-variant-cfg: api-15-old-id
+        custom-build-variant-cfg: api-16-old-id
         tooltool-downloads: internal
     run-on-projects: [ 'mozilla-central' ]
     toolchains:
         - linux64-gcc
         - linux64-sccache
 
-android-api-15-gradle/opt:
-    description: "Android 4.0 API15+ (Gradle) Opt"
+android-api-16-gradle/opt:
+    description: "Android 4.0 api-16+ (Gradle) Opt"
     index:
         product: mobile
-        job-name: android-api-15-gradle-opt
+        job-name: android-api-16-gradle-opt
     treeherder:
-        platform: android-api-15-gradle/opt
+        platform: android-api-16-gradle/opt
         symbol: tc(Bg)
         tier: 2
     worker-type: aws-provisioner-v1/gecko-{level}-b-android
     worker:
         max-run-time: 7200
         env:
             # Bug 1292762 - Set GRADLE_USER_HOME to avoid sdk-manager-plugin intermittent
             GRADLE_USER_HOME: /builds/worker/workspace/build/src/dotgradle
@@ -300,17 +300,17 @@ android-api-15-gradle/opt:
         using: mozharness
         actions: [get-secrets build multi-l10n update]
         config:
             - builds/releng_base_android_64_builds.py
             - disable_signing.py
             - platform_supports_post_upload_to_latest.py
         script: "mozharness/scripts/fx_desktop_build.py"
         secrets: true
-        custom-build-variant-cfg: api-15-gradle
+        custom-build-variant-cfg: api-16-gradle
         tooltool-downloads: internal
     toolchains:
         - linux64-gcc
         - linux64-sccache
 
 android-aarch64/opt:
     description: "Android 5.0 AArch64 Opt"
     index:
--- a/taskcluster/ci/l10n/kind.yml
+++ b/taskcluster/ci/l10n/kind.yml
@@ -11,67 +11,67 @@ transforms:
    - taskgraph.transforms.task:transforms
 
 kind-dependencies:
    - build
 
 only-for-build-platforms:
    - linux64/opt
    - linux/opt
-   - android-api-15/opt
+   - android-api-16/opt
    #- macosx64/opt
 
 job-template:
    description:
       by-build-platform:
          default: Localization
-         android-api-15-l10n: Single Locale Repack
+         android-api-16-l10n: Single Locale Repack
    locales-file:
       by-build-platform:
          default: browser/locales/all-locales
-         android-api-15-l10n: mobile/locales/l10n-changesets.json
+         android-api-16-l10n: mobile/locales/l10n-changesets.json
    ignore-locales:
       by-build-platform:
          # OSX has a special locale for japanese
          macosx64.*: [ja]
          default: [ja-JP-mac]
    run-time:
       by-build-platform:
          default: 36000
-         android-api-15-l10n: 18000
+         android-api-16-l10n: 18000
    tooltool:
       by-build-platform:
          default: public
-         android-api-15-l10n: internal
+         android-api-16-l10n: internal
          macosx64-nightly: internal
    worker-type:
       by-build-platform:
          default: aws-provisioner-v1/gecko-{level}-b-linux
          android: aws-provisioner-v1/gecko-{level}-b-android
    treeherder:
       symbol: tc(L10n)
       tier: 2
       platform:
          by-build-platform:
             linux64-l10n: linux64/opt
             linux-l10n: linux32/opt
             macosx64: osx-cross/opt
-            android-api-15-l10n: android-4-0-armv7-api15/opt
+            android-api-16-l10n: android-4-0-armv7-api-16/opt
    mozharness:
       config:
          by-build-platform:
             linux-l10n:
                - single_locale/tc_linux32.py
             linux64-l10n:
                - single_locale/tc_linux64.py
             macosx64:
                - single_locale/tc_macosx64.py
-            android-api-15-l10n:
-               - single_locale/{project}_android-api-15.py
-               - single_locale/tc_android-api-15.py
+            android-api-16-l10n:
+               - single_locale/{project}_android-api-16.py
+               - single_locale/tc_android-api-16.py
             # no default, so we fail on new entries
       options:
          by-build-platform:
             linux-l10n:
                - environment-config=single_locale/production.py
                - branch-config=single_locale/{project}.py
                - platform-config=single_locale/linux32.py
                - total-chunks=1
@@ -89,22 +89,22 @@ job-template:
                - total-chunks=1
                - this-chunk=1
             default:
                - total-chunks=1
                - this-chunk=1
       actions:
          by-build-platform:
             default: [clone-locales list-locales setup repack summary]
-            android-api-15-l10n: [clone-locales list-locales setup repack
+            android-api-16-l10n: [clone-locales list-locales setup repack
                                   upload-repacks summary]
       script:
          by-build-platform:
             default: mozharness/scripts/desktop_l10n.py
-            android-api-15-l10n: mozharness/scripts/mobile_l10n.py
+            android-api-16-l10n: mozharness/scripts/mobile_l10n.py
    when:
       files-changed:
          - browser/locales/all-locales
          - testing/mozharness/configs/single_locale/**
          - testing/mozharness/mozharness/mozilla/l10n/locales.py
          - testing/mozharness/scripts/desktop_l10n.py
          - third_party/python/compare-locales/**
          - toolkit/locales/**
--- a/taskcluster/ci/nightly-l10n/kind.yml
+++ b/taskcluster/ci/nightly-l10n/kind.yml
@@ -10,78 +10,78 @@ transforms:
    - taskgraph.transforms.task:transforms
 
 kind-dependencies:
    - build
 
 only-for-build-platforms:
    - linux64-nightly/opt
    - linux-nightly/opt
-   - android-api-15-nightly/opt
+   - android-api-16-nightly/opt
    - macosx64-nightly/opt
    - win32-nightly/opt
    - win64-nightly/opt
 
 job-template:
    description:
       by-build-platform:
          default: Localization
-         android-api-15-nightly: Single Locale Repack
+         android-api-16-nightly: Single Locale Repack
    locales-file:
       by-build-platform:
          default: browser/locales/all-locales
-         android-api-15-nightly: mobile/locales/l10n-changesets.json
+         android-api-16-nightly: mobile/locales/l10n-changesets.json
    locales-per-chunk: 2
    run-on-projects: ['release']
    ignore-locales:
       by-build-platform:
          # OSX has a special locale for japanese
          macosx64.*: [ja]
          default: [ja-JP-mac]
    run-time:
       by-build-platform:
          default: 36000
-         android-api-15-nightly: 18000
+         android-api-16-nightly: 18000
    tooltool:
       by-build-platform:
          default: public
-         android-api-15-nightly: internal
+         android-api-16-nightly: internal
          macosx64-nightly: internal
          win32-nightly: internal
          win64-nightly: internal
    index:
       type: l10n
       product:
          by-build-platform:
             default: firefox
-            android-api-15-nightly: mobile
+            android-api-16-nightly: mobile
       job-name:
          by-build-platform:
             linux-nightly: linux-opt
             linux64-nightly: linux64-opt
             macosx64-nightly: macosx64-opt
             win32-nightly: win32-opt
             win64-nightly: win64-opt
-            android-api-15-nightly: android-api-15-opt
+            android-api-16-nightly: android-api-16-opt
    worker-type:
       by-build-platform:
          default: aws-provisioner-v1/gecko-{level}-b-linux
-         android-api-15-nightly: aws-provisioner-v1/gecko-{level}-b-android
+         android-api-16-nightly: aws-provisioner-v1/gecko-{level}-b-android
          win.*: aws-provisioner-v1/gecko-{level}-b-win2012
    treeherder:
       symbol: tc-L10n(N)
       tier: 1
       platform:
          by-build-platform:
             linux64-nightly: linux64/opt
             linux-nightly: linux32/opt
             macosx64-nightly: osx-cross/opt
             win32-nightly: windows2012-32/opt
             win64-nightly: windows2012-64/opt
-            android-api-15-nightly: android-4-0-armv7-api15/opt
+            android-api-16-nightly: android-4-0-armv7-api-16/opt
    env:
       by-build-platform:
          linux.*:   # linux64 and 32 get same treatment here
             EN_US_PACKAGE_NAME: target.tar.bz2
             EN_US_BINARY_URL:
                task-reference: https://queue.taskcluster.net/v1/task/<signed-build>/artifacts/public/build
             MAR_TOOLS_URL:
                task-reference: https://queue.taskcluster.net/v1/task/<unsigned-build>/artifacts/public/build/host/bin
@@ -94,17 +94,17 @@ job-template:
          win.*:
             EN_US_PACKAGE_NAME: target.zip
             EN_US_BINARY_URL:
                task-reference: https://queue.taskcluster.net/v1/task/<signed-build>/artifacts/public/build
             EN_US_INSTALLER_BINARY_URL:
                task-reference: https://queue.taskcluster.net/v1/task/<repackage-signed>/artifacts/public/build
             MAR_TOOLS_URL:
                task-reference: https://queue.taskcluster.net/v1/task/<unsigned-build>/artifacts/public/build/host/bin
-         android-api-15-nightly:
+         android-api-16-nightly:
             EN_US_PACKAGE_NAME: target.apk
             EN_US_BINARY_URL:
                task-reference: https://queue.taskcluster.net/v1/task/<unsigned-build>/artifacts/public/build/en-US
    mozharness:
       config:
          by-build-platform:
             linux-nightly:
                - single_locale/tc_linux32.py
@@ -112,20 +112,20 @@ job-template:
             linux64-nightly:
                - single_locale/tc_linux64.py
                - taskcluster_nightly.py
             macosx64-nightly:
                - single_locale/tc_macosx64.py
                - taskcluster_nightly.py
             win32-nightly: []
             win64-nightly: []
-            android-api-15-nightly:
+            android-api-16-nightly:
                - taskcluster_nightly.py
-               - single_locale/{project}_android-api-15.py
-               - single_locale/tc_android-api-15.py
+               - single_locale/{project}_android-api-16.py
+               - single_locale/tc_android-api-16.py
             # no default, so we fail on new entries
       options:
          by-build-platform:
             linux-nightly:
                - environment-config=single_locale/production.py
                - branch-config=single_locale/{project}.py
                - platform-config=single_locale/linux32.py
             linux64-nightly:
@@ -148,14 +148,14 @@ job-template:
                - platform-config=single_locale/win64.py
                - config=single_locale/tc_win64.py
                - config=taskcluster_nightly.py
             default: [ ]
       actions:
          by-build-platform:
             default: ['clone-locales', 'list-locales', 'setup', 'repack',
                       'submit-to-balrog', 'summary']
-            android-api-15-nightly: ['clone-locales', 'list-locales', 'setup', 'repack',
+            android-api-16-nightly: ['clone-locales', 'list-locales', 'setup', 'repack',
                                      'upload-repacks', 'submit-to-balrog', 'summary']
       script:
          by-build-platform:
             default: mozharness/scripts/desktop_l10n.py
-            android-api-15-nightly: mozharness/scripts/mobile_l10n.py
+            android-api-16-nightly: mozharness/scripts/mobile_l10n.py
--- a/taskcluster/ci/test/test-platforms.yml
+++ b/taskcluster/ci/test/test-platforms.yml
@@ -293,29 +293,29 @@ macosx64-nightly/opt:
 macosx64-devedition/opt:
     build-platform: macosx64-devedition-nightly/opt
     test-sets:
         - macosx64-tests
 
 ##
 # Android platforms (matching /android.*/)
 
-android-4.3-arm7-api-15/debug:
-    build-platform: android-api-15/debug
+android-4.3-arm7-api-16/debug:
+    build-platform: android-api-16/debug
     test-sets:
         - android-common-tests
         - android-debug-tests
 
-android-4.3-arm7-api-15/opt:
-    build-platform: android-api-15/opt
+android-4.3-arm7-api-16/opt:
+    build-platform: android-api-16/opt
     test-sets:
         - android-common-tests
         - android-opt-tests
 
 android-4.2-x86/opt:
     build-platform: android-x86/opt
     test-sets:
         - android-x86-tests
 
-android-4.3-arm7-api-15-gradle/opt:
-    build-platform: android-api-15-gradle/opt
+android-4.3-arm7-api-16-gradle/opt:
+    build-platform: android-api-16-gradle/opt
     test-sets:
         - android-gradle-tests
--- a/taskcluster/ci/test/tests.yml
+++ b/taskcluster/ci/test/tests.yml
@@ -119,17 +119,17 @@ crashtest:
             android.*: xlarge
             default: default
     run-on-projects:
         by-test-platform:
             .*-stylo.*: ['autoland', 'mozilla-central', 'try']
             default: built-projects
     chunks:
         by-test-platform:
-            android-4.3-arm7-api-15/debug: 10
+            android-4.3-arm7-api-16/debug: 10
             android.*: 4
             default: 1
     e10s:
         by-test-platform:
             windows7-32/debug: both
             default: true
     mozharness:
         by-test-platform:
@@ -294,17 +294,17 @@ jsreftest:
     suite: reftest/jsreftest
     treeherder-symbol: tc-R(J)
     instance-size:
         by-test-platform:
             android.*: xlarge
             default: default
     chunks:
         by-test-platform:
-            android-4.3-arm7-api-15/debug: 100
+            android-4.3-arm7-api-16/debug: 100
             android.*: 40
             windows.*: 2
             linux64-ccov/.*: 5
             linux64-qr/.*: 4
             macosx.*: 2
             default: 3
     e10s:
         by-test-platform:
@@ -425,31 +425,31 @@ mochitest:
     loopback-video: true
     instance-size:
         by-test-platform:
             linux64-jsdcov/opt: xlarge
             android.*: xlarge
             default: legacy # Bug 1281241: migrating to m3.large instances
     chunks:
         by-test-platform:
-            android-4.3-arm7-api-15/debug: 48
+            android-4.3-arm7-api-16/debug: 48
             android.*: 20
             macosx.*: 5
             windows.*: 5
             linux32/debug: 16
             linux32-stylo/debug: 16
             linux.*: 10
     e10s:
         by-test-platform:
             linux64-jsdcov/opt: false
             windows7-32/debug: both
             default: true
     max-run-time:
         by-test-platform:
-            android-4.3-arm7-api-15/debug: 10800
+            android-4.3-arm7-api-16/debug: 10800
             linux64-jsdcov/opt: 10800
             default: 5400
     allow-software-gl-layers: false
     run-on-projects:
         by-test-platform:
             linux.*-stylo.*: ['autoland', 'mozilla-central', 'try']
             macosx64-stylo/.*: ['mozilla-central', 'try']
             windows7-32-stylo.*: ['autoland', 'mozilla-central', 'try']
@@ -642,17 +642,17 @@ mochitest-chrome:
     loopback-video: true
     virtualization: hardware
     instance-size:
         by-test-platform:
             android.*: xlarge
             default: default
     chunks:
         by-test-platform:
-            android-4.3-arm7-api-15/debug: 4
+            android-4.3-arm7-api-16/debug: 4
             android.*: 2
             default: 3
     max-run-time: 3600
     e10s: false
     run-on-projects:
         by-test-platform:
             windows7-32.*: ['try']
             linux32-stylo/debug: ['try']
@@ -1083,17 +1083,17 @@ reftest:
             default: null
     instance-size:
         by-test-platform:
             android.*: xlarge
             default: default
     virtualization: virtual-with-gpu
     chunks:
         by-test-platform:
-            android-4.3-arm7-api-15/debug: 48
+            android-4.3-arm7-api-16/debug: 48
             android.*: 16
             macosx64/opt: 1
             macosx64/debug: 2
             windows8-64.*/opt: 1
             windows8-64.*/debug: 2
             default: 8
     e10s:
         by-test-platform:
@@ -1244,19 +1244,19 @@ reftest-stylo:
 
 robocop:
     description: "Robocop run"
     suite: robocop
     treeherder-symbol: tc-M(rc)
     instance-size: xlarge
     chunks:
         by-test-platform:
-            # android-4.3-arm7-api-15/debug -- not run
-            android-4.3-arm7-api-15/opt: 4
-            android-4.3-arm7-api-15-gradle/opt: 4
+            # android-4.3-arm7-api-16/debug -- not run
+            android-4.3-arm7-api-16/opt: 4
+            android-4.3-arm7-api-16-gradle/opt: 4
     loopback-video: true
     e10s: false
     mozharness:
         script: android_emulator_unittest.py
         no-read-buildbot-config: true
         config:
             - android/androidarm_4_3.py
         extra-options:
--- a/taskcluster/ci/upload-symbols/kind.yml
+++ b/taskcluster/ci/upload-symbols/kind.yml
@@ -12,19 +12,19 @@ kind-dependencies:
     - build
 
 only-for-build-platforms:
     - linux64/opt
     - linux64/debug
     - linux64-nightly/opt
     - linux-nightly/opt
     - android-aarch64-nightly/opt
-    - android-api-15/opt
-    - android-api-15-nightly/opt
-    - android-api-15-old-id-nightly/opt
+    - android-api-16/opt
+    - android-api-16-nightly/opt
+    - android-api-16-old-id-nightly/opt
     - android-x86-nightly/opt
     - android-x86-old-id-nightly/opt
     - macosx64-nightly/opt
     - win32-nightly/opt
     - win64-nightly/opt
 
 job-template:
    label: # see transforms
--- a/taskcluster/docs/transforms.rst
+++ b/taskcluster/docs/transforms.rst
@@ -73,17 +73,17 @@ In the item, this looks like:
 This is a simple but powerful way to encode business rules in the items
 provided as input to the transforms, rather than expressing those rules in the
 transforms themselves.  If you are implementing a new business rule, prefer
 this mode where possible.  The structure is easily resolved to a single value
 using :func:`taskgraph.transform.base.resolve_keyed_by`.
 
 Exact matches are used immediately.  If no exact matches are found, each
 alternative is treated as a regular expression, matched against the whole
-value.  Thus ``android.*`` would match ``android-api-15/debug``.  If nothing
+value.  Thus ``android.*`` would match ``android-api-16/debug``.  If nothing
 matches as a regular expression, but there is a ``default`` alternative, it is
 used.  Otherwise, an exception is raised and graph generation stops.
 
 Organization
 -------------
 
 Task creation operates broadly in a few phases, with the interfaces of those
 stages defined by schemas.  The process begins with the raw data structures
--- a/taskcluster/taskgraph/target_tasks.py
+++ b/taskcluster/taskgraph/target_tasks.py
@@ -213,18 +213,18 @@ def target_tasks_valgrind(full_task_grap
 @_target_task('nightly_fennec')
 def target_tasks_nightly_fennec(full_task_graph, parameters):
     """Select the set of tasks required for a nightly build of fennec. The
     nightly build process involves a pipeline of builds, signing,
     and, eventually, uploading the tasks to balrog."""
     def filter(task):
         platform = task.attributes.get('build_platform')
         if platform in ('android-aarch64-nightly',
-                        'android-api-15-nightly',
-                        'android-api-15-old-id-nightly',
+                        'android-api-16-nightly',
+                        'android-api-16-old-id-nightly',
                         'android-nightly',
                         'android-x86-nightly',
                         'android-x86-old-id-nightly'):
             if not task.attributes.get('nightly', False):
                 return False
             return filter_for_project(task, parameters)
     return [l for l, t in full_task_graph.tasks.iteritems() if filter(t)]
 
@@ -250,17 +250,17 @@ def target_tasks_mozilla_beta(full_task_
     def filter(task):
         if not standard_filter(task, parameters):
             return False
         platform = task.attributes.get('build_platform')
         if platform in (
                 # On beta, Nightly builds are already PGOs
                 'linux-pgo', 'linux64-pgo',
                 'win32-pgo', 'win64-pgo',
-                'android-api-15-nightly', 'android-x86-nightly'
+                'android-api-16-nightly', 'android-x86-nightly'
                 ):
             return False
 
         if platform in (
                 'linux', 'linux64',
                 'macosx64',
                 'win32', 'win64',
                 ):
--- a/taskcluster/taskgraph/transforms/beetmover.py
+++ b/taskcluster/taskgraph/transforms/beetmover.py
@@ -145,19 +145,19 @@ UPSTREAM_ARTIFACT_UNSIGNED_PATHS = {
         "host/bin/mbsdiff",
     ],
     'linux-devedition-nightly': _DESKTOP_UPSTREAM_ARTIFACTS_UNSIGNED_EN_US + [
         "host/bin/mar",
         "host/bin/mbsdiff",
     ],
     'android-x86-nightly': _MOBILE_UPSTREAM_ARTIFACTS_UNSIGNED_EN_US,
     'android-aarch64-nightly': _MOBILE_UPSTREAM_ARTIFACTS_UNSIGNED_EN_US,
-    'android-api-15-nightly': _MOBILE_UPSTREAM_ARTIFACTS_UNSIGNED_EN_US,
+    'android-api-16-nightly': _MOBILE_UPSTREAM_ARTIFACTS_UNSIGNED_EN_US,
     'android-x86-old-id-nightly': _MOBILE_UPSTREAM_ARTIFACTS_UNSIGNED_EN_US,
-    'android-api-15-old-id-nightly': _MOBILE_UPSTREAM_ARTIFACTS_UNSIGNED_EN_US,
+    'android-api-16-old-id-nightly': _MOBILE_UPSTREAM_ARTIFACTS_UNSIGNED_EN_US,
     'macosx64-nightly': _DESKTOP_UPSTREAM_ARTIFACTS_UNSIGNED_EN_US + [
         "host/bin/mar",
         "host/bin/mbsdiff",
     ],
     'macosx64-devedition-nightly': _DESKTOP_UPSTREAM_ARTIFACTS_UNSIGNED_EN_US + [
         "host/bin/mar",
         "host/bin/mbsdiff",
     ],
@@ -177,19 +177,19 @@ UPSTREAM_ARTIFACT_UNSIGNED_PATHS = {
         "host/bin/mar.exe",
         "host/bin/mbsdiff.exe",
     ],
     'linux64-nightly-l10n': _DESKTOP_UPSTREAM_ARTIFACTS_UNSIGNED_L10N,
     'linux-nightly-l10n': _DESKTOP_UPSTREAM_ARTIFACTS_UNSIGNED_L10N,
     'android-x86-nightly-multi': _MOBILE_UPSTREAM_ARTIFACTS_UNSIGNED_MULTI,
     'android-x86-old-id-nightly-multi': _MOBILE_UPSTREAM_ARTIFACTS_UNSIGNED_MULTI,
     'android-aarch64-nightly-multi': _MOBILE_UPSTREAM_ARTIFACTS_UNSIGNED_MULTI,
-    'android-api-15-nightly-l10n': ["balrog_props.json"],
-    'android-api-15-nightly-multi': _MOBILE_UPSTREAM_ARTIFACTS_UNSIGNED_MULTI,
-    'android-api-15-old-id-nightly-multi': _MOBILE_UPSTREAM_ARTIFACTS_UNSIGNED_MULTI,
+    'android-api-16-nightly-l10n': ["balrog_props.json"],
+    'android-api-16-nightly-multi': _MOBILE_UPSTREAM_ARTIFACTS_UNSIGNED_MULTI,
+    'android-api-16-old-id-nightly-multi': _MOBILE_UPSTREAM_ARTIFACTS_UNSIGNED_MULTI,
     'macosx64-nightly-l10n': _DESKTOP_UPSTREAM_ARTIFACTS_UNSIGNED_L10N,
     'win32-nightly-l10n': _DESKTOP_UPSTREAM_ARTIFACTS_UNSIGNED_L10N,
     'win64-nightly-l10n': _DESKTOP_UPSTREAM_ARTIFACTS_UNSIGNED_L10N,
 }
 # Until bug 1331141 is fixed, if you are adding any new artifacts here that
 # need to be transfered to S3, please be aware you also need to follow-up
 # with a beetmover patch in https://github.com/mozilla-releng/beetmoverscript/.
 # See example in bug 1348286
@@ -207,19 +207,19 @@ UPSTREAM_ARTIFACT_SIGNED_PATHS = {
         "target.tar.bz2.asc",
     ],
     'linux-devedition-nightly': _DESKTOP_UPSTREAM_ARTIFACTS_SIGNED_EN_US + [
         "target.tar.bz2",
         "target.tar.bz2.asc",
     ],
     'android-x86-nightly': ["en-US/target.apk"],
     'android-aarch64-nightly': ["en-US/target.apk"],
-    'android-api-15-nightly': ["en-US/target.apk"],
+    'android-api-16-nightly': ["en-US/target.apk"],
     'android-x86-old-id-nightly': ["en-US/target.apk"],
-    'android-api-15-old-id-nightly': ["en-US/target.apk"],
+    'android-api-16-old-id-nightly': ["en-US/target.apk"],
     'macosx64-nightly': _DESKTOP_UPSTREAM_ARTIFACTS_SIGNED_EN_US + [
         "target.dmg",
         "target.dmg.asc",
     ],
     'macosx64-devedition-nightly': _DESKTOP_UPSTREAM_ARTIFACTS_SIGNED_EN_US + [
         "target.dmg",
         "target.dmg.asc",
     ],
@@ -241,19 +241,19 @@ UPSTREAM_ARTIFACT_SIGNED_PATHS = {
     ],
     'linux-nightly-l10n': _DESKTOP_UPSTREAM_ARTIFACTS_SIGNED_L10N + [
         "target.tar.bz2",
         "target.tar.bz2.asc",
     ],
     'android-x86-nightly-multi': ["target.apk"],
     'android-x86-old-id-nightly-multi': ["target.apk"],
     'android-aarch64-nightly-multi': ["target.apk"],
-    'android-api-15-nightly-l10n': ["target.apk"],
-    'android-api-15-nightly-multi': ["target.apk"],
-    'android-api-15-old-id-nightly-multi': ["target.apk"],
+    'android-api-16-nightly-l10n': ["target.apk"],
+    'android-api-16-nightly-multi': ["target.apk"],
+    'android-api-16-old-id-nightly-multi': ["target.apk"],
     'macosx64-nightly-l10n': _DESKTOP_UPSTREAM_ARTIFACTS_SIGNED_L10N + [
         "target.dmg",
         "target.dmg.asc",
     ],
     'win32-nightly-l10n': _DESKTOP_UPSTREAM_ARTIFACTS_SIGNED_L10N + [
         "target.zip",
     ],
     'win64-nightly-l10n': _DESKTOP_UPSTREAM_ARTIFACTS_SIGNED_L10N + [
--- a/taskcluster/taskgraph/transforms/gecko_v2_whitelist.py
+++ b/taskcluster/taskgraph/transforms/gecko_v2_whitelist.py
@@ -12,20 +12,20 @@ here without any further fuss.
 Once all jobs have been ported from Buildbot, this file can be removed.
 """
 
 from __future__ import absolute_import, print_function, unicode_literals
 
 # please keep me in lexical order
 JOB_NAME_WHITELIST = set([
     'android-aarch64-opt',
-    'android-api-15-debug',
-    'android-api-15-gradle-opt',
-    'android-api-15-old-id-opt',
-    'android-api-15-opt',
+    'android-api-16-debug',
+    'android-api-16-gradle-opt',
+    'android-api-16-old-id-opt',
+    'android-api-16-opt',
     'android-checkstyle',
     'android-dependencies',
     'android-findbugs',
     'android-lint',
     'android-test',
     'android-x86-old-id-opt',
     'android-x86-opt',
     'browser-haz-debug',
--- a/taskcluster/taskgraph/transforms/job/mozharness_test.py
+++ b/taskcluster/taskgraph/transforms/job/mozharness_test.py
@@ -27,19 +27,19 @@ BUILDER_NAME_PREFIX = {
     'linux64-jsdcov': 'Ubuntu Code Coverage VM 12.04 x64',
     'linux64-qr': 'Ubuntu VM 12.04 x64',
     'linux64-stylo': 'Ubuntu VM 12.04 x64',
     'linux64-stylo-sequential': 'Ubuntu VM 12.04 x64',
     'linux64-devedition': 'Ubuntu VM 12.04 x64',
     'linux64-devedition-nightly': 'Ubuntu VM 12.04 x64',
     'macosx64': 'Rev7 MacOSX Yosemite 10.10.5',
     'macosx64-devedition': 'Rev7 MacOSX Yosemite 10.10.5 DevEdition',
-    'android-4.3-arm7-api-15': 'Android 4.3 armv7 API 15+',
+    'android-4.3-arm7-api-16': 'Android 4.3 armv7 api-16+',
     'android-4.2-x86': 'Android 4.2 x86 Emulator',
-    'android-4.3-arm7-api-15-gradle': 'Android 4.3 armv7 API 15+',
+    'android-4.3-arm7-api-16-gradle': 'Android 4.3 armv7 api-16+',
     'windows10-64': 'Windows 10 64-bit',
     'windows10-64-nightly': 'Windows 10 64-bit',
     'windows10-64-pgo': 'Windows 10 64-bit',
     'windows10-64-asan': 'Windows 10 64-bit',
     'windows10-64-stylo': 'Windows 10 64-bit',
     'windows7-32': 'Windows 7 32-bit',
     ('windows7-32', 'virtual-with-gpu'): 'Windows 7 VM-GFX 32-bit',
     'windows7-32-nightly': 'Windows 7 32-bit',
--- a/taskcluster/taskgraph/transforms/tests.py
+++ b/taskcluster/taskgraph/transforms/tests.py
@@ -488,20 +488,20 @@ def set_treeherder_machine_platform(conf
         'linux64-pgo/opt': 'linux64/pgo',
         'macosx64/debug': 'osx-10-10/debug',
         'macosx64/opt': 'osx-10-10/opt',
         'win64-asan/opt': 'windows10-64/asan',
         'win32-pgo/opt': 'windows7-32/pgo',
         'win64-pgo/opt': 'windows10-64/pgo',
         # The build names for Android platforms have partially evolved over the
         # years and need to be translated.
-        'android-api-15/debug': 'android-4-3-armv7-api15/debug',
-        'android-api-15/opt': 'android-4-3-armv7-api15/opt',
+        'android-api-16/debug': 'android-4-3-armv7-api-16/debug',
+        'android-api-16/opt': 'android-4-3-armv7-api-16/opt',
         'android-x86/opt': 'android-4-2-x86/opt',
-        'android-api-15-gradle/opt': 'android-api-15-gradle/opt',
+        'android-api-16-gradle/opt': 'android-api-16-gradle/opt',
     }
     for test in tests:
         # For most desktop platforms, the above table is not used for "regular"
         # builds, so we'll always pick the test platform here.
         # On macOS though, the regular builds are in the table.  This causes a
         # conflict in `verify_task_graph_symbol` once you add a new test
         # platform based on regular macOS builds, such as for Stylo.
         # Since it's unclear if the regular macOS builds can be removed from
@@ -541,18 +541,18 @@ def set_tier(config, tests):
                                          'windows7-32-nightly/opt',
                                          'windows10-64/debug',
                                          'windows10-64/opt',
                                          'windows10-64-pgo/opt',
                                          'windows10-64-devedition/opt',
                                          'windows10-64-nightly/opt',
                                          'macosx64/opt',
                                          'macosx64/debug',
-                                         'android-4.3-arm7-api-15/opt',
-                                         'android-4.3-arm7-api-15/debug',
+                                         'android-4.3-arm7-api-16/opt',
+                                         'android-4.3-arm7-api-16/debug',
                                          'android-4.2-x86/opt']:
                 test['tier'] = 1
             else:
                 test['tier'] = 2
         yield test
 
 
 @transforms.add
--- a/taskcluster/taskgraph/try_option_syntax.py
+++ b/taskcluster/taskgraph/try_option_syntax.py
@@ -120,17 +120,17 @@ UNITTEST_ALIASES = {
 # their previous methods of requesting "all linux64 tests" will include this
 # new platform, and they shouldn't have to explicitly spell out the new platform
 # every time for such cases.
 #
 # Note that the test platforms here are only the prefix up to the `/`.
 UNITTEST_PLATFORM_PRETTY_NAMES = {
     'Ubuntu': ['linux32', 'linux64', 'linux64-asan', 'linux64-stylo', 'linux64-stylo-sequential'],
     'x64': ['linux64', 'linux64-asan', 'linux64-stylo', 'linux64-stylo-sequential'],
-    'Android 4.3': ['android-4.3-arm7-api-15'],
+    'Android 4.3': ['android-4.3-arm7-api-16'],
     '10.10': ['macosx64'],
     # other commonly-used substrings for platforms not yet supported with
     # in-tree taskgraphs:
     # '10.10.5': [..TODO..],
     # '10.6': [..TODO..],
     # '10.8': [..TODO..],
     # 'Android 2.3 API9': [..TODO..],
     'Windows 7':  ['windows7-32'],
@@ -142,18 +142,18 @@ UNITTEST_PLATFORM_PRETTY_NAMES = {
     # 'win64': [..TODO..],
 }
 
 # We have a few platforms for which we want to do some "extra" builds, or at
 # least build-ish things.  Sort of.  Anyway, these other things are implemented
 # as different "platforms".  These do *not* automatically ride along with "-p
 # all"
 RIDEALONG_BUILDS = {
-    'android-api-15': [
-        'android-api-15-l10n',
+    'android-api-16': [
+        'android-api-16-l10n',
     ],
     'linux': [
         'linux-l10n',
     ],
     'linux64': [
         'linux64-l10n',
         'sm-plain',
         'sm-nonunified',
--- a/taskcluster/taskgraph/util/push_apk.py
+++ b/taskcluster/taskgraph/util/push_apk.py
@@ -6,17 +6,17 @@ Common functions for both push-apk and p
 """
 
 import re
 
 from taskgraph.util.schema import validate_schema
 
 REQUIRED_ARCHITECTURES = {
     'android-x86-nightly',
-    'android-api-15-nightly',
+    'android-api-16-nightly',
 }
 PLATFORM_REGEX = re.compile(r'build-signing-android-(\S+)-nightly')
 
 
 def fill_labels_tranform(_, jobs):
     for job in jobs:
         job['label'] = job['name']
 
--- a/testing/mozharness/configs/builds/branch_specifics.py
+++ b/testing/mozharness/configs/builds/branch_specifics.py
@@ -31,17 +31,17 @@
 config = {
     ### release branches
     "mozilla-central": {
         "repo_path": 'mozilla-central',
         "update_channel": "nightly",
         "graph_server_branch_name": "Firefox",
         'stage_server': 'upload.ffxbld.productdelivery.prod.mozaws.net',
         'platform_overrides': {
-            'android-api-15-old-id': {
+            'android-api-16-old-id': {
                 "update_channel": "nightly-old-id",
             },
             'android-x86-old-id': {
                 "update_channel": "nightly-old-id",
             },
         }
     },
     'mozilla-release': {
@@ -245,17 +245,17 @@ config = {
     'ux': {
         "graph_server_branch_name": "UX",
         'stage_server': 'upload.ffxbld.productdelivery.prod.mozaws.net',
     },
     'date': {
         'update_channel': 'nightly-date',
         'stage_server': 'upload.ffxbld.productdelivery.prod.mozaws.net',
         'platform_overrides': {
-            'android-api-15-old-id': {
+            'android-api-16-old-id': {
                 "update_channel": "nightly-old-id",
             },
             'android-x86-old-id': {
                 "update_channel": "nightly-old-id",
             },
         }
     },
     'cypress': {
rename from testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15.py
rename to testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16.py
--- a/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15.py
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16.py
@@ -1,8 +1,8 @@
 config = {
-    'base_name': 'Android armv7 API 15+ %(branch)s',
-    'stage_platform': 'android-api-15',
-    'build_type': 'api-15-opt',
-    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-15/nightly',
+    'base_name': 'Android armv7 api-16+ %(branch)s',
+    'stage_platform': 'android-api-16',
+    'build_type': 'api-16-opt',
+    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-16/nightly',
     'multi_locale_config_platform': 'android',
-    'artifact_flag_build_variant_in_try': 'api-15-artifact',
+    'artifact_flag_build_variant_in_try': 'api-16-artifact',
 }
rename from testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_artifact.py
rename to testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_artifact.py
--- a/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_artifact.py
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_artifact.py
@@ -1,8 +1,8 @@
 config = {
-    'base_name': 'Android armv7 API 15+ %(branch)s Artifact build',
-    'stage_platform': 'android-api-15',
-    'build_type': 'api-15-opt-artifact',
-    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-15/nightly-artifact',
+    'base_name': 'Android armv7 api-16+ %(branch)s Artifact build',
+    'stage_platform': 'android-api-16',
+    'build_type': 'api-16-opt-artifact',
+    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-16/nightly-artifact',
     'tooltool_manifest_src': 'mobile/android/config/tooltool-manifests/android/releng.manifest',
     'multi_locale_config_platform': 'android',
 }
rename from testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_debug.py
rename to testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_debug.py
--- a/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_debug.py
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_debug.py
@@ -1,9 +1,9 @@
 config = {
-    'base_name': 'Android armv7 API 15+ %(branch)s debug',
-    'stage_platform': 'android-api-15-debug',
-    'build_type': 'api-15-debug',
-    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-15/debug',
+    'base_name': 'Android armv7 api-16+ %(branch)s debug',
+    'stage_platform': 'android-api-16-debug',
+    'build_type': 'api-16-debug',
+    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-16/debug',
     'multi_locale_config_platform': 'android',
     'debug_build': True,
-    'artifact_flag_build_variant_in_try': 'api-15-debug-artifact',
+    'artifact_flag_build_variant_in_try': 'api-16-debug-artifact',
 }
rename from testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_debug_artifact.py
rename to testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_debug_artifact.py
--- a/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_debug_artifact.py
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_debug_artifact.py
@@ -1,9 +1,9 @@
 config = {
-    'base_name': 'Android armv7 API 15+ %(branch)s debug Artifact build',
-    'stage_platform': 'android-api-15-debug',
-    'build_type': 'api-15-debug-artifact',
-    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-15/debug-artifact',
+    'base_name': 'Android armv7 api-16+ %(branch)s debug Artifact build',
+    'stage_platform': 'android-api-16-debug',
+    'build_type': 'api-16-debug-artifact',
+    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-16/debug-artifact',
     'tooltool_manifest_src': 'mobile/android/config/tooltool-manifests/android/releng.manifest',
     'multi_locale_config_platform': 'android',
     'debug_build': True,
 }
rename from testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_gradle.py
rename to testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_gradle.py
--- a/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_gradle.py
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_gradle.py
@@ -1,18 +1,18 @@
 config = {
-    'base_name': 'Android armv7 API 15+ %(branch)s Gradle',
-    'stage_platform': 'android-api-15-gradle',
-    'build_type': 'api-15-gradle',
-    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-15-gradle/nightly',
+    'base_name': 'Android armv7 api-16+ %(branch)s Gradle',
+    'stage_platform': 'android-api-16-gradle',
+    'build_type': 'api-16-gradle',
+    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-16-gradle/nightly',
     'multi_locale_config_platform': 'android',
     # It's not obvious, but postflight_build is after packaging, so the Gecko
     # binaries are in the object directory, ready to be packaged into the
     # GeckoView AAR.
     'postflight_build_mach_commands': [
         ['gradle',
          'geckoview:assembleWithGeckoBinaries',
          'geckoview_example:assembleWithGeckoBinaries',
          'uploadArchives',
         ],
     ],
-    'artifact_flag_build_variant_in_try': 'api-15-gradle-artifact',
+    'artifact_flag_build_variant_in_try': 'api-16-gradle-artifact',
 }
rename from testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_gradle_artifact.py
rename to testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_gradle_artifact.py
--- a/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_gradle_artifact.py
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_gradle_artifact.py
@@ -1,13 +1,13 @@
 config = {
-    'base_name': 'Android armv7 API 15+ %(branch)s Gradle Artifact build',
-    'stage_platform': 'android-api-15-gradle',
-    'build_type': 'api-15-gradle-artifact',
-    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-15-gradle/nightly-artifact',
+    'base_name': 'Android armv7 api-16+ %(branch)s Gradle Artifact build',
+    'stage_platform': 'android-api-16-gradle',
+    'build_type': 'api-16-gradle-artifact',
+    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-16-gradle/nightly-artifact',
     'tooltool_manifest_src': 'mobile/android/config/tooltool-manifests/android/releng.manifest',
     'multi_locale_config_platform': 'android',
     # It's not obvious, but postflight_build is after packaging, so the Gecko
     # binaries are in the object directory, ready to be packaged into the
     # GeckoView AAR.
     'postflight_build_mach_commands': [
         ['gradle',
          'geckoview:assembleWithGeckoBinaries',
rename from testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_gradle_dependencies.py
rename to testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_gradle_dependencies.py
--- a/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_gradle_dependencies.py
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_gradle_dependencies.py
@@ -1,13 +1,13 @@
 config = {
-    'base_name': 'Android armv7 API 15+ Gradle dependencies %(branch)s',
-    'stage_platform': 'android-api-15-gradle-dependencies',
-    'build_type': 'api-15-opt',
-    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-15-gradle-dependencies/nightly',
+    'base_name': 'Android armv7 api-16+ Gradle dependencies %(branch)s',
+    'stage_platform': 'android-api-16-gradle-dependencies',
+    'build_type': 'api-16-opt',
+    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-16-gradle-dependencies/nightly',
     'multi_locale_config_platform': 'android',
      # gradle-dependencies doesn't produce a package. So don't collect package metrics.
     'disable_package_metrics': True,
     'postflight_build_mach_commands': [
         ['android',
          'gradle-dependencies',
         ],
     ],
rename from testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_old_id.py
rename to testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_old_id.py
--- a/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_old_id.py
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_old_id.py
@@ -1,8 +1,8 @@
 config = {
-    'base_name': 'Android armv7 API 15+ %(branch)s OldId',
-    'stage_platform': 'android-api-15-old-id',
-    'build_type': 'api-15-opt',
-    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-15/nightly-old-id',
+    'base_name': 'Android armv7 api-16+ %(branch)s OldId',
+    'stage_platform': 'android-api-16-old-id',
+    'build_type': 'api-16-opt',
+    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-16/nightly-old-id',
     'multi_locale_config_platform': 'android',
-    'artifact_flag_build_variant_in_try': 'api-15-artifact',
+    'artifact_flag_build_variant_in_try': 'api-16-artifact',
 }
rename from testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_partner_sample1.py
rename to testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_partner_sample1.py
--- a/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_15_partner_sample1.py
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_api_16_partner_sample1.py
@@ -1,9 +1,9 @@
 config = {
-    'base_name': 'Android armv7 API 15+ partner Sample1 %(branch)s',
-    'stage_platform': 'android-api-15-partner-sample1',
-    'build_type': 'api-15-partner-sample1-opt',
+    'base_name': 'Android armv7 api-16+ partner Sample1 %(branch)s',
+    'stage_platform': 'android-api-16-partner-sample1',
+    'build_type': 'api-16-partner-sample1-opt',
     'src_mozconfig': None,  # use manifest to determine mozconfig src
     'src_mozconfig_manifest': 'partner/mozconfigs/mozconfig1.json',
     'tooltool_manifest_src': 'mobile/android/config/tooltool-manifests/android/releng.manifest',
     'multi_locale_config_platform': 'android',
 }
--- a/testing/mozharness/configs/builds/releng_sub_android_configs/64_checkstyle.py
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_checkstyle.py
@@ -1,13 +1,13 @@
 config = {
     'base_name': 'Android checkstyle %(branch)s',
     'stage_platform': 'android-checkstyle',
-    'build_type': 'api-15-opt',
-    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-15-frontend/nightly',
+    'build_type': 'api-16-opt',
+    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-16-frontend/nightly',
     'multi_locale_config_platform': 'android',
     # checkstyle doesn't produce a package. So don't collect package metrics.
     'disable_package_metrics': True,
     'postflight_build_mach_commands': [
         ['android',
          'checkstyle',
         ],
     ],
--- a/testing/mozharness/configs/builds/releng_sub_android_configs/64_findbugs.py
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_findbugs.py
@@ -1,13 +1,13 @@
 config = {
     'base_name': 'Android findbugs %(branch)s',
     'stage_platform': 'android-findbugs',
-    'build_type': 'api-15-opt',
-    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-15-frontend/nightly',
+    'build_type': 'api-16-opt',
+    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-16-frontend/nightly',
     'multi_locale_config_platform': 'android',
     # findbugs doesn't produce a package. So don't collect package metrics.
     'disable_package_metrics': True,
     'postflight_build_mach_commands': [
         ['android',
          'findbugs',
         ],
     ],
--- a/testing/mozharness/configs/builds/releng_sub_android_configs/64_lint.py
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_lint.py
@@ -1,13 +1,13 @@
 config = {
     'base_name': 'Android lint %(branch)s',
     'stage_platform': 'android-lint',
-    'build_type': 'api-15-opt',
-    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-15-frontend/nightly',
+    'build_type': 'api-16-opt',
+    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-16-frontend/nightly',
     'multi_locale_config_platform': 'android',
     # lint doesn't produce a package. So don't collect package metrics.
     'disable_package_metrics': True,
     'postflight_build_mach_commands': [
         ['android',
          'lint',
         ],
     ],
--- a/testing/mozharness/configs/builds/releng_sub_android_configs/64_test.py
+++ b/testing/mozharness/configs/builds/releng_sub_android_configs/64_test.py
@@ -1,13 +1,13 @@
 config = {
     'base_name': 'Android armv7 unit tests %(branch)s',
     'stage_platform': 'android-test',
-    'build_type': 'api-15-opt',
-    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-15-frontend/nightly',
+    'build_type': 'api-16-opt',
+    'src_mozconfig': 'mobile/android/config/mozconfigs/android-api-16-frontend/nightly',
     'multi_locale_config_platform': 'android',
     # unit tests don't produce a package. So don't collect package metrics.
     'disable_package_metrics': True,
     'postflight_build_mach_commands': [
         ['android',
          'test',
         ],
     ],
--- a/testing/mozharness/configs/l10n_bumper/jamun.py
+++ b/testing/mozharness/configs/l10n_bumper/jamun.py
@@ -19,16 +19,16 @@ config = {
     "version_path": "browser/config/version.txt",
 
     "bump_configs": [{
         "path": "mobile/locales/l10n-changesets.json",
         "format": "json",
         "name": "Fennec l10n changesets",
         "revision_url": "https://l10n.mozilla.org/shipping/l10n-changesets?av=fennec%(MAJOR_VERSION)s",
         "platform_configs": [{
-            "platforms": ["android-api-15", "android"],
+            "platforms": ["android-api-16", "android"],
             "path": "mobile/android/locales/all-locales"
         }, {
             "platforms": ["android-multilocale"],
             "path": "mobile/android/locales/maemo-locales"
         }],
     }],
 }
--- a/testing/mozharness/configs/l10n_bumper/mozilla-aurora.py
+++ b/testing/mozharness/configs/l10n_bumper/mozilla-aurora.py
@@ -18,16 +18,16 @@ config = {
     "vcs_share_base": "/builds/hg-shared",
     "version_path": "browser/config/version.txt",
 
     "bump_configs": [{
         "path": "mobile/locales/l10n-changesets.json",
         "format": "json",
         "name": "Fennec l10n changesets",
         "platform_configs": [{
-            "platforms": ["android-api-15", "android"],
+            "platforms": ["android-api-16", "android"],
             "path": "mobile/android/locales/all-locales"
         }, {
             "platforms": ["android-multilocale"],
             "path": "mobile/android/locales/maemo-locales"
         }],
     }],
 }
--- a/testing/mozharness/configs/l10n_bumper/mozilla-beta.py
+++ b/testing/mozharness/configs/l10n_bumper/mozilla-beta.py
@@ -19,16 +19,16 @@ config = {
     "version_path": "browser/config/version.txt",
 
     "bump_configs": [{
         "path": "mobile/locales/l10n-changesets.json",
         "format": "json",
         "name": "Fennec l10n changesets",
         "revision_url": "https://l10n.mozilla.org/shipping/l10n-changesets?av=fennec%(MAJOR_VERSION)s",
         "platform_configs": [{
-            "platforms": ["android-api-15", "android"],
+            "platforms": ["android-api-16", "android"],
             "path": "mobile/android/locales/all-locales"
         }, {
             "platforms": ["android-multilocale"],
             "path": "mobile/android/locales/maemo-locales"
         }],
     }],
 }
--- a/testing/mozharness/configs/l10n_bumper/mozilla-central.py
+++ b/testing/mozharness/configs/l10n_bumper/mozilla-central.py
@@ -18,16 +18,16 @@ config = {
     "vcs_share_base": "/builds/hg-shared",
     "version_path": "browser/config/version.txt",
 
     "bump_configs": [{
         "path": "mobile/locales/l10n-changesets.json",
         "format": "json",
         "name": "Fennec l10n changesets",
         "platform_configs": [{
-            "platforms": ["android-api-15", "android"],
+            "platforms": ["android-api-16", "android"],
             "path": "mobile/android/locales/all-locales"
         }, {
             "platforms": ["android-multilocale"],
             "path": "mobile/android/locales/maemo-locales"
         }],
     }],
 }
--- a/testing/mozharness/configs/merge_day/beta_to_release.py
+++ b/testing/mozharness/configs/merge_day/beta_to_release.py
@@ -10,24 +10,26 @@ config = {
             "dst": "browser/config/version_display.txt",
         },
     ],
     "replacements": [
         # File, from, to
         ("{}{}".format(d, f),
         "ac_add_options --with-branding=mobile/android/branding/beta",
         "ac_add_options --with-branding=mobile/android/branding/official")
+        # TODO Bug 1389420: Rename api-15 into api-16 after Firefox 57 made Beta
         for d in ["mobile/android/config/mozconfigs/android-api-15/",
                   "mobile/android/config/mozconfigs/android-x86/",
                   "mobile/android/config/mozconfigs/android-aarch64/"]
         for f in ["debug", "nightly", "l10n-nightly"]
     ] + [
         # File, from, to
         (f, "ac_add_options --with-l10n-base=../../mozilla-beta",
         "ac_add_options --with-l10n-base=../../mozilla-release")
+        # TODO Bug 1389420: Rename api-15 into api-16 after Firefox 57 made Beta
         for f in ["mobile/android/config/mozconfigs/android-api-15/l10n-nightly",
                   "mobile/android/config/mozconfigs/android-x86/l10n-nightly",
                   "mobile/android/config/mozconfigs/android-aarch64/l10n-nightly"]
     ] + [
         # File, from, to
         ("browser/confvars.sh",
          "ACCEPTED_MAR_CHANNEL_IDS=firefox-mozilla-beta,firefox-mozilla-release",
          "ACCEPTED_MAR_CHANNEL_IDS=firefox-mozilla-release"),
--- a/testing/mozharness/configs/merge_day/central_to_beta.py
+++ b/testing/mozharness/configs/merge_day/central_to_beta.py
@@ -9,40 +9,40 @@ config = {
         {"file": "browser/config/version_display.txt", "suffix": "b1"},
         {"file": "config/milestone.txt", "suffix": ""},
     ],
     "replacements": [
         # File, from, to
         ("{}{}".format(d, f),
         "ac_add_options --with-branding=mobile/android/branding/nightly",
         "ac_add_options --with-branding=mobile/android/branding/beta")
-        for d in ["mobile/android/config/mozconfigs/android-api-15/",
+        for d in ["mobile/android/config/mozconfigs/android-api-16/",
                   "mobile/android/config/mozconfigs/android-x86/",
                   "mobile/android/config/mozconfigs/android-aarch64/"]
         for f in ["debug", "nightly", "l10n-nightly"]
     ] + [
         # File, from, to
         (f, "ac_add_options --with-branding=browser/branding/nightly",
         "ac_add_options --enable-official-branding")
         for f in ["browser/config/mozconfigs/linux32/l10n-mozconfig",
                   "browser/config/mozconfigs/linux64/l10n-mozconfig",
                   "browser/config/mozconfigs/win32/l10n-mozconfig",
                   "browser/config/mozconfigs/win64/l10n-mozconfig",
                   "browser/config/mozconfigs/macosx64/l10n-mozconfig"]
     ] + [
         # File, from, to
         (f, "ac_add_options --with-l10n-base=../../l10n-central",
         "ac_add_options --with-l10n-base=../../mozilla-beta")
-        for f in ["mobile/android/config/mozconfigs/android-api-15/l10n-nightly",
+        for f in ["mobile/android/config/mozconfigs/android-api-16/l10n-nightly",
                   "mobile/android/config/mozconfigs/android-x86/l10n-nightly",
                   "mobile/android/config/mozconfigs/android-aarch64/l10n-nightly"]
     ] + [
         # File, from, to
         (f, "ac_add_options --enable-profiling", "") for f in
-        ["mobile/android/config/mozconfigs/android-api-15/nightly",
+        ["mobile/android/config/mozconfigs/android-api-16/nightly",
          "mobile/android/config/mozconfigs/android-x86/nightly",
          "mobile/android/config/mozconfigs/android-aarch64/nightly",
          "browser/config/mozconfigs/linux32/nightly",
          "browser/config/mozconfigs/linux64/nightly",
          "browser/config/mozconfigs/macosx64/nightly",
          "browser/config/mozconfigs/win32/nightly",
          "browser/config/mozconfigs/win64/nightly"]
     ] + [
--- a/testing/mozharness/configs/multi_locale/jamun_android-armv6.json
+++ b/testing/mozharness/configs/multi_locale/jamun_android-armv6.json
@@ -14,15 +14,15 @@
         "branch": "production",
         "dest": "build/configs"
     },{
         "repo": "https://hg.mozilla.org/build/tools",
         "branch": "default",
         "dest": "tools"
     }],
     "vcs_share_base": "/builds/hg-shared",
-    "hg_l10n_base": "https://hg.mozilla.org/releases/l10n/mozilla-aurora",
+    "hg_l10n_base": "https://hg.mozilla.org/releases/l10n/mozilla-beta",
     "hg_l10n_tag": "default",
-    "l10n_dir": "mozilla-aurora",
+    "l10n_dir": "mozilla-beta",
     "merge_locales": true,
     "mozilla_dir": "build",
     "mozconfig": "build/mobile/android/config/mozconfigs/android-armv6/nightly"
 }
--- a/testing/mozharness/configs/multi_locale/jamun_android-x86.json
+++ b/testing/mozharness/configs/multi_locale/jamun_android-x86.json
@@ -14,15 +14,15 @@
         "branch": "production",
         "dest": "build/configs"
     },{
         "repo": "https://hg.mozilla.org/build/tools",
         "branch": "default",
         "dest": "tools"
     }],
     "vcs_share_base": "/builds/hg-shared",
-    "hg_l10n_base": "https://hg.mozilla.org/releases/l10n/mozilla-aurora",
+    "hg_l10n_base": "https://hg.mozilla.org/releases/l10n/mozilla-beta",
     "hg_l10n_tag": "default",
-    "l10n_dir": "mozilla-aurora",
+    "l10n_dir": "mozilla-beta",
     "merge_locales": true,
     "mozilla_dir": "build",
     "mozconfig": "build/mobile/android/config/mozconfigs/android-x86/nightly"
 }
--- a/testing/mozharness/configs/multi_locale/jamun_android.json
+++ b/testing/mozharness/configs/multi_locale/jamun_android.json
@@ -14,14 +14,14 @@
         "branch": "production",
         "dest": "build/configs"
     },{
         "repo": "https://hg.mozilla.org/build/tools",
         "branch": "default",
         "dest": "tools"
     }],
     "vcs_share_base": "/builds/hg-shared",
-    "hg_l10n_base": "https://hg.mozilla.org/releases/l10n/mozilla-aurora",
+    "hg_l10n_base": "https://hg.mozilla.org/releases/l10n/mozilla-beta",
     "hg_l10n_tag": "default",
-    "l10n_dir": "mozilla-aurora",
+    "l10n_dir": "mozilla-beta",
     "merge_locales": true,
     "mozilla_dir": "build"
 }
--- a/testing/mozharness/configs/releases/bouncer_fennec.py
+++ b/testing/mozharness/configs/releases/bouncer_fennec.py
@@ -3,18 +3,18 @@ config = {
     "products": {
         "apk": {
             "product-name": "Fennec-%(version)s",
             "check_uptake": True,
             "alias": "fennec-latest",
             "ssl-only": True,
             "add-locales": False,  # Do not add locales to let "multi" work
             "paths": {
-                "android-api-15": {
-                    "path": "/mobile/releases/%(version)s/android-api-15/:lang/fennec-%(version)s.:lang.android-arm.apk",
+                "android-api-16": {
+                    "path": "/mobile/releases/%(version)s/android-api-16/:lang/fennec-%(version)s.:lang.android-arm.apk",
                     "bouncer-platform": "android",
                 },
                 "android-x86": {
                     "path": "/mobile/releases/%(version)s/android-x86/:lang/fennec-%(version)s.:lang.android-i386.apk",
                     "bouncer-platform": "android-x86",
                 },
             },
         },
--- a/testing/mozharness/configs/releases/bouncer_fennec_beta.py
+++ b/testing/mozharness/configs/releases/bouncer_fennec_beta.py
@@ -3,18 +3,18 @@ config = {
     "products": {
         "apk": {
             "product-name": "Fennec-%(version)s",
             "check_uptake": True,
             "alias": "fennec-beta-latest",
             "ssl-only": True,
             "add-locales": False,  # Do not add locales to let "multi" work
             "paths": {
-                "android-api-15": {
-                    "path": "/mobile/releases/%(version)s/android-api-15/:lang/fennec-%(version)s.:lang.android-arm.apk",
+                "android-api-16": {
+                    "path": "/mobile/releases/%(version)s/android-api-16/:lang/fennec-%(version)s.:lang.android-arm.apk",
                     "bouncer-platform": "android",
                 },
                 "android-x86": {
                     "path": "/mobile/releases/%(version)s/android-x86/:lang/fennec-%(version)s.:lang.android-i386.apk",
                     "bouncer-platform": "android-x86",
                 },
             },
         },
rename from testing/mozharness/configs/single_locale/ash_android-api-15.py
rename to testing/mozharness/configs/single_locale/ash_android-api-16.py
--- a/testing/mozharness/configs/single_locale/ash_android-api-15.py
+++ b/testing/mozharness/configs/single_locale/ash_android-api-16.py
@@ -1,13 +1,13 @@
 BRANCH = "ash"
 MOZ_UPDATE_CHANNEL = "nightly"
 MOZILLA_DIR = BRANCH
 OBJDIR = "obj-firefox"
-EN_US_BINARY_URL = "http://archive.mozilla.org/pub/mobile/nightly/latest-%s-android-api-15/en-US" % BRANCH
+EN_US_BINARY_URL = "http://archive.mozilla.org/pub/mobile/nightly/latest-%s-android-api-16/en-US" % BRANCH
 HG_SHARE_BASE_DIR = "/builds/hg-shared"
 
 config = {
     "branch": BRANCH,
     "log_name": "single_locale",
     "objdir": OBJDIR,
     "is_automation": True,
     "buildbot_json_path": "buildprops.json",
@@ -47,25 +47,25 @@ config = {
     "repack_env": {
         # so ugly, bug 951238
         "LD_LIBRARY_PATH": "/lib:/tools/gcc-4.7.2-0moz1/lib:/tools/gcc-4.7.2-0moz1/lib64",
         "MOZ_OBJDIR": OBJDIR,
         "EN_US_BINARY_URL": EN_US_BINARY_URL,
         "LOCALE_MERGEDIR": "%(abs_merge_dir)s/",
         "MOZ_UPDATE_CHANNEL": MOZ_UPDATE_CHANNEL,
     },
-    "upload_branch": "%s-android-api-15" % BRANCH,
+    "upload_branch": "%s-android-api-16" % BRANCH,
     "ssh_key_dir": "~/.ssh",
     "merge_locales": True,
     "mozilla_dir": MOZILLA_DIR,
-    "mozconfig": "%s/mobile/android/config/mozconfigs/android-api-15/l10n-nightly" % MOZILLA_DIR,
+    "mozconfig": "%s/mobile/android/config/mozconfigs/android-api-16/l10n-nightly" % MOZILLA_DIR,
     "signature_verification_script": "tools/release/signing/verify-android-signature.sh",
     "stage_product": "mobile",
     "platform": "android",
-    "build_type": "api-15-opt",
+    "build_type": "api-16-opt",
 
     # Balrog
     "build_target": "Android_arm-eabi-gcc3",
 
     # Mock
     "mock_target": "mozilla-centos6-x86_64-android",
     "mock_packages": ['autoconf213', 'python', 'zip', 'mozilla-python27-mercurial', 'git', 'ccache',
                       'glibc-static', 'libstdc++-static', 'perl-Test-Simple', 'perl-Config-General',
rename from testing/mozharness/configs/single_locale/date_android-api-15.py
rename to testing/mozharness/configs/single_locale/date_android-api-16.py
--- a/testing/mozharness/configs/single_locale/date_android-api-15.py
+++ b/testing/mozharness/configs/single_locale/date_android-api-16.py
@@ -1,14 +1,14 @@
 import os
 
 BRANCH = "date"
 MOZILLA_DIR = BRANCH
 EN_US_BINARY_URL = "http://archive.mozilla.org/pub/" \
-                   "mobile/nightly/latest-date-android-api-15/en-US"
+                   "mobile/nightly/latest-date-android-api-16/en-US"
 
 config = {
     "branch": BRANCH,
     "log_name": "single_locale",
     "objdir": "obj-firefox",
     "is_automation": True,
     "buildbot_json_path": "buildprops.json",
     "force_clobber": True,
@@ -45,25 +45,25 @@ config = {
     "repack_env": {
         # so ugly, bug 951238
         "LD_LIBRARY_PATH": "/lib:/tools/gcc-4.7.2-0moz1/lib:/tools/gcc-4.7.2-0moz1/lib64",
         "MOZ_OBJDIR": "obj-firefox",
         "EN_US_BINARY_URL": os.environ.get("EN_US_BINARY_URL", EN_US_BINARY_URL),
         "LOCALE_MERGEDIR": "%(abs_merge_dir)s/",
         "MOZ_UPDATE_CHANNEL": "nightly-date",
     },
-    "upload_branch": "%s-android-api-15" % BRANCH,
+    "upload_branch": "%s-android-api-16" % BRANCH,
     "ssh_key_dir": "~/.ssh",
     "merge_locales": True,
     "mozilla_dir": MOZILLA_DIR,
-    "mozconfig": "%s/mobile/android/config/mozconfigs/android-api-15/l10n-nightly" % MOZILLA_DIR,
+    "mozconfig": "%s/mobile/android/config/mozconfigs/android-api-16/l10n-nightly" % MOZILLA_DIR,
     "signature_verification_script": "tools/release/signing/verify-android-signature.sh",
     "stage_product": "mobile",
     "platform": "android",
-    "build_type": "api-15-opt",
+    "build_type": "api-16-opt",
 
     # Balrog
     "build_target": "Android_arm-eabi-gcc3",
 
     # Mock
     "mock_target": "mozilla-centos6-x86_64-android",
     "mock_packages": ['autoconf213', 'python', 'zip', 'mozilla-python27-mercurial', 'git', 'ccache',
                       'glibc-static', 'libstdc++-static', 'perl-Test-Simple', 'perl-Config-General',
rename from testing/mozharness/configs/single_locale/jamun_android-api-15.py
rename to testing/mozharness/configs/single_locale/jamun_android-api-16.py
--- a/testing/mozharness/configs/single_locale/jamun_android-api-15.py
+++ b/testing/mozharness/configs/single_locale/jamun_android-api-16.py
@@ -31,38 +31,38 @@ config = {
         "branch": "default",
         "dest": "tools",
     }, {
         "vcs": "hg",
         "repo": "https://hg.mozilla.org/projects/jamun",
         "revision": "%(revision)s",
         "dest": MOZILLA_DIR,
     }],
-    "hg_l10n_base": "https://hg.mozilla.org/releases/l10n/mozilla-aurora",
+    "hg_l10n_base": "https://hg.mozilla.org/releases/l10n/mozilla-beta",
     "hg_l10n_tag": "default",
     'vcs_share_base': "/builds/hg-shared",
 
-    "l10n_dir": "mozilla-aurora",
+    "l10n_dir": "mozilla-beta",
     "repack_env": {
         # so ugly, bug 951238
         "LD_LIBRARY_PATH": "/lib:/tools/gcc-4.7.2-0moz1/lib:/tools/gcc-4.7.2-0moz1/lib64",
         "MOZ_OBJDIR": "obj-firefox",
         "EN_US_BINARY_URL": os.environ.get("EN_US_BINARY_URL", EN_US_BINARY_URL),
         "LOCALE_MERGEDIR": "%(abs_merge_dir)s/",
         "MOZ_UPDATE_CHANNEL": "nightly-jamun",
     },
-    "upload_branch": "%s-android-api-15" % BRANCH,
+    "upload_branch": "%s-android-api-16" % BRANCH,
     "ssh_key_dir": "~/.ssh",
     "merge_locales": True,
     "mozilla_dir": MOZILLA_DIR,
-    "mozconfig": "%s/mobile/android/config/mozconfigs/android-api-15/l10n-nightly" % MOZILLA_DIR,
+    "mozconfig": "%s/mobile/android/config/mozconfigs/android-api-16/l10n-nightly" % MOZILLA_DIR,
     "signature_verification_script": "tools/release/signing/verify-android-signature.sh",
     "stage_product": "mobile",
     "platform": "android",
-    "build_type": "api-15-opt",
+    "build_type": "api-16-opt",
 
     # Balrog
     "build_target": "Android_arm-eabi-gcc3",
 
     # Mock
     "mock_target": "mozilla-centos6-x86_64-android",
     "mock_packages": ['autoconf213', 'python', 'zip', 'mozilla-python27-mercurial', 'git', 'ccache',
                       'glibc-static', 'libstdc++-static', 'perl-Test-Simple', 'perl-Config-General',
rename from testing/mozharness/configs/single_locale/mozilla-aurora_android-api-15.py
rename to testing/mozharness/configs/single_locale/mozilla-aurora_android-api-16.py
--- a/testing/mozharness/configs/single_locale/mozilla-aurora_android-api-15.py
+++ b/testing/mozharness/configs/single_locale/mozilla-aurora_android-api-16.py
@@ -1,15 +1,15 @@
 import os
 
 BRANCH = "mozilla-aurora"
 MOZ_UPDATE_CHANNEL = "aurora"
 MOZILLA_DIR = BRANCH
 OBJDIR = "obj-firefox"
-EN_US_BINARY_URL = "http://archive.mozilla.org/pub/mobile/nightly/latest-%s-android-api-15/en-US" % BRANCH
+EN_US_BINARY_URL = "http://archive.mozilla.org/pub/mobile/nightly/latest-%s-android-api-16/en-US" % BRANCH
 HG_SHARE_BASE_DIR = "/builds/hg-shared"
 
 config = {
     "branch": BRANCH,
     "log_name": "single_locale",
     "objdir": OBJDIR,
     "is_automation": True,
     "buildbot_json_path": "buildprops.json",
@@ -51,25 +51,25 @@ config = {
     "repack_env": {
         # so ugly, bug 951238
         "LD_LIBRARY_PATH": "/lib:/tools/gcc-4.7.2-0moz1/lib:/tools/gcc-4.7.2-0moz1/lib64",
         "MOZ_OBJDIR": OBJDIR,
         "EN_US_BINARY_URL": os.environ.get("EN_US_BINARY_URL", EN_US_BINARY_URL),
         "LOCALE_MERGEDIR": "%(abs_merge_dir)s/",
         "MOZ_UPDATE_CHANNEL": MOZ_UPDATE_CHANNEL,
     },
-    "upload_branch": "%s-android-api-15" % BRANCH,
+    "upload_branch": "%s-android-api-16" % BRANCH,
     "ssh_key_dir": "~/.ssh",
     "merge_locales": True,
     "mozilla_dir": MOZILLA_DIR,
-    "mozconfig": "%s/mobile/android/config/mozconfigs/android-api-15/l10n-nightly" % MOZILLA_DIR,
+    "mozconfig": "%s/mobile/android/config/mozconfigs/android-api-16/l10n-nightly" % MOZILLA_DIR,
     "signature_verification_script": "tools/release/signing/verify-android-signature.sh",
     "stage_product": "mobile",
     "platform": "android",
-    "build_type": "api-15-opt",
+    "build_type": "api-16-opt",
 
     # Balrog
     "build_target": "Android_arm-eabi-gcc3",
 
     # Mock
     "mock_target": "mozilla-centos6-x86_64-android",
     "mock_packages": ['autoconf213', 'python', 'zip', 'mozilla-python27-mercurial', 'git', 'ccache',
                       'glibc-static', 'libstdc++-static', 'perl-Test-Simple', 'perl-Config-General',
rename from testing/mozharness/configs/single_locale/mozilla-beta_android-api-15.py
rename to testing/mozharness/configs/single_locale/mozilla-beta_android-api-16.py
--- a/testing/mozharness/configs/single_locale/mozilla-beta_android-api-15.py
+++ b/testing/mozharness/configs/single_locale/mozilla-beta_android-api-16.py
@@ -12,23 +12,23 @@ config = {
     "log_name": "single_locale",
     "objdir": OBJDIR,
     "is_automation": True,
     "buildbot_json_path": "buildprops.json",
     "force_clobber": True,
     "clobberer_url": "https://api.pub.build.mozilla.org/clobberer/lastclobber",
     "locales_file": "%s/mobile/locales/l10n-changesets.json" % MOZILLA_DIR,
     "locales_dir": "mobile/android/locales",
-    "locales_platform": "android-api-15",
+    "locales_platform": "android-api-16",
     "ignore_locales": ["en-US"],
     "balrog_credentials_file": "oauth.txt",
     "tools_repo": "https://hg.mozilla.org/build/tools",
     "platform": "android",
     "is_release_or_beta": True,
-    "build_type": "api-15-opt",
+    "build_type": "api-16-opt",
     "build_target": "Android_arm-eabi-gcc3",
     "tooltool_config": {
         "manifest": "mobile/android/config/tooltool-manifests/android/releng.manifest",
         "output_dir": "%(abs_work_dir)s/" + MOZILLA_DIR,
     },
     "exes": {
         'tooltool.py': '/builds/tooltool.py',
     },
@@ -49,17 +49,17 @@ config = {
     "repack_env": {
         # so ugly, bug 951238
         "LD_LIBRARY_PATH": "/lib:/tools/gcc-4.7.2-0moz1/lib:/tools/gcc-4.7.2-0moz1/lib64",
         "EN_US_BINARY_URL": os.environ.get("EN_US_BINARY_URL", EN_US_BINARY_URL),
         "MOZ_OBJDIR": OBJDIR,
         "LOCALE_MERGEDIR": "%(abs_merge_dir)s/",
         "MOZ_UPDATE_CHANNEL": MOZ_UPDATE_CHANNEL,
     },
-    "upload_branch": "%s-android-api-15" % BRANCH,
+    "upload_branch": "%s-android-api-16" % BRANCH,
     "ssh_key_dir": "~/.ssh",
     "merge_locales": True,
     "mozilla_dir": MOZILLA_DIR,
     "signature_verification_script": "tools/release/signing/verify-android-signature.sh",
     "key_alias": "release",
     # Mock
     "mock_target": "mozilla-centos6-x86_64-android",
     "mock_packages": ['autoconf213', 'python', 'zip', 'mozilla-python27-mercurial', 'git', 'ccache',
rename from testing/mozharness/configs/single_locale/mozilla-central_android-api-15.py
rename to testing/mozharness/configs/single_locale/mozilla-central_android-api-16.py
--- a/testing/mozharness/configs/single_locale/mozilla-central_android-api-15.py
+++ b/testing/mozharness/configs/single_locale/mozilla-central_android-api-16.py
@@ -1,15 +1,15 @@
 import os
 
 BRANCH = "mozilla-central"
 MOZ_UPDATE_CHANNEL = "nightly"
 MOZILLA_DIR = BRANCH
 OBJDIR = "obj-firefox"
-EN_US_BINARY_URL = "http://archive.mozilla.org/pub/mobile/nightly/latest-%s-android-api-15/en-US" % BRANCH
+EN_US_BINARY_URL = "http://archive.mozilla.org/pub/mobile/nightly/latest-%s-android-api-16/en-US" % BRANCH
 HG_SHARE_BASE_DIR = "/builds/hg-shared"
 
 config = {
     "branch": BRANCH,
     "log_name": "single_locale",
     "objdir": OBJDIR,
     "is_automation": True,
     "buildbot_json_path": "buildprops.json",
@@ -51,25 +51,25 @@ config = {
     "repack_env": {
         # so ugly, bug 951238
         "LD_LIBRARY_PATH": "/lib:/tools/gcc-4.7.2-0moz1/lib:/tools/gcc-4.7.2-0moz1/lib64",
         "MOZ_OBJDIR": OBJDIR,
         "EN_US_BINARY_URL": os.environ.get("EN_US_BINARY_URL", EN_US_BINARY_URL),
         "LOCALE_MERGEDIR": "%(abs_merge_dir)s/",
         "MOZ_UPDATE_CHANNEL": MOZ_UPDATE_CHANNEL,
     },
-    "upload_branch": "%s-android-api-15" % BRANCH,
+    "upload_branch": "%s-android-api-16" % BRANCH,
     "ssh_key_dir": "~/.ssh",
     "merge_locales": True,
     "mozilla_dir": MOZILLA_DIR,
-    "mozconfig": "%s/mobile/android/config/mozconfigs/android-api-15/l10n-nightly" % MOZILLA_DIR,
+    "mozconfig": "%s/mobile/android/config/mozconfigs/android-api-16/l10n-nightly" % MOZILLA_DIR,
     "signature_verification_script": "tools/release/signing/verify-android-signature.sh",
     "stage_product": "mobile",
     "platform": "android",
-    "build_type": "api-15-opt",
+    "build_type": "api-16-opt",
 
     # Balrog
     "build_target": "Android_arm-eabi-gcc3",
 
     # Mock
     "mock_target": "mozilla-centos6-x86_64-android",
     "mock_packages": ['autoconf213', 'python', 'zip', 'mozilla-python27-mercurial', 'git', 'ccache',
                       'glibc-static', 'libstdc++-static', 'perl-Test-Simple', 'perl-Config-General',
rename from testing/mozharness/configs/single_locale/mozilla-release_android-api-15.py
rename to testing/mozharness/configs/single_locale/mozilla-release_android-api-16.py
--- a/testing/mozharness/configs/single_locale/mozilla-release_android-api-15.py
+++ b/testing/mozharness/configs/single_locale/mozilla-release_android-api-16.py
@@ -12,23 +12,23 @@ config = {
     "log_name": "single_locale",
     "objdir": OBJDIR,
     "is_automation": True,
     "buildbot_json_path": "buildprops.json",
     "force_clobber": True,
     "clobberer_url": "https://api.pub.build.mozilla.org/clobberer/lastclobber",
     "locales_file": "%s/mobile/locales/l10n-changesets.json" % MOZILLA_DIR,
     "locales_dir": "mobile/android/locales",
-    "locales_platform": "android-api-15",
+    "locales_platform": "android-api-16",
     "ignore_locales": ["en-US"],
     "balrog_credentials_file": "oauth.txt",
     "tools_repo": "https://hg.mozilla.org/build/tools",
     "platform": "android",
     "is_release_or_beta": True,
-    "build_type": "api-15-opt",
+    "build_type": "api-16-opt",
     "build_target": "Android_arm-eabi-gcc3",
     "tooltool_config": {
         "manifest": "mobile/android/config/tooltool-manifests/android/releng.manifest",
         "output_dir": "%(abs_work_dir)s/" + MOZILLA_DIR,
     },
     "exes": {
         'tooltool.py': '/builds/tooltool.py',
     },
@@ -49,17 +49,17 @@ config = {
     "repack_env": {
         # so ugly, bug 951238
         "LD_LIBRARY_PATH": "/lib:/tools/gcc-4.7.2-0moz1/lib:/tools/gcc-4.7.2-0moz1/lib64",
         "EN_US_BINARY_URL": os.environ.get("EN_US_BINARY_URL", EN_US_BINARY_URL),
         "MOZ_OBJDIR": OBJDIR,
         "LOCALE_MERGEDIR": "%(abs_merge_dir)s/",
         "MOZ_UPDATE_CHANNEL": MOZ_UPDATE_CHANNEL,
     },
-    "upload_branch": "%s-android-api-15" % BRANCH,
+    "upload_branch": "%s-android-api-16" % BRANCH,
     "ssh_key_dir": "~/.ssh",
     "merge_locales": True,
     "mozilla_dir": MOZILLA_DIR,
     "signature_verification_script": "tools/release/signing/verify-android-signature.sh",
     "key_alias": "release",
     # Mock
     "mock_target": "mozilla-centos6-x86_64-android",
     "mock_packages": ['autoconf213', 'python', 'zip', 'mozilla-python27-mercurial', 'git', 'ccache',
rename from testing/mozharness/configs/single_locale/staging_release_mozilla-beta_android_api_15.py
rename to testing/mozharness/configs/single_locale/staging_release_mozilla-beta_android_api_16.py
--- a/testing/mozharness/configs/single_locale/staging_release_mozilla-beta_android_api_15.py
+++ b/testing/mozharness/configs/single_locale/staging_release_mozilla-beta_android_api_16.py
@@ -1,14 +1,14 @@
 BRANCH = "mozilla-beta"
 MOZ_UPDATE_CHANNEL = "beta"
 MOZILLA_DIR = BRANCH
 OBJDIR = "obj-firefox"
 STAGE_SERVER = "ftp.stage.mozaws.net"
-EN_US_BINARY_URL = "http://" + STAGE_SERVER + "/pub/mobile/candidates/%(version)s-candidates/build%(buildnum)d/android-api-15/en-US"
+EN_US_BINARY_URL = "http://" + STAGE_SERVER + "/pub/mobile/candidates/%(version)s-candidates/build%(buildnum)d/android-api-16/en-US"
 HG_SHARE_BASE_DIR = "/builds/hg-shared"
 
 config = {
     "log_name": "single_locale",
     "objdir": OBJDIR,
     "is_automation": True,
     "buildbot_json_path": "buildprops.json",
     "force_clobber": True,
@@ -50,19 +50,19 @@ config = {
         # so ugly, bug 951238
         "LD_LIBRARY_PATH": "/lib:/tools/gcc-4.7.2-0moz1/lib:/tools/gcc-4.7.2-0moz1/lib64",
         "MOZ_PKG_VERSION": "%(version)s",
         "MOZ_OBJDIR": OBJDIR,
         "LOCALE_MERGEDIR": "%(abs_merge_dir)s/",
         "MOZ_UPDATE_CHANNEL": MOZ_UPDATE_CHANNEL,
     },
     "base_en_us_binary_url": EN_US_BINARY_URL,
-    "upload_branch": "%s-android-api-15" % BRANCH,
+    "upload_branch": "%s-android-api-16" % BRANCH,
     "ssh_key_dir": "~/.ssh",
-    "base_post_upload_cmd": "post_upload.py -p mobile -n %(buildnum)s -v %(version)s --builddir android-api-15/%(locale)s --release-to-mobile-candidates-dir --nightly-dir=candidates %(post_upload_extra)s",
+    "base_post_upload_cmd": "post_upload.py -p mobile -n %(buildnum)s -v %(version)s --builddir android-api-16/%(locale)s --release-to-mobile-candidates-dir --nightly-dir=candidates %(post_upload_extra)s",
     "merge_locales": True,
     "mozilla_dir": MOZILLA_DIR,
     "signature_verification_script": "tools/release/signing/verify-android-signature.sh",
 
     # Mock
     "mock_target": "mozilla-centos6-x86_64-android",
     "mock_packages": ['autoconf213', 'python', 'zip', 'mozilla-python27-mercurial', 'git', 'ccache',
                       'glibc-static', 'libstdc++-static', 'perl-Test-Simple', 'perl-Config-General',
rename from testing/mozharness/configs/single_locale/staging_release_mozilla-release_android_api_15.py
rename to testing/mozharness/configs/single_locale/staging_release_mozilla-release_android_api_16.py
--- a/testing/mozharness/configs/single_locale/staging_release_mozilla-release_android_api_15.py
+++ b/testing/mozharness/configs/single_locale/staging_release_mozilla-release_android_api_16.py
@@ -1,14 +1,14 @@
 BRANCH = "mozilla-release"
 MOZ_UPDATE_CHANNEL = "release"
 MOZILLA_DIR = BRANCH
 OBJDIR = "obj-firefox"
 STAGE_SERVER = "dev-stage01.srv.releng.scl3.mozilla.com"
-EN_US_BINARY_URL = "http://" + STAGE_SERVER + "/pub/mozilla.org/mobile/candidates/%(version)s-candidates/build%(buildnum)d/android-api-15/en-US"
+EN_US_BINARY_URL = "http://" + STAGE_SERVER + "/pub/mozilla.org/mobile/candidates/%(version)s-candidates/build%(buildnum)d/android-api-16/en-US"
 HG_SHARE_BASE_DIR = "/builds/hg-shared"
 
 config = {
     "log_name": "single_locale",
     "objdir": OBJDIR,
     "is_automation": True,
     "buildbot_json_path": "buildprops.json",
     "force_clobber": True,
@@ -50,19 +50,19 @@ config = {
         # so ugly, bug 951238
         "LD_LIBRARY_PATH": "/lib:/tools/gcc-4.7.2-0moz1/lib:/tools/gcc-4.7.2-0moz1/lib64",
         "MOZ_PKG_VERSION": "%(version)s",
         "MOZ_OBJDIR": OBJDIR,
         "LOCALE_MERGEDIR": "%(abs_merge_dir)s/",
         "MOZ_UPDATE_CHANNEL": MOZ_UPDATE_CHANNEL,
     },
     "base_en_us_binary_url": EN_US_BINARY_URL,
-    "upload_branch": "%s-android-api-15" % BRANCH,
+    "upload_branch": "%s-android-api-16" % BRANCH,
     "ssh_key_dir": "~/.ssh",
-    "base_post_upload_cmd": "post_upload.py -p mobile -n %(buildnum)s -v %(version)s --builddir android-api-15/%(locale)s --release-to-mobile-candidates-dir --nightly-dir=candidates %(post_upload_extra)s",
+    "base_post_upload_cmd": "post_upload.py -p mobile -n %(buildnum)s -v %(version)s --builddir android-api-16/%(locale)s --release-to-mobile-candidates-dir --nightly-dir=candidates %(post_upload_extra)s",
     "merge_locales": True,
     "mozilla_dir": MOZILLA_DIR,
     "signature_verification_script": "tools/release/signing/verify-android-signature.sh",
 
     # Mock
     "mock_target": "mozilla-centos6-x86_64-android",
     "mock_packages": ['autoconf213', 'python', 'zip', 'mozilla-python27-mercurial', 'git', 'ccache',
                       'glibc-static', 'libstdc++-static', 'perl-Test-Simple', 'perl-Config-General',
rename from testing/mozharness/configs/single_locale/tc_android-api-15.py
rename to testing/mozharness/configs/single_locale/tc_android-api-16.py
--- a/testing/mozharness/configs/single_locale/tc_android-api-15.py
+++ b/testing/mozharness/configs/single_locale/tc_android-api-16.py
@@ -1,13 +1,13 @@
 config = {
-    "stage_platform": "android-api-15",
+    "stage_platform": "android-api-16",
     "locales_file": "src/mobile/locales/l10n-changesets.json",
     "tools_repo": "https://hg.mozilla.org/build/tools",
-    "mozconfig": "src/mobile/android/config/mozconfigs/android-api-15/l10n-nightly",
+    "mozconfig": "src/mobile/android/config/mozconfigs/android-api-16/l10n-nightly",
     "tooltool_config": {
         "manifest": "mobile/android/config/tooltool-manifests/android/releng.manifest",
         "output_dir": "%(abs_work_dir)s/src",
     },
     "tooltool_servers": ['http://relengapi/tooltool/'],
 
     "upload_env": {
         'UPLOAD_HOST': 'localhost',
rename from testing/mozharness/configs/single_locale/try_android-api-15.py
rename to testing/mozharness/configs/single_locale/try_android-api-16.py
--- a/testing/mozharness/configs/single_locale/try_android-api-15.py
+++ b/testing/mozharness/configs/single_locale/try_android-api-16.py
@@ -1,14 +1,14 @@
 import os
 
 BRANCH = "try"
 MOZILLA_DIR = BRANCH
 EN_US_BINARY_URL = "http://archive.mozilla.org/pub/" \
-                   "mobile/nightly/latest-mozilla-central-android-api-15/en-US"
+                   "mobile/nightly/latest-mozilla-central-android-api-16/en-US"
 
 config = {
     "branch": "try",
     "log_name": "single_locale",
     "objdir": "obj-firefox",
     "is_automation": True,
     "buildbot_json_path": "buildprops.json",
     "force_clobber": True,
@@ -50,25 +50,25 @@ config = {
     "repack_env": {
         # so ugly, bug 951238
         "LD_LIBRARY_PATH": "/lib:/tools/gcc-4.7.2-0moz1/lib:/tools/gcc-4.7.2-0moz1/lib64",
         "MOZ_OBJDIR": "obj-firefox",
         "EN_US_BINARY_URL": os.environ.get("EN_US_BINARY_URL", EN_US_BINARY_URL),
         "LOCALE_MERGEDIR": "%(abs_merge_dir)s/",
         "MOZ_UPDATE_CHANNEL": "try", # XXX Invalid
     },
-    "upload_branch": "%s-android-api-15" % BRANCH,
+    "upload_branch": "%s-android-api-16" % BRANCH,
     "ssh_key_dir": "~/.ssh",
     "merge_locales": True,
     "mozilla_dir": MOZILLA_DIR,
-    "mozconfig": "%s/mobile/android/config/mozconfigs/android-api-15/l10n-nightly" % MOZILLA_DIR,
+    "mozconfig": "%s/mobile/android/config/mozconfigs/android-api-16/l10n-nightly" % MOZILLA_DIR,
     "signature_verification_script": "tools/release/signing/verify-android-signature.sh",
     "stage_product": "mobile",
     "platform": "android", # XXX Validate
-    "build_type": "api-15-opt", # XXX Validate
+    "build_type": "api-16-opt", # XXX Validate
 
     # Balrog
     "build_target": "Android_arm-eabi-gcc3",
 
     # Mock
     "mock_target": "mozilla-centos6-x86_64-android",
     "mock_packages": ['autoconf213', 'python', 'zip', 'mozilla-python27-mercurial', 'git', 'ccache',
                       'glibc-static', 'libstdc++-static', 'perl-Test-Simple', 'perl-Config-General',
--- a/testing/mozharness/mozharness/mozilla/building/buildbase.py
+++ b/testing/mozharness/mozharness/mozilla/building/buildbase.py
@@ -354,28 +354,28 @@ class BuildOptionParser(object):
         'cross-artifact': 'builds/releng_sub_%s_configs/%s_cross_artifact.py',
         'debug': 'builds/releng_sub_%s_configs/%s_debug.py',
         'asan-and-debug': 'builds/releng_sub_%s_configs/%s_asan_and_debug.py',
         'asan-tc-and-debug': 'builds/releng_sub_%s_configs/%s_asan_tc_and_debug.py',
         'stat-and-debug': 'builds/releng_sub_%s_configs/%s_stat_and_debug.py',
         'code-coverage': 'builds/releng_sub_%s_configs/%s_code_coverage.py',
         'source': 'builds/releng_sub_%s_configs/%s_source.py',
         'noopt-debug': 'builds/releng_sub_%s_configs/%s_noopt_debug.py',
-        'api-15-gradle-dependencies': 'builds/releng_sub_%s_configs/%s_api_15_gradle_dependencies.py',
-        'api-15': 'builds/releng_sub_%s_configs/%s_api_15.py',
-        'api-15-old-id': 'builds/releng_sub_%s_configs/%s_api_15_old_id.py',
-        'api-15-artifact': 'builds/releng_sub_%s_configs/%s_api_15_artifact.py',
-        'api-15-debug': 'builds/releng_sub_%s_configs/%s_api_15_debug.py',
-        'api-15-debug-artifact': 'builds/releng_sub_%s_configs/%s_api_15_debug_artifact.py',
-        'api-15-gradle': 'builds/releng_sub_%s_configs/%s_api_15_gradle.py',
-        'api-15-gradle-artifact': 'builds/releng_sub_%s_configs/%s_api_15_gradle_artifact.py',
+        'api-16-gradle-dependencies': 'builds/releng_sub_%s_configs/%s_api_16_gradle_dependencies.py',
+        'api-16': 'builds/releng_sub_%s_configs/%s_api_16.py',
+        'api-16-old-id': 'builds/releng_sub_%s_configs/%s_api_16_old_id.py',
+        'api-16-artifact': 'builds/releng_sub_%s_configs/%s_api_16_artifact.py',
+        'api-16-debug': 'builds/releng_sub_%s_configs/%s_api_16_debug.py',
+        'api-16-debug-artifact': 'builds/releng_sub_%s_configs/%s_api_16_debug_artifact.py',
+        'api-16-gradle': 'builds/releng_sub_%s_configs/%s_api_16_gradle.py',
+        'api-16-gradle-artifact': 'builds/releng_sub_%s_configs/%s_api_16_gradle_artifact.py',
         'x86': 'builds/releng_sub_%s_configs/%s_x86.py',
         'x86-old-id': 'builds/releng_sub_%s_configs/%s_x86_old_id.py',
         'x86-artifact': 'builds/releng_sub_%s_configs/%s_x86_artifact.py',
-        'api-15-partner-sample1': 'builds/releng_sub_%s_configs/%s_api_15_partner_sample1.py',
+        'api-16-partner-sample1': 'builds/releng_sub_%s_configs/%s_api_16_partner_sample1.py',
         'aarch64': 'builds/releng_sub_%s_configs/%s_aarch64.py',
         'android-test': 'builds/releng_sub_%s_configs/%s_test.py',
         'android-checkstyle': 'builds/releng_sub_%s_configs/%s_checkstyle.py',
         'android-lint': 'builds/releng_sub_%s_configs/%s_lint.py',
         'android-findbugs': 'builds/releng_sub_%s_configs/%s_findbugs.py',
         'valgrind' : 'builds/releng_sub_%s_configs/%s_valgrind.py',
         'artifact': 'builds/releng_sub_%s_configs/%s_artifact.py',
         'debug-artifact': 'builds/releng_sub_%s_configs/%s_debug_artifact.py',
--- a/testing/mozharness/scripts/mobile_l10n.py
+++ b/testing/mozharness/scripts/mobile_l10n.py
@@ -197,17 +197,17 @@ class MobileSingleLocale(MockMixin, Loca
         replace_dict = {
             'buildid': self.query_buildid(),
             'version': self.query_version(),
         }
         replace_dict.update(c)
 
         # Android l10n builds use a non-standard location for l10n files.  Other
         # builds go to 'mozilla-central-l10n', while android builds add part of
-        # the platform name as well, like 'mozilla-central-android-api-15-l10n'.
+        # the platform name as well, like 'mozilla-central-android-api-16-l10n'.
         # So we override the branch with something that contains the platform
         # name.
         replace_dict['branch'] = c['upload_branch']
         replace_dict['post_upload_extra'] = ' '.join(c.get('post_upload_extra', []))
 
         upload_env = self.query_env(partial_env=c.get("upload_env"),
                                     replace_dict=replace_dict)
         if 'MOZ_SIGNING_SERVERS' in os.environ: