Skip to content

Commit c6cf585

Browse files
authored
Merge pull request #198 from unoplatform/mergify/bp/release/stable/1.16/pr-195
fix: Use arm64 android system on arm64 systems (backport #195)
2 parents 63bf0b5 + c4465ed commit c6cf585

File tree

1 file changed

+15
-2
lines changed

1 file changed

+15
-2
lines changed

UnoCheck/Checkups/AndroidSdkCheckup.cs

+15-2
Original file line numberDiff line numberDiff line change
@@ -159,11 +159,24 @@ public override Task<DiagnosticResult> Examine(SharedState history)
159159

160160
if (installedPkg == null)
161161
{
162+
var packagePath = package.Path.Trim();
163+
var packageVersion = package.Version;
164+
165+
if(packagePath.EndsWith("x86_64") && Util.IsArm64)
166+
{
167+
// On arm64 devices, use arm64 emulators
168+
if(package.Alternatives.FirstOrDefault(a => a.Path.EndsWith("arm64-v8a")) is { } alternative)
169+
{
170+
packagePath = alternative.Path;
171+
packageVersion = alternative.Version;
172+
}
173+
}
174+
162175
var pkgToInstall = sdkInstance?.Components?.AllNotInstalled()?
163-
.FirstOrDefault(p => p.Path.Equals(package.Path.Trim(), StringComparison.OrdinalIgnoreCase)
176+
.FirstOrDefault(p => p.Path.Equals(packagePath, StringComparison.OrdinalIgnoreCase)
164177
&& p.Revision >= (v ?? p.Revision));
165178

166-
ReportStatus($"{package.Path} ({package.Version}) missing.", Status.Error);
179+
ReportStatus($"{packagePath} ({packageVersion}) missing.", Status.Error);
167180

168181
if (pkgToInstall != null)
169182
missingPackages.Add(pkgToInstall);

0 commit comments

Comments
 (0)