-
Notifications
You must be signed in to change notification settings - Fork 528
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[Xamarin.Android.Build.Tasks] Add XA1025 error for Hybrid AOT on armeabi-v7a #4966
Merged
Merged
Changes from all commits
Commits
Show all changes
2 commits
Select commit
Hold shift + click to select a range
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,47 @@ | ||
--- | ||
title: Xamarin.Android error XA1025 | ||
description: XA1025 error code | ||
ms.date: 11/08/2020 | ||
--- | ||
# Xamarin.Android error XA1025 | ||
|
||
## Example messages | ||
|
||
``` | ||
error XA1025: The experimental 'Hybrid' value for the 'AndroidAotMode' MSBuild | ||
property is not currently compatible with the armeabi-v7a target ABI. To | ||
continue using the experimental 'Hybrid' value for 'AndroidAotMode', deselect | ||
the armeabi-v7a target ABI in the Visual Studio project property pages or edit | ||
the project file in a text editor and remove 'armeabi-v7a' from the | ||
'AndroidSupportedAbis' MSBuild property. | ||
``` | ||
|
||
## Issue | ||
|
||
The project has the `AndroidAotMode` MSBuild property set to the experimental | ||
`Hybrid` value and also includes the value `armeabi-v7a` in the | ||
`AndroidSupportedAbis` MSBuild property. Applications built with | ||
`AndroidAotMode` set to `Hybrid` currently abort during startup on armeabi-v7a | ||
devices, so the build exits with an error if this configuration is found. | ||
|
||
## Solution | ||
|
||
If armeabi-v7a device compatibility is required for the app, the | ||
`AndroidAotMode` MSBuild property should be set to `Normal` or removed from the | ||
project file completely. To adjust the value of the `AndroidAotMode` MSBuild | ||
property, edit the project file in a text editor. | ||
|
||
If armeabi-v7a device compatibility is not required for the app, then deselect | ||
the **armeabi-v7a** target ABI in the Visual Studio project property pages to | ||
resolve the build error. | ||
|
||
In Visual Studio, the target ABIs can be adjusted under **Supported | ||
architectures** in the **Advanced** section of the **Android Options** tab of | ||
the project property pages | ||
|
||
In Visual Studio for Mac, the target ABIs can be adjusted under **Supported | ||
ABIs** in the **Advanced** tab of the **Android Build** section of the project | ||
property pages. | ||
|
||
Alternatively, edit the project file in a text editor and remove `armeabi-v7a` | ||
from the `AndroidSupportedAbis` MSBuild property by hand. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
#### Deprecations, removals, and default configuration changes | ||
|
||
- [XA1025 error for Hybrid AndroidAotMode with incompatible armeabi-v7a target ABI](#xa1025-error-for-hybrid-androidaotmode-with-incompatible-armeabiv7a-target-abi) | ||
|
||
### XA1025 error for Hybrid AndroidAotMode with incompatible armeabi-v7a target ABI | ||
|
||
``` | ||
error XA1025: The experimental 'Hybrid' value for the 'AndroidAotMode' MSBuild | ||
property is not currently compatible with the armeabi-v7a target ABI. To | ||
continue using the experimental 'Hybrid' value for 'AndroidAotMode', deselect | ||
the armeabi-v7a target ABI in the Visual Studio project property pages or edit | ||
the project file in a text editor and remove 'armeabi-v7a' from the | ||
'AndroidSupportedAbis' MSBuild property. | ||
``` | ||
|
||
Projects using the experimental `Hybrid` value for the `AndroidAotMode` MSBuild | ||
property that also include the value `armeabi-v7a` in the `AndroidSupportedAbis` | ||
MSBuild property will now see this build error to help indicate that | ||
applications built with these settings would abort during startup on armeabi-v7a | ||
ABI device environments ([GitHub Issue 1218][github-1218]). | ||
|
||
If armeabi-v7a device compatibility is required for the app, the | ||
`AndroidAotMode` MSBuild property should be set to `Normal` or removed from the | ||
project file completely. To adjust the value of the `AndroidAotMode` MSBuild | ||
property, edit the project file in a text editor. | ||
|
||
If armeabi-v7a device compatibility is not required for the app, then deselect | ||
the **armeabi-v7a** target ABI in the Visual Studio project property pages to | ||
resolve the build error. | ||
|
||
In Visual Studio, the target ABIs can be adjusted under **Supported | ||
architectures** in the **Advanced** section of the **Android Options** tab of | ||
the project property pages | ||
|
||
In Visual Studio for Mac, the target ABIs can be adjusted under **Supported | ||
ABIs** in the **Advanced** tab of the **Android Build** section of the project | ||
property pages. | ||
|
||
Alternatively, edit the project file in a text editor and remove `armeabi-v7a` | ||
from the `AndroidSupportedAbis` MSBuild property by hand. | ||
|
||
[github-1218]: https://github.com/xamarin/xamarin-android/issues/1218 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
One possible reason not to add this error message could be that, as far as I can find, the
Hybrid
setting for the$(AndroidAotMode)
is undocumented, so adding an error message for it might in a small way lead to imprecise impressions about future availability and compatibility of the feature. Hopefully the fact that the message includes the term "experimental" right up front will minimize the risk of incorrect impressions.