-
Notifications
You must be signed in to change notification settings - Fork 538
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[Mono.Android] Fix some incorrect enums. (#7670)
Context: dotnet/java-interop@5c5dc08 Using Android's API-33 `annotations.zip`, some missing and incorrect enum mappings were found. ~~ Missed Enumeration ~~ Enums that were previously left as constants have been enumified and have had the old members added back to the API with manual additions code marked with `[Obsolete]`. Original `map.csv` entries such as: I,23,android/hardware/camera2/CameraAccessException.MAX_CAMERAS_IN_USE,5,,,, become: E,23,android/hardware/camera2/CameraAccessException.MAX_CAMERAS_IN_USE,5,Android.Hardware.Camera2.CameraAccessErrorType,MaxCameraInUse,keep, with added C# code to maintain API compatibility: namespace Android.Hardware.Camera2 { partial class CameraAccessException { [Obsolete ("This constant will be removed in the future version. Use Android.Hardware.Camera2.CameraAccessErrorType enum directly instead of this field.")] [Register ("MAX_CAMERAS_IN_USE", ApiSince=23)] public const int MaxCamerasInUse = 5; } } ~~ Incorrect Enumerations ~~ Some other constants were assigned to the wrong enumeration. These have been marked as `[Obsolete]` and new values have been added to the correct enumeration. For example: E,30,android/app/usage/UsageStatsManager.STANDBY_BUCKET_RESTRICTED,45,Android.App.Usage.UsageStatsInterval,Restricted,remove, becomes: E,30,android/app/usage/UsageStatsManager.STANDBY_BUCKET_RESTRICTED,45,Android.App.Usage.UsageStatsInterval,Restricted,remove,,-1 A,30,,45,Android.App.Usage.StandbyBucket,Restricted,remove,, which will result in: namespace Android.App.Usage { /* partial */ enum UsageStatsInterval { [Obsolete ("This value was incorrectly added to the enumeration and is not a valid value")] Restricted = 45, // Removed incorrect entry } /* partial */ enum StandbyBucket { Restricted = 45, // Entry added to correct enum } }
- Loading branch information
Showing
4 changed files
with
35 additions
and
8 deletions.
There are no files selected for viewing
15 changes: 15 additions & 0 deletions
15
src/Mono.Android/Android.Hardware.Camera2/CameraAccessException.cs
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,15 @@ | ||
using System; | ||
using Android.Runtime; | ||
|
||
#if ANDROID_23 | ||
namespace Android.Hardware.Camera2 | ||
{ | ||
// This was converted to an enum in .NET 8 | ||
partial class CameraAccessException | ||
{ | ||
[Obsolete ("This constant will be removed in the future version. Use Android.Hardware.Camera2.CameraAccessErrorType enum directly instead of this field.")] | ||
[Register ("MAX_CAMERAS_IN_USE", ApiSince=23)] | ||
public const int MaxCamerasInUse = 5; | ||
} | ||
} | ||
#endif // ANDROID_23 |
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