Skip to content

Commit 101c58f

Browse files
[Xamarin.Android.Build.Tasks] bump XA0113 warning to require API-29 (#5351)
Fixes: #4977 Context: https://support.google.com/googleplay/android-developer/answer/9859152?visit_id=637424522037563363-1219346479&rd=1#targetsdk We currently warn if `$(TargetFrameworkVersion)` is less than 28: Google Play requires that new applications and updates must use a TargetFrameworkVersion of v9.0 (API level 28) or above. As of 2020-Nov-2, Google Play requires API-29. Update this warning.
1 parent ba6ed11 commit 101c58f

File tree

18 files changed

+119
-75
lines changed

18 files changed

+119
-75
lines changed

Documentation/guides/messages/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,7 +59,7 @@ ms.date: 01/24/2020
5959
+ [XA0109](xa0109.md): Unsupported or invalid `$(TargetFrameworkVersion)` value of 'v4.5'.
6060
+ [XA0111](xa0111.md): Could not get the `aapt2` version. Please check it is installed correctly.
6161
+ [XA0112](xa0112.md): `aapt2` is not installed. Disabling `aapt2` support. Please check it is installed correctly.
62-
+ [XA0113](xa0113.md): Google Play requires that new applications and updates must use a TargetFrameworkVersion of v8.0 (API level 26) or above.
62+
+ [XA0113](xa0113.md): Google Play requires that new applications and updates must use a TargetFrameworkVersion of v10.0 (API level 29) or above.
6363
+ [XA0115](xa0115.md): Invalid value 'armeabi' in $(AndroidSupportedAbis). This ABI is no longer supported. Please update your project properties to remove the old value. If the properties page does not show an 'armeabi' checkbox, un-check and re-check one of the other ABIs and save the changes.
6464
+ [XA0116](xa0116.md): Unable to find `EmbeddedResource` named `{ResourceName}`.
6565
+ [XA0117](xa0117.md): The TargetFrameworkVersion {TargetFrameworkVersion} is deprecated. Please update it to be v4.4 or higher.

Documentation/guides/messages/xa0113.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,13 +7,13 @@ ms.date: 02/28/2019
77

88
## Issue
99

10-
As of August 1st 2019, new applications and application updates uploaded
11-
to the Google Play store need to target v9.0 (API 28) or above.
10+
As of November 2nd 2020, new applications and application updates uploaded
11+
to the Google Play store need to target v10.0 (API 29) or above.
1212

1313
## Solution
1414

1515
If you are seeing this warning, you should update the
16-
`$(TargetFrameworkVersion)` of your projects to be v9.0 or above.
16+
`$(TargetFrameworkVersion)` of your projects to be v10.0 or above.
1717

1818
If you are not targeting the Google Play store and wish to hide these
1919
warnings, you can make use of the `/warnasmessage:XA0113` command line
@@ -28,3 +28,4 @@ switch. Alternatively, add
2828
to your *.csproj* file.
2929

3030
[Google Play's target API level requirement](https://developer.android.com/distribute/best-practices/develop/target-sdk)
31+
[Target API level requirements for the Play Console](https://support.google.com/googleplay/android-developer/answer/9859152?#targetsdk)
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
### Other warning and error changes
2+
3+
#### Updated XA0113 warning for Google Play submission requirements
4+
5+
The XA0113 warning has been updated to reflect [a more recent minimum target
6+
version of Android 10 (API level 29)][targetsdk] for submissions to the Google
7+
Play store. The following warning will now appear for projects that have an
8+
earlier version set under **Compile using Android version: (Target Framework)**
9+
in the Visual Studio project property pages:
10+
11+
```
12+
warning XA0113: Google Play requires that new applications and updates must use a TargetFrameworkVersion of v10.0 (API level 29) or above. You are currently targeting v9.0 (API level 28).
13+
```
14+
15+
[targetsdk]: https://support.google.com/googleplay/android-developer/answer/9859152?#targetsdk

src/Xamarin.Android.Build.Tasks/Properties/Resources.resx

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -244,10 +244,12 @@ In this message, the phrase "should not be reached" means that this error messag
244244
<comment>The following are literal names and should not be translated: AAPT2, Aapt2ToolPath, MSBuild</comment>
245245
</data>
246246
<data name="XA0113" xml:space="preserve">
247-
<value>Google Play requires that new applications and updates must use a TargetFrameworkVersion of v9.0 (API level 28) or above. You are currently targeting {0} (API level {1}).</value>
248-
<comment>The following are literal names and should not be translated: TargetFrameworkVersion, v9.0
249-
{0} - The current value of TargetFrameworkVersion
250-
{1} - The corresponding API level number</comment>
247+
<value>Google Play requires that new applications and updates must use a TargetFrameworkVersion of {0} (API level {1}) or above. You are currently targeting {2} (API level {3}).</value>
248+
<comment>The following are literal names and should not be translated: TargetFrameworkVersion
249+
{0} - The required minimum TargetFrameworkVersion, such as 'v10.0'
250+
{1} - The required minimum API level number, such as '29'
251+
{2} - The specified TargetFrameworkVersion
252+
{3} - The specified API level number</comment>
251253
</data>
252254
<data name="XA0116" xml:space="preserve">
253255
<value>Unable to find `EmbeddedResource` named `{0}`.</value>

src/Xamarin.Android.Build.Tasks/Properties/xlf/Resources.cs.xlf

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -212,11 +212,13 @@ In this message, the phrase "should not be reached" means that this error messag
212212
<note>The following are literal names and should not be translated: AAPT2, Aapt2ToolPath, MSBuild</note>
213213
</trans-unit>
214214
<trans-unit id="XA0113">
215-
<source>Google Play requires that new applications and updates must use a TargetFrameworkVersion of v9.0 (API level 28) or above. You are currently targeting {0} (API level {1}).</source>
216-
<target state="translated">Google Play vyžaduje, aby nové aplikace a aktualizace používaly TargetFrameworkVersion verze 9.0 (rozhraní API úrovně 28) nebo vyšší. Aktuálně cílíte na verzi {0} (rozhraní API úrovně {1}).</target>
217-
<note>The following are literal names and should not be translated: TargetFrameworkVersion, v9.0
218-
{0} - The current value of TargetFrameworkVersion
219-
{1} - The corresponding API level number</note>
215+
<source>Google Play requires that new applications and updates must use a TargetFrameworkVersion of {0} (API level {1}) or above. You are currently targeting {2} (API level {3}).</source>
216+
<target state="new">Google Play requires that new applications and updates must use a TargetFrameworkVersion of {0} (API level {1}) or above. You are currently targeting {2} (API level {3}).</target>
217+
<note>The following are literal names and should not be translated: TargetFrameworkVersion
218+
{0} - The required minimum TargetFrameworkVersion, such as 'v10.0'
219+
{1} - The required minimum API level number, such as '29'
220+
{2} - The specified TargetFrameworkVersion
221+
{3} - The specified API level number</note>
220222
</trans-unit>
221223
<trans-unit id="XA0116">
222224
<source>Unable to find `EmbeddedResource` named `{0}`.</source>

src/Xamarin.Android.Build.Tasks/Properties/xlf/Resources.de.xlf

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -212,11 +212,13 @@ In this message, the phrase "should not be reached" means that this error messag
212212
<note>The following are literal names and should not be translated: AAPT2, Aapt2ToolPath, MSBuild</note>
213213
</trans-unit>
214214
<trans-unit id="XA0113">
215-
<source>Google Play requires that new applications and updates must use a TargetFrameworkVersion of v9.0 (API level 28) or above. You are currently targeting {0} (API level {1}).</source>
216-
<target state="translated">Google Play erfordert, dass neue Anwendungen und Updates die TargetFrameworkVersion v9.0 (API-Ebene 28) oder höher verwenden müssen. Sie verwenden als Ziel aktuell Version {0} (API-Ebene {1}).</target>
217-
<note>The following are literal names and should not be translated: TargetFrameworkVersion, v9.0
218-
{0} - The current value of TargetFrameworkVersion
219-
{1} - The corresponding API level number</note>
215+
<source>Google Play requires that new applications and updates must use a TargetFrameworkVersion of {0} (API level {1}) or above. You are currently targeting {2} (API level {3}).</source>
216+
<target state="new">Google Play requires that new applications and updates must use a TargetFrameworkVersion of {0} (API level {1}) or above. You are currently targeting {2} (API level {3}).</target>
217+
<note>The following are literal names and should not be translated: TargetFrameworkVersion
218+
{0} - The required minimum TargetFrameworkVersion, such as 'v10.0'
219+
{1} - The required minimum API level number, such as '29'
220+
{2} - The specified TargetFrameworkVersion
221+
{3} - The specified API level number</note>
220222
</trans-unit>
221223
<trans-unit id="XA0116">
222224
<source>Unable to find `EmbeddedResource` named `{0}`.</source>

src/Xamarin.Android.Build.Tasks/Properties/xlf/Resources.es.xlf

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -212,11 +212,13 @@ In this message, the phrase "should not be reached" means that this error messag
212212
<note>The following are literal names and should not be translated: AAPT2, Aapt2ToolPath, MSBuild</note>
213213
</trans-unit>
214214
<trans-unit id="XA0113">
215-
<source>Google Play requires that new applications and updates must use a TargetFrameworkVersion of v9.0 (API level 28) or above. You are currently targeting {0} (API level {1}).</source>
216-
<target state="translated">Google Play requiere que las nuevas aplicaciones y actualizaciones usen un valor de TargetFrameworkVersion de v9.0 (nivel de API 28) o superior. Actualmente se dirige a {0} (nivel de API {1}).</target>
217-
<note>The following are literal names and should not be translated: TargetFrameworkVersion, v9.0
218-
{0} - The current value of TargetFrameworkVersion
219-
{1} - The corresponding API level number</note>
215+
<source>Google Play requires that new applications and updates must use a TargetFrameworkVersion of {0} (API level {1}) or above. You are currently targeting {2} (API level {3}).</source>
216+
<target state="new">Google Play requires that new applications and updates must use a TargetFrameworkVersion of {0} (API level {1}) or above. You are currently targeting {2} (API level {3}).</target>
217+
<note>The following are literal names and should not be translated: TargetFrameworkVersion
218+
{0} - The required minimum TargetFrameworkVersion, such as 'v10.0'
219+
{1} - The required minimum API level number, such as '29'
220+
{2} - The specified TargetFrameworkVersion
221+
{3} - The specified API level number</note>
220222
</trans-unit>
221223
<trans-unit id="XA0116">
222224
<source>Unable to find `EmbeddedResource` named `{0}`.</source>

src/Xamarin.Android.Build.Tasks/Properties/xlf/Resources.fr.xlf

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -212,11 +212,13 @@ In this message, the phrase "should not be reached" means that this error messag
212212
<note>The following are literal names and should not be translated: AAPT2, Aapt2ToolPath, MSBuild</note>
213213
</trans-unit>
214214
<trans-unit id="XA0113">
215-
<source>Google Play requires that new applications and updates must use a TargetFrameworkVersion of v9.0 (API level 28) or above. You are currently targeting {0} (API level {1}).</source>
216-
<target state="translated">Google Play impose aux nouvelles applications et aux mises à jour d'utiliser le TargetFrameworkVersion version 9.0 (niveau d'API 28) ou une version ultérieure. Vous ciblez {0} (niveau d'API {1}).</target>
217-
<note>The following are literal names and should not be translated: TargetFrameworkVersion, v9.0
218-
{0} - The current value of TargetFrameworkVersion
219-
{1} - The corresponding API level number</note>
215+
<source>Google Play requires that new applications and updates must use a TargetFrameworkVersion of {0} (API level {1}) or above. You are currently targeting {2} (API level {3}).</source>
216+
<target state="new">Google Play requires that new applications and updates must use a TargetFrameworkVersion of {0} (API level {1}) or above. You are currently targeting {2} (API level {3}).</target>
217+
<note>The following are literal names and should not be translated: TargetFrameworkVersion
218+
{0} - The required minimum TargetFrameworkVersion, such as 'v10.0'
219+
{1} - The required minimum API level number, such as '29'
220+
{2} - The specified TargetFrameworkVersion
221+
{3} - The specified API level number</note>
220222
</trans-unit>
221223
<trans-unit id="XA0116">
222224
<source>Unable to find `EmbeddedResource` named `{0}`.</source>

src/Xamarin.Android.Build.Tasks/Properties/xlf/Resources.it.xlf

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -212,11 +212,13 @@ In this message, the phrase "should not be reached" means that this error messag
212212
<note>The following are literal names and should not be translated: AAPT2, Aapt2ToolPath, MSBuild</note>
213213
</trans-unit>
214214
<trans-unit id="XA0113">
215-
<source>Google Play requires that new applications and updates must use a TargetFrameworkVersion of v9.0 (API level 28) or above. You are currently targeting {0} (API level {1}).</source>
216-
<target state="translated">Con Google Play le nuove applicazioni e gli aggiornamenti devono usare TargetFrameworkVersion 9.0 (livello API 28) o versione successiva. La versione di destinazione impostata attualmente è {0} (livello API {1}).</target>
217-
<note>The following are literal names and should not be translated: TargetFrameworkVersion, v9.0
218-
{0} - The current value of TargetFrameworkVersion
219-
{1} - The corresponding API level number</note>
215+
<source>Google Play requires that new applications and updates must use a TargetFrameworkVersion of {0} (API level {1}) or above. You are currently targeting {2} (API level {3}).</source>
216+
<target state="new">Google Play requires that new applications and updates must use a TargetFrameworkVersion of {0} (API level {1}) or above. You are currently targeting {2} (API level {3}).</target>
217+
<note>The following are literal names and should not be translated: TargetFrameworkVersion
218+
{0} - The required minimum TargetFrameworkVersion, such as 'v10.0'
219+
{1} - The required minimum API level number, such as '29'
220+
{2} - The specified TargetFrameworkVersion
221+
{3} - The specified API level number</note>
220222
</trans-unit>
221223
<trans-unit id="XA0116">
222224
<source>Unable to find `EmbeddedResource` named `{0}`.</source>

src/Xamarin.Android.Build.Tasks/Properties/xlf/Resources.ja.xlf

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -212,11 +212,13 @@ In this message, the phrase "should not be reached" means that this error messag
212212
<note>The following are literal names and should not be translated: AAPT2, Aapt2ToolPath, MSBuild</note>
213213
</trans-unit>
214214
<trans-unit id="XA0113">
215-
<source>Google Play requires that new applications and updates must use a TargetFrameworkVersion of v9.0 (API level 28) or above. You are currently targeting {0} (API level {1}).</source>
216-
<target state="translated">Google Play では、新しいアプリケーションと更新プログラムで v9.0 (API レベル 28) 以上の TargetFrameworkVersion を使用する必要があります。現在は、{0} (API レベル {1}) をターゲットにしています。</target>
217-
<note>The following are literal names and should not be translated: TargetFrameworkVersion, v9.0
218-
{0} - The current value of TargetFrameworkVersion
219-
{1} - The corresponding API level number</note>
215+
<source>Google Play requires that new applications and updates must use a TargetFrameworkVersion of {0} (API level {1}) or above. You are currently targeting {2} (API level {3}).</source>
216+
<target state="new">Google Play requires that new applications and updates must use a TargetFrameworkVersion of {0} (API level {1}) or above. You are currently targeting {2} (API level {3}).</target>
217+
<note>The following are literal names and should not be translated: TargetFrameworkVersion
218+
{0} - The required minimum TargetFrameworkVersion, such as 'v10.0'
219+
{1} - The required minimum API level number, such as '29'
220+
{2} - The specified TargetFrameworkVersion
221+
{3} - The specified API level number</note>
220222
</trans-unit>
221223
<trans-unit id="XA0116">
222224
<source>Unable to find `EmbeddedResource` named `{0}`.</source>

0 commit comments

Comments
 (0)