The earlier commit removed the client_secret and wired
MainActivity.OnNewIntent to AndroidOidcCallbackSink, but
IdentityModel.OidcClient.LoginAsync still had no IBrowser to drive
the user-agent half of the flow. Without it, the desktop / browser
projects continue to fail at login with 'No browser is available'.
Android now plugs in Chrome Custom Tabs:
* PostIt.Android/Services/AndroidSystemBrowser.cs implements
IBrowser.InvokeAsync using CustomTabsIntent.LaunchUrl and waits
for MainActivity.AndroidOidcCallbackSink to deliver the deep-link
Intent (android://postit-signin?code=...&state=...).
* PostIt/Services/Platform.cs is a tiny static indirection the
shared library uses to ask the running platform for an
IBrowser and the appropriate default RedirectUri, without
referencing any UI framework from the shared assembly.
* LoginPageViewModel reads Platform.DefaultRedirectUri and
Platform.CreateBrowser().Invoke() before calling LoginAsync.
* PostIt.Android/PlatformBootstrap.cs wires the Android side at
startup, and MainActivity.OnCreate calls EnsureInitialized().
* Xamarin.AndroidX.Browser 1.8.0 added to the central package
versions so CustomTabsIntent resolves.
19 lines
No EOL
1 KiB
XML
19 lines
No EOL
1 KiB
XML
<Project>
|
|
<!-- Pull in shared package versions from the repository root. -->
|
|
<Import Project="$([MSBuild]::GetPathOfFileAbove('Directory.Packages.props', '$(MSBuildThisFileDirectory)../'))" />
|
|
|
|
<!-- PostIt-product-specific versions -->
|
|
<ItemGroup>
|
|
<PackageVersion Include="Avalonia" Version="12.0.4" />
|
|
<PackageVersion Include="Avalonia.Android" Version="12.0.4" />
|
|
<PackageVersion Include="Avalonia.AvaloniaEdit" Version="12.0.0" />
|
|
<PackageVersion Include="Avalonia.Browser" Version="12.0.4" />
|
|
<PackageVersion Include="Avalonia.Desktop" Version="12.0.4" />
|
|
<PackageVersion Include="Avalonia.Fonts.Inter" Version="12.0.4" />
|
|
<PackageVersion Include="Avalonia.Themes.Fluent" Version="12.0.4" />
|
|
<PackageVersion Include="AvaloniaUI.DiagnosticsSupport" Version="2.2.2" />
|
|
<PackageVersion Include="CommunityToolkit.Mvvm" Version="8.4.2" />
|
|
<PackageVersion Include="Xamarin.AndroidX.Browser" Version="1.8.0" />
|
|
<PackageVersion Include="Xamarin.AndroidX.Core.SplashScreen" Version="1.2.0" />
|
|
</ItemGroup>
|
|
</Project> |