diff --git a/29/public/api/incompatibilities.txt b/29/public/api/incompatibilities.txt
new file mode 100644
index 0000000..bc1a3ab
--- /dev/null
+++ b/29/public/api/incompatibilities.txt
@@ -0,0 +1,91 @@
+// Baseline format: 1.0
+ChangedThrows: android.app.admin.DevicePolicyManager#setAlwaysOnVpnPackage(android.content.ComponentName, String, boolean):
+    Method android.app.admin.DevicePolicyManager.setAlwaysOnVpnPackage no longer throws exception java.lang.UnsupportedOperationException
+ChangedThrows: java.util.Optional#orElseThrow(java.util.function.Supplier<? extends X>):
+    Method java.util.Optional.orElseThrow added thrown exception X
+ChangedThrows: java.util.OptionalDouble#orElseThrow(java.util.function.Supplier<X>):
+    Method java.util.OptionalDouble.orElseThrow added thrown exception X
+ChangedThrows: java.util.OptionalInt#orElseThrow(java.util.function.Supplier<X>):
+    Method java.util.OptionalInt.orElseThrow added thrown exception X
+ChangedThrows: java.util.OptionalLong#orElseThrow(java.util.function.Supplier<X>):
+    Method java.util.OptionalLong.orElseThrow added thrown exception X
+ChangedThrows: java.util.regex.Matcher#start(int):
+    Method java.util.regex.Matcher.start no longer throws exception java.lang.IllegalStateException
+ChangedThrows: java.util.regex.Pattern#compile(String, int):
+    Method java.util.regex.Pattern.compile no longer throws exception java.util.regex.PatternSyntaxException
+
+
+ChangedType: android.os.Parcel#readSparseArray(ClassLoader):
+    Method android.os.Parcel.readSparseArray has changed return type from android.util.SparseArray to android.util.SparseArray<T>
+
+
+InvalidNullConversion: android.os.DropBoxManager#getNextEntry(String, long) parameter #0:
+    Attempted to remove @NonNull annotation from parameter tag in android.os.DropBoxManager.getNextEntry(String tag, long msec)
+InvalidNullConversion: java.io.PrintWriter#format(String, java.lang.Object...) parameter #1:
+    Attempted to change parameter from @Nullable to @NonNull: incompatible change for parameter args in java.io.PrintWriter.format(String format, java.lang.Object... args)
+InvalidNullConversion: java.io.PrintWriter#format(java.util.Locale, String, java.lang.Object...) parameter #2:
+    Attempted to change parameter from @Nullable to @NonNull: incompatible change for parameter args in java.io.PrintWriter.format(java.util.Locale l, String format, java.lang.Object... args)
+InvalidNullConversion: java.io.PrintWriter#printf(String, java.lang.Object...) parameter #1:
+    Attempted to change parameter from @Nullable to @NonNull: incompatible change for parameter args in java.io.PrintWriter.printf(String format, java.lang.Object... args)
+InvalidNullConversion: java.io.PrintWriter#printf(java.util.Locale, String, java.lang.Object...) parameter #2:
+    Attempted to change parameter from @Nullable to @NonNull: incompatible change for parameter args in java.io.PrintWriter.printf(java.util.Locale l, String format, java.lang.Object... args)
+InvalidNullConversion: java.lang.Character#toChars(int):
+    Attempted to remove @NonNull annotation from method java.lang.Character.toChars(int)
+InvalidNullConversion: java.lang.Class#getEnumConstants():
+    Attempted to change method return from @NonNull to @Nullable: incompatible change for method java.lang.Class.getEnumConstants()
+InvalidNullConversion: java.lang.Class#getSigners():
+    Attempted to change method return from @NonNull to @Nullable: incompatible change for method java.lang.Class.getSigners()
+InvalidNullConversion: java.lang.String#format(String, java.lang.Object...) parameter #1:
+    Attempted to change parameter from @Nullable to @NonNull: incompatible change for parameter args in java.lang.String.format(String format, java.lang.Object... args)
+InvalidNullConversion: java.lang.String#format(java.util.Locale, String, java.lang.Object...) parameter #2:
+    Attempted to change parameter from @Nullable to @NonNull: incompatible change for parameter args in java.lang.String.format(java.util.Locale l, String format, java.lang.Object... args)
+InvalidNullConversion: java.util.Map#put(K, V) parameter #0:
+    Attempted to remove @NonNull annotation from parameter key in java.util.Map.put(K key, V value)
+InvalidNullConversion: java.util.Map#put(K, V) parameter #1:
+    Attempted to remove @NonNull annotation from parameter value in java.util.Map.put(K key, V value)
+InvalidNullConversion: java.util.Map#putIfAbsent(K, V) parameter #0:
+    Attempted to remove @NonNull annotation from parameter key in java.util.Map.putIfAbsent(K key, V value)
+InvalidNullConversion: java.util.Map#putIfAbsent(K, V) parameter #1:
+    Attempted to remove @NonNull annotation from parameter value in java.util.Map.putIfAbsent(K key, V value)
+InvalidNullConversion: java.util.Map#replace(K, V) parameter #0:
+    Attempted to remove @NonNull annotation from parameter key in java.util.Map.replace(K key, V value)
+InvalidNullConversion: java.util.Map#replace(K, V) parameter #1:
+    Attempted to remove @NonNull annotation from parameter value in java.util.Map.replace(K key, V value)
+
+
+RemovedDeprecatedMethod: android.graphics.Picture#createFromStream(java.io.InputStream):
+    Removed deprecated method android.graphics.Picture.createFromStream(java.io.InputStream)
+RemovedDeprecatedMethod: android.graphics.Picture#writeToStream(java.io.OutputStream):
+    Removed deprecated method android.graphics.Picture.writeToStream(java.io.OutputStream)
+RemovedDeprecatedMethod: android.icu.text.CollationElementIterator#hashCode():
+    Removed deprecated method android.icu.text.CollationElementIterator.hashCode()
+RemovedDeprecatedMethod: android.icu.text.CurrencyPluralInfo#hashCode():
+    Removed deprecated method android.icu.text.CurrencyPluralInfo.hashCode()
+RemovedDeprecatedMethod: android.icu.text.PluralRules#hashCode():
+    Removed deprecated method android.icu.text.PluralRules.hashCode()
+RemovedDeprecatedMethod: android.icu.text.StringPrepParseException#hashCode():
+    Removed deprecated method android.icu.text.StringPrepParseException.hashCode()
+RemovedDeprecatedMethod: android.location.LocationManager#addNmeaListener(android.location.GpsStatus.NmeaListener):
+    Removed deprecated method android.location.LocationManager.addNmeaListener(android.location.GpsStatus.NmeaListener)
+RemovedDeprecatedMethod: android.location.LocationManager#removeNmeaListener(android.location.GpsStatus.NmeaListener):
+    Removed deprecated method android.location.LocationManager.removeNmeaListener(android.location.GpsStatus.NmeaListener)
+RemovedDeprecatedMethod: android.telephony.TelephonyManager#getNeighboringCellInfo():
+    Removed deprecated method android.telephony.TelephonyManager.getNeighboringCellInfo()
+
+
+RemovedMethod: android.companion.AssociationRequest.Builder#checkNotUsed():
+    Removed method android.companion.AssociationRequest.Builder.checkNotUsed()
+RemovedMethod: android.companion.AssociationRequest.Builder#markUsed():
+    Removed method android.companion.AssociationRequest.Builder.markUsed()
+RemovedMethod: android.companion.BluetoothDeviceFilter.Builder#checkNotUsed():
+    Removed method android.companion.BluetoothDeviceFilter.Builder.checkNotUsed()
+RemovedMethod: android.companion.BluetoothDeviceFilter.Builder#markUsed():
+    Removed method android.companion.BluetoothDeviceFilter.Builder.markUsed()
+RemovedMethod: android.companion.BluetoothLeDeviceFilter.Builder#checkNotUsed():
+    Removed method android.companion.BluetoothLeDeviceFilter.Builder.checkNotUsed()
+RemovedMethod: android.companion.BluetoothLeDeviceFilter.Builder#markUsed():
+    Removed method android.companion.BluetoothLeDeviceFilter.Builder.markUsed()
+RemovedMethod: android.companion.WifiDeviceFilter.Builder#checkNotUsed():
+    Removed method android.companion.WifiDeviceFilter.Builder.checkNotUsed()
+RemovedMethod: android.companion.WifiDeviceFilter.Builder#markUsed():
+    Removed method android.companion.WifiDeviceFilter.Builder.markUsed()
diff --git a/29/system/api/incompatibilities.txt b/29/system/api/incompatibilities.txt
new file mode 100644
index 0000000..00d47aa
--- /dev/null
+++ b/29/system/api/incompatibilities.txt
@@ -0,0 +1,35 @@
+// Baseline format: 1.0
+AddedAbstractMethod: android.content.pm.PackageManager#arePermissionsIndividuallyControlled():
+    Added method android.content.pm.PackageManager.arePermissionsIndividuallyControlled() to the system API
+AddedAbstractMethod: android.webkit.WebViewProvider#getWebViewRenderProcess():
+    Added method android.webkit.WebViewProvider.getWebViewRenderProcess() to the system API
+AddedAbstractMethod: android.webkit.WebViewProvider#getWebViewRenderProcessClient():
+    Added method android.webkit.WebViewProvider.getWebViewRenderProcessClient() to the system API
+AddedAbstractMethod: android.webkit.WebViewProvider#setWebViewRenderProcessClient(java.util.concurrent.Executor, android.webkit.WebViewRenderProcessClient):
+    Added method android.webkit.WebViewProvider.setWebViewRenderProcessClient(java.util.concurrent.Executor,android.webkit.WebViewRenderProcessClient) to the system API
+
+
+RemovedDeprecatedMethod: android.location.LocationManager#addGpsMeasurementListener(android.location.GpsMeasurementsEvent.Listener):
+    Removed deprecated method android.location.LocationManager.addGpsMeasurementListener(android.location.GpsMeasurementsEvent.Listener)
+RemovedDeprecatedMethod: android.location.LocationManager#addGpsNavigationMessageListener(android.location.GpsNavigationMessageEvent.Listener):
+    Removed deprecated method android.location.LocationManager.addGpsNavigationMessageListener(android.location.GpsNavigationMessageEvent.Listener)
+RemovedDeprecatedMethod: android.location.LocationManager#removeGpsMeasurementListener(android.location.GpsMeasurementsEvent.Listener):
+    Removed deprecated method android.location.LocationManager.removeGpsMeasurementListener(android.location.GpsMeasurementsEvent.Listener)
+RemovedDeprecatedMethod: android.location.LocationManager#removeGpsNavigationMessageListener(android.location.GpsNavigationMessageEvent.Listener):
+    Removed deprecated method android.location.LocationManager.removeGpsNavigationMessageListener(android.location.GpsNavigationMessageEvent.Listener)
+RemovedDeprecatedMethod: android.telephony.TelephonyManager#answerRingingCall():
+    Removed deprecated method android.telephony.TelephonyManager.answerRingingCall()
+RemovedDeprecatedMethod: android.telephony.TelephonyManager#endCall():
+    Removed deprecated method android.telephony.TelephonyManager.endCall()
+RemovedDeprecatedMethod: android.telephony.TelephonyManager#silenceRinger():
+    Removed deprecated method android.telephony.TelephonyManager.silenceRinger()
+
+
+RemovedField: android.Manifest.permission#CAPTURE_SECURE_VIDEO_OUTPUT:
+    Removed field android.Manifest.permission.CAPTURE_SECURE_VIDEO_OUTPUT
+RemovedField: android.Manifest.permission#CAPTURE_VIDEO_OUTPUT:
+    Removed field android.Manifest.permission.CAPTURE_VIDEO_OUTPUT
+RemovedField: android.Manifest.permission#MANAGE_DEVICE_ADMINS:
+    Removed field android.Manifest.permission.MANAGE_DEVICE_ADMINS
+RemovedField: android.Manifest.permission#READ_FRAME_BUFFER:
+    Removed field android.Manifest.permission.READ_FRAME_BUFFER
diff --git a/Android.bp b/Android.bp
index ec72c4d..e56cc15 100644
--- a/Android.bp
+++ b/Android.bp
@@ -30,7 +30,7 @@
 genrule {
     name: "last-released-public-api",
     srcs: [
-        "*/public/api/android.txt",
+        "28/public/api/android.txt",
     ],
     cmd: "cp -f $$(echo $(in) | tr \" \" \"\\n\" | sort -t/ -k3 -n | tail -1) $(genDir)/last-released-api.txt",
     out: [
@@ -41,7 +41,7 @@
 genrule {
     name: "last-released-system-api",
     srcs: [
-        "*/system/api/android.txt",
+        "28/system/api/android.txt",
     ],
     cmd: "cp -f $$(echo $(in) | tr \" \" \"\\n\" | sort -t/ -k3 -n | tail -1) $(genDir)/last-released-api.txt",
     out: [
@@ -50,13 +50,24 @@
 }
 
 genrule {
-    name: "public-api-for-metalava-annotations",
+    name: "public-api-incompatibilities-with-last-released",
     srcs: [
-        "*/public/api/android.txt",
+        "*/public/api/incompatibilities.txt",
     ],
-    cmd: "cp -f $$(echo $(in) | tr \" \" \"\\n\" | sort -t/ -k3 -n | tail -2 | head -1) $(genDir)/last-released-api.txt",
+    cmd: "cp -f $$(echo $(in) | tr \" \" \"\\n\" | sort -t/ -k3 -n | tail -1) $(genDir)/incompatibilities.txt",
     out: [
-        "last-released-api.txt",
+        "incompatibilities.txt",
+    ],
+}
+
+genrule {
+    name: "system-api-incompatibilities-with-last-released",
+    srcs: [
+        "*/system/api/incompatibilities.txt",
+    ],
+    cmd: "cp -f $$(echo $(in) | tr \" \" \"\\n\" | sort -t/ -k3 -n | tail -1) $(genDir)/incompatibilities.txt",
+    out: [
+        "incompatibilities.txt",
     ],
 }
 
diff --git a/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01-sources.jar b/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01-sources.jar
index 45f1e2c..a90c3fa 100644
--- a/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01-sources.jar
+++ b/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01-sources.jar
Binary files differ
diff --git a/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01-sources.jar.md5 b/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01-sources.jar.md5
index 6fd087e..1450dda 100644
--- a/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01-sources.jar.md5
+++ b/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01-sources.jar.md5
@@ -1 +1 @@
-94b0f315e6dc547a643b2b0edc80a1c5
\ No newline at end of file
+553bb2d888d43f9a78412f7ee43d0002
\ No newline at end of file
diff --git a/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01-sources.jar.sha1 b/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01-sources.jar.sha1
index 520cec4..abd5bab 100644
--- a/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01-sources.jar.sha1
+++ b/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01-sources.jar.sha1
@@ -1 +1 @@
-564982f9adeba0f69323057352f89980979fa372
\ No newline at end of file
+43440c48f5075539491d4423bfaf148185d5642a
\ No newline at end of file
diff --git a/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.aar b/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.aar
index fe37a99..289181e 100644
--- a/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.aar
+++ b/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.aar
Binary files differ
diff --git a/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.aar.md5 b/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.aar.md5
index 9ed4d47..6818dda 100644
--- a/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.aar.md5
+++ b/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.aar.md5
@@ -1 +1 @@
-3872b26495b3789ba0048f9ffaa079e4
\ No newline at end of file
+b848ad8008c050d9577a599d28323eb3
\ No newline at end of file
diff --git a/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.aar.sha1 b/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.aar.sha1
index a204e03..813ee96 100644
--- a/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.aar.sha1
+++ b/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.aar.sha1
@@ -1 +1 @@
-421c6f655797d5b284323be6f96b946504c0d965
\ No newline at end of file
+2528f17ca84ac46db53068d7474341f0350203b8
\ No newline at end of file
diff --git a/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.pom b/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.pom
index 3f2eceb..59e0af9 100644
--- a/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.pom
+++ b/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.pom
@@ -1,6 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0"
-    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
+<project xmlns="http://maven.apache.org/POM/4.0.0" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
   <modelVersion>4.0.0</modelVersion>
   <groupId>androidx.heifwriter</groupId>
   <artifactId>heifwriter</artifactId>
diff --git a/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.pom.md5 b/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.pom.md5
index 3899f28..9097d13 100644
--- a/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.pom.md5
+++ b/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.pom.md5
@@ -1 +1 @@
-226b7a9c01733e5dcf0391035c4ea1ea
\ No newline at end of file
+c683da3968e065eef4054243a39dffbf
\ No newline at end of file
diff --git a/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.pom.sha1 b/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.pom.sha1
index 19b5cd1..41f9e26 100644
--- a/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.pom.sha1
+++ b/current/androidx/m2repository/androidx/heifwriter/heifwriter/1.1.0-alpha01/heifwriter-1.1.0-alpha01.pom.sha1
@@ -1 +1 @@
-2990f8a1924c044eddef232a6d543972a754859a
\ No newline at end of file
+2e76cc3a22f462263bee12e44feb837a2fffe92a
\ No newline at end of file
diff --git a/tools/darwin/bin/lld b/tools/darwin/bin/lld
new file mode 100755
index 0000000..a72e999
--- /dev/null
+++ b/tools/darwin/bin/lld
Binary files differ
diff --git a/tools/darwin/lib64/libc++.1.dylib b/tools/darwin/lib64/libc++.1.dylib
new file mode 100755
index 0000000..5d2f7e2
--- /dev/null
+++ b/tools/darwin/lib64/libc++.1.dylib
Binary files differ
diff --git a/tools/darwin/lib64/libc++abi.1.dylib b/tools/darwin/lib64/libc++abi.1.dylib
new file mode 100755
index 0000000..123f385
--- /dev/null
+++ b/tools/darwin/lib64/libc++abi.1.dylib
Binary files differ
diff --git a/tools/linux/bin/lld b/tools/linux/bin/lld
new file mode 100755
index 0000000..cc1adca
--- /dev/null
+++ b/tools/linux/bin/lld
Binary files differ
diff --git a/tools/linux/lib64/libc++.so.1 b/tools/linux/lib64/libc++.so.1
new file mode 100644
index 0000000..b69995d
--- /dev/null
+++ b/tools/linux/lib64/libc++.so.1
Binary files differ
diff --git a/tools/lld b/tools/lld
new file mode 100755
index 0000000..cfefa3c
--- /dev/null
+++ b/tools/lld
@@ -0,0 +1,17 @@
+#!/bin/bash
+#
+# Copyright (C) 2020 The Android Open Source Project
+#
+# Licensed under the Apache License, Version 2.0 (the "License");
+# you may not use this file except in compliance with the License.
+# You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+$(dirname "$0")/lld-bin/lld "$@"
diff --git a/tools/windows/bin/lib64/libwinpthread-1.dll b/tools/windows/bin/lib64/libwinpthread-1.dll
new file mode 100755
index 0000000..ee5d7a3
--- /dev/null
+++ b/tools/windows/bin/lib64/libwinpthread-1.dll
Binary files differ
diff --git a/tools/windows/bin/lld.exe b/tools/windows/bin/lld.exe
new file mode 100755
index 0000000..0402b1a
--- /dev/null
+++ b/tools/windows/bin/lld.exe
Binary files differ
diff --git a/update_prebuilts/update_prebuilts.py b/update_prebuilts/update_prebuilts.py
index 2b8b796..fcd4562 100755
--- a/update_prebuilts/update_prebuilts.py
+++ b/update_prebuilts/update_prebuilts.py
@@ -12,7 +12,7 @@
 from functools import reduce
 
 current_path = 'current'
-framework_sdk_target = 'sdk_phone_armv7-win_sdk'
+framework_sdk_target = 'sdk_phone_armv7-sdk'
 support_dir = os.path.join(current_path, 'support')
 androidx_dir = os.path.join(current_path, 'androidx')
 extras_dir = os.path.join(current_path, 'extras')
