Skip to content

Commit

Permalink
Merge pull request #559 from bcc-code/feature/dotnet-8
Browse files Browse the repository at this point in the history
update to .NET 8 and Android Api Level 34
  • Loading branch information
kkuepper authored Aug 22, 2024
2 parents c260b7f + 03abdb5 commit 8700698
Show file tree
Hide file tree
Showing 121 changed files with 192 additions and 249 deletions.
2 changes: 1 addition & 1 deletion BMM.Api/BMM.Api.csproj
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<UseMauiEssentials>true</UseMauiEssentials>
Expand Down
9 changes: 5 additions & 4 deletions BMM.Core/App.cs
Original file line number Diff line number Diff line change
Expand Up @@ -208,7 +208,6 @@ public override void Initialize()
Mvx.IoCProvider.LazyConstructAndRegisterSingleton<IDownloadQueue, DownloadQueue>();

Mvx.IoCProvider.LazyConstructAndRegisterSingleton<IOfflineTrackCollectionStorage, OfflineTrackCollectionStorage>();
Mvx.IoCProvider.CallbackWhenRegistered<IOfflineTrackCollectionStorage>(storage => storage.InitAsync());
Mvx.IoCProvider.LazyConstructAndRegisterSingleton<ITrackCollectionOfflineTrackProvider, TrackCollectionOfflineTrackProvider>();
Mvx.IoCProvider.LazyConstructAndRegisterSingleton<IPodcastOfflineTrackProvider, PodcastOfflineTrackProvider>();

Expand All @@ -222,7 +221,6 @@ public override void Initialize()
Mvx.IoCProvider.ConstructAndRegisterSingleton<IGlobalMediaDownloader, GlobalMediaDownloader>();

Mvx.IoCProvider.LazyConstructAndRegisterSingleton<IPodcastOfflineManager, PodcastOfflineManager>();
Mvx.IoCProvider.CallbackWhenRegistered<IPodcastOfflineManager>(manager => manager.InitAsync());

Mvx.IoCProvider.ConstructAndRegisterSingleton<IReceive<PodcastNotification>, PodcastNotificationReceiver>();
Mvx.IoCProvider.RegisterType<IReceive<GeneralNotification>, GeneralNotificationReceiver>();
Expand Down Expand Up @@ -254,7 +252,7 @@ public override void Initialize()
Mvx.IoCProvider.ConstructAndRegisterSingleton<IListeningObserver, ListeningObserver>();
Mvx.IoCProvider.ConstructAndRegisterSingleton<ISubscriptionManager, SubscriptionManager>();

Mvx.IoCProvider.IoCConstruct<ConnectionStatusLogger>();
Mvx.IoCProvider.IoCConstruct<ConnectionStatusMonitor>();
InitializeTranslation();

Mvx.IoCProvider.Resolve<IMvxMessenger>()
Expand All @@ -279,7 +277,6 @@ public override void Initialize()
Mvx.IoCProvider.RegisterType<OidcUserStartupTask>();

Mvx.IoCProvider.ConstructAndRegisterSingleton<IStartupManager, StartupManager>();
Mvx.IoCProvider.CallbackWhenRegistered<IStartupManager>(manager => manager.Initialize(CreatableTypes()));

Mvx.IoCProvider.RegisterType<IGuardInvoker, GuardInvoker>();
Mvx.IoCProvider.LazyConstructAndRegisterSingleton<ITimeDiagnosticTool, TimeDiagnosticTool>();
Expand All @@ -304,6 +301,10 @@ public override void Initialize()
RegisterDynamic(typeof(IBaseGuardedAction));
RegisterDynamic(typeof(IActionExceptionHandler));
RegisterCustomAppStart<AppStart>();

Mvx.IoCProvider.GetSingleton<IStartupManager>().Initialize(CreatableTypes());
Mvx.IoCProvider.GetSingleton<IPodcastOfflineManager>().InitAsync();
Mvx.IoCProvider.GetSingleton<IOfflineTrackCollectionStorage>().InitAsync();
}

private static HttpClient GetHttpClient()
Expand Down
15 changes: 8 additions & 7 deletions BMM.Core/BMM.Core.csproj
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>disable</Nullable>
<UseMauiEssentials>true</UseMauiEssentials>
Expand All @@ -14,17 +14,18 @@
<ItemGroup>
<PackageReference Include="Acr.UserDialogs" Version="8.0.1" />
<PackageReference Include="akavache" Version="9.1.7" />
<PackageReference Include="IdentityModel" Version="6.0.0" />
<PackageReference Include="IdentityModel.OidcClient" Version="5.2.1" />
<PackageReference Include="IdentityModel" Version="7.0.0" />
<PackageReference Include="IdentityModel.OidcClient" Version="6.0.0" />
<PackageReference Include="Microsoft.AppCenter" Version="5.0.1" />
<PackageReference Include="Microsoft.AppCenter.Analytics" Version="5.0.1" />
<PackageReference Include="Microsoft.AppCenter.Crashes" Version="5.0.1" />
<PackageReference Include="MvvmCross" Version="9.0.9" />
<PackageReference Include="MvvmCross.Plugin.JsonLocalization" Version="9.0.9" />
<PackageReference Include="MvvmCross.Plugin.Messenger" Version="9.0.9" />
<PackageReference Include="MvvmCross.Plugin.Visibility" Version="9.0.9" />
<PackageReference Include="MvvmCross" Version="9.2.0" />
<PackageReference Include="MvvmCross.Plugin.JsonLocalization" Version="9.2.0" />
<PackageReference Include="MvvmCross.Plugin.Messenger" Version="9.2.0" />
<PackageReference Include="MvvmCross.Plugin.Visibility" Version="9.2.0" />
<PackageReference Include="System.IdentityModel.Tokens.Jwt" Version="6.27.0" />
<PackageReference Include="TagLibSharp" Version="2.3.0" />
<PackageReference Update="Microsoft.Maui.Graphics" Version="8.0.80" />
</ItemGroup>

<ItemGroup>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,15 +8,15 @@

namespace BMM.Core.Implementations.Connection
{
public class ConnectionStatusLogger
public class ConnectionStatusMonitor
{
private readonly IAnalytics _analytics;
private readonly IMvxMessenger _messenger;
private readonly IConnection _connection;
private readonly IGlobalMediaDownloader _globalMediaDownloader;
private DateTime _lastConnectionChange;

public ConnectionStatusLogger(
public ConnectionStatusMonitor(
IAnalytics analytics,
IMvxMessenger messenger,
IConnection connection,
Expand Down
2 changes: 1 addition & 1 deletion BMM.Tests/BMM.Api.Tests/BMM.Api.Tests.csproj
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>

Expand Down
4 changes: 2 additions & 2 deletions BMM.Tests/BMM.Core.Test/BMM.Core.Test.csproj
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
<Project Sdk="Microsoft.NET.Sdk">

<PropertyGroup>
<TargetFramework>net7.0</TargetFramework>
<TargetFramework>net8.0</TargetFramework>
<ImplicitUsings>enable</ImplicitUsings>
<Nullable>enable</Nullable>
<UseMauiEssentials>true</UseMauiEssentials>
Expand All @@ -12,7 +12,7 @@
<PackageReference Include="FluentAssertions" Version="6.10.0" />
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="17.3.2" />
<PackageReference Include="Moq" Version="4.18.4" />
<PackageReference Include="MvvmCross.Tests" Version="9.0.9" />
<PackageReference Include="MvvmCross.Tests" Version="9.2.0" />
<PackageReference Include="NSubstitute" Version="5.0.0" />
<PackageReference Include="NUnit" Version="3.13.3" />
<PackageReference Include="NUnit3TestAdapter" Version="4.3.0" />
Expand Down
11 changes: 8 additions & 3 deletions BMM.UI.Android/AndroidSetup.cs
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
using System.Net;
using System;
using System.Collections.Generic;
using System.Net;
using System.Net.Http;
using System.Reflection;
using Acr.UserDialogs;
using Android.OS;
Expand Down Expand Up @@ -68,6 +71,7 @@
using MvvmCross.IoC;
using MvvmCross.Platforms.Android.Core;
using MvvmCross.Platforms.Android.Presenters;
using MvvmCross.Plugin.Color.Platforms.Android.BindingTargets;
using MvvmCross.Plugin.ResourceLoader.Platforms.Android;
using MvvmCross.ViewModels;
using Serilog;
Expand Down Expand Up @@ -147,7 +151,6 @@ protected override void InitializeFirstChance(IMvxIoCProvider iocProvider)
iocProvider.LazyConstructAndRegisterSingleton<IOldSecureStorage, DroidOldSecureStorage>();
iocProvider.RegisterType<IMvxResourceLoader, MvxAndroidResourceLoader>();
iocProvider.LazyConstructAndRegisterSingleton<IUserDialogsFactory, DroidUserDialogsFactory>();
iocProvider.CallbackWhenRegistered<IMvxTargetBindingFactoryRegistry>(RegisterAdditionalBindings);

iocProvider.LazyConstructAndRegisterSingleton<IStopwatchManager, StopwatchManager>();
var stopwatch = iocProvider.Resolve<IStopwatchManager>();
Expand Down Expand Up @@ -228,8 +231,10 @@ private static void InitializeImageService()
});
}

private void RegisterAdditionalBindings(IMvxTargetBindingFactoryRegistry registry)
protected override void FillTargetFactories(IMvxTargetBindingFactoryRegistry registry)
{
base.FillTargetFactories(registry);

registry.RegisterFactory(new MvxCustomBindingFactory<View>("BackgroundTint", view => new MvxBackgroundTintBinding(view)));
registry.RegisterFactory(new MvxCustomBindingFactory<CardView>("CardVisibility", card => new MvxCardVisibility(card)));
registry.RegisterFactory(new MvxCustomBindingFactory<CardView>("CardCircle", card => new MvxCardCircle(card)));
Expand Down
2 changes: 1 addition & 1 deletion BMM.UI.Android/Application/Helpers/SetupHelper.cs
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ public class SetupHelper
public static void EnsureInitialized()
{
AppCenterHelper.DroidRegister();
var setup = MvxAndroidSetupSingleton.EnsureSingletonAvailable(Android.App.Application.Context);
var setup = MvxAndroidSetupSingleton.EnsureSingletonAvailable(BmmApplication.Instance);
setup.EnsureInitialized();
}
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,15 +1,7 @@
using System;
using System.Diagnostics;
using System.Globalization;
using System.Globalization;
using Android.Graphics;
using AndroidX.Core.Content;
using BMM.Api.Abstraction;
using BMM.Api.Framework;
using BMM.Api.Implementation.Models;
using BMM.Core.Implementations.FileStorage;
using BMM.Core.Implementations.UI;
using BMM.Core.Models.POs.Tracks;
using BMM.Core.ViewModels;
using BMM.UI.Droid.Application.Extensions;
using MvvmCross;
using MvvmCross.Converters;
Expand All @@ -19,15 +11,6 @@ namespace BMM.UI.Droid.Application.ValueConverters
{
public class TrackPlaybackStateToColorValueConverter : MvxValueConverter<TrackState, Color>
{
private readonly IConnection _connection;
private readonly IStorageManager _storageManager;

public TrackPlaybackStateToColorValueConverter()
{
_connection = Mvx.IoCProvider.Resolve<IConnection>();
_storageManager = Mvx.IoCProvider.Resolve<IStorageManager>();
}

protected override Color Convert(TrackState trackState, Type targetType, object currentTrack, CultureInfo culture)
{
var context = Mvx.IoCProvider.Resolve<IMvxAndroidCurrentTopActivity>().Activity;
Expand Down
55 changes: 25 additions & 30 deletions BMM.UI.Android/BMM.UI.Droid.csproj
Original file line number Diff line number Diff line change
@@ -1,50 +1,45 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net7.0-android</TargetFramework>
<TargetPlatformVersion>33</TargetPlatformVersion>
<TargetFramework>net8.0-android</TargetFramework>
<SupportedOSPlatformVersion>21</SupportedOSPlatformVersion>
<OutputType>Exe</OutputType>
<Nullable>disable</Nullable>
<ImplicitUsings>enable</ImplicitUsings>
<UseMauiEssentials>true</UseMauiEssentials>
<ApplicationId>org.brunstad.bmm</ApplicationId>
<ApplicationVersion>1</ApplicationVersion>
<ApplicationDisplayVersion>1.102.0</ApplicationDisplayVersion>
<TargetPlatformVersion>34</TargetPlatformVersion>
<UseMauiEssentials>true</UseMauiEssentials>
<RootNamespace>BMM.UI.Droid</RootNamespace>
<AssemblyName>BMM.UI.Android</AssemblyName>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<AndroidPackageFormat>apk</AndroidPackageFormat>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
<AndroidPackageFormat>apk</AndroidPackageFormat>
<AndroidLinkTool>r8</AndroidLinkTool>
<AndroidLinkSkip>MvvmCross;MvvmCross.Plugin.Messenger</AndroidLinkSkip>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
<AndroidUseSharedRuntime>true</AndroidUseSharedRuntime>
<EmbedAssembliesIntoApk>True</EmbedAssembliesIntoApk>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="akavache" Version="9.1.7" />
<PackageReference Include="MvvmCross" Version="9.0.9" />
<PackageReference Include="MvvmCross.DroidX.RecyclerView" Version="9.0.9" />
<PackageReference Include="MvvmCross.DroidX.SwipeRefreshLayout" Version="9.0.9" />
<PackageReference Include="MvvmCross.Plugin.Color" Version="9.0.9" />
<PackageReference Include="MvvmCross.Plugin.JsonLocalization" Version="9.0.9" />
<PackageReference Include="Serilog.Extensions.Logging" Version="3.1.0" />
<PackageReference Include="System.IdentityModel.Tokens.Jwt" Version="6.27.0" />
<PackageReference Include="MvvmCross" Version="9.2.0" />
<PackageReference Include="MvvmCross.DroidX.RecyclerView" Version="9.2.0" />
<PackageReference Include="MvvmCross.DroidX.SwipeRefreshLayout" Version="9.2.0" />
<PackageReference Include="MvvmCross.Plugin.Color" Version="9.2.0" />
<PackageReference Include="MvvmCross.Plugin.JsonLocalization" Version="9.2.0" />
<PackageReference Include="Serilog.Extensions.Logging" Version="8.0.0" />
<PackageReference Include="XAB.FlexboxLayout" Version="3.0.0.2" />
<PackageReference Include="Xam.Plugins.Android.ExoPlayer" Version="2.18.10" />
<PackageReference Include="Xam.Plugins.Android.ExoPlayer.MediaSession" Version="2.18.10" />
<PackageReference Include="Xamarin.AndroidX.Palette" Version="1.0.0.16" />
<PackageReference Include="Xamarin.AndroidX.RecyclerView" Version="1.2.1.9" />
<PackageReference Include="Xamarin.Firebase.Common" Version="120.2.0.1" />
<PackageReference Include="Xamarin.Firebase.Config" Version="121.2.0.1" />
<PackageReference Include="Xamarin.Firebase.Messaging" Version="123.1.1.1" />
<PackageReference Include="Xamarin.Google.Android.Material" Version="1.7.0.2" />
<PackageReference Include="Xamarin.AndroidX.Navigation.Common" Version="2.5.3.1" />
<PackageReference Include="Xamarin.AndroidX.Navigation.Runtime" Version="2.5.3.1" />
<PackageReference Include="Xamarin.AndroidX.Navigation.UI" Version="2.5.3.1" />
<PackageReference Include="Xamarin.AndroidX.Lifecycle.LiveData" Version="2.5.1.2" />
<PackageReference Include="Xamarin.AndroidX.Navigation.Fragment" Version="2.5.3.1" />
<PackageReference Include="Xamarin.AndroidX.Legacy.Support.V4" Version="1.0.0.16" />
<PackageReference Include="Xamarin.AndroidX.Browser" Version="1.4.0.4" />
<PackageReference Include="Xamarin.Google.Crypto.Tink.Android" Version="1.7.0.2" />
<PackageReference Include="Xam.Plugins.Android.ExoPlayer" Version="2.19.1" />
<PackageReference Include="Xam.Plugins.Android.ExoPlayer.MediaSession" Version="2.19.1" />
<PackageReference Include="Xamarin.AndroidX.Activity.Ktx" Version="1.9.1" />
<PackageReference Include="Xamarin.AndroidX.Browser" Version="1.8.0.4" />
<PackageReference Include="Xamarin.AndroidX.Collection.Ktx" Version="1.4.2" />
<PackageReference Include="Xamarin.AndroidX.Lifecycle.LiveData.Core.Ktx" Version="2.8.4" />
<PackageReference Include="Xamarin.AndroidX.Palette" Version="1.0.0.27" />
<PackageReference Include="Xamarin.Firebase.Config" Version="122.0.0.1" />
<PackageReference Include="Xamarin.Firebase.Messaging" Version="124.0.0.1" />
<PackageReference Update="Microsoft.Maui.Essentials" Version="8.0.80" />
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\BMM.Core\BMM.Core.csproj" />
Expand Down
2 changes: 0 additions & 2 deletions BMM.UI.Android/Resources/layout/listitem_track.axml
Original file line number Diff line number Diff line change
Expand Up @@ -18,10 +18,8 @@
android:id="@+id/trackTitle"
android:layout_width="@dimen/match_constraint"
android:layout_height="wrap_content"
android:textFontWeight="700"
android:maxLines="1"
android:ellipsize="end"
android:lineHeight="20sp"
style="@style/Title2"
local:layout_constraintStart_toEndOf="@+id/trackPlaybackStateIcon"
local:layout_constraintTop_toTopOf="parent"
Expand Down
2 changes: 1 addition & 1 deletion BMM.UI.Android/SplashScreenActivity.cs
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ namespace BMM.UI.Droid
{
Intent.CategoryDefault
})]
public class SplashScreenActivity : MvxSplashScreenActivity
public class SplashScreenActivity : MvxStartActivity
{
public static Intent UnhandledNotification;

Expand Down
39 changes: 1 addition & 38 deletions BMM.UI.iOS.SiriIntents/BMM.UI.iOS.SiriIntents.csproj
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<TargetFramework>net7.0-ios</TargetFramework>
<TargetFramework>net8.0-ios</TargetFramework>
<OutputType>Library</OutputType>
<ApplicationId>BMM.UI.iOS.SiriIntents</ApplicationId>
<Configurations>Debug;Release;UITests</Configurations>
Expand All @@ -21,14 +21,7 @@
<WarningLevel>4</WarningLevel>
<CodesignKey>iPhone Developer</CodesignKey>
<DeviceSpecificBuild>false</DeviceSpecificBuild>
<MtouchDebug>true</MtouchDebug>
<_BundlerDebug>false</_BundlerDebug>
<MtouchNoSymbolStrip>true</MtouchNoSymbolStrip>
<MtouchFastDev>true</MtouchFastDev>
<IOSDebuggerPort>38765</IOSDebuggerPort>
<MtouchLink>None</MtouchLink>
<MtouchArch>x86_64</MtouchArch>
<RuntimeIdentifier>iossimulator-x64</RuntimeIdentifier>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhone' ">
<DebugType>pdbonly</DebugType>
Expand All @@ -37,23 +30,13 @@
<CodesignProvision>BMM App Siri Intents Provisioning Profile</CodesignProvision>
<OutputPath>bin\iPhone\Release</OutputPath>
<WarningLevel>4</WarningLevel>
<MtouchUseLlvm>true</MtouchUseLlvm>
<MtouchFloat32>true</MtouchFloat32>
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
<MtouchLink>SdkOnly</MtouchLink>
<MtouchArch>ARM64</MtouchArch>
<RuntimeIdentifier>ios-arm64</RuntimeIdentifier>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|iPhoneSimulator' ">
<DebugType>pdbonly</DebugType>
<Optimize>true</Optimize>
<OutputPath>bin\iPhoneSimulator\Release</OutputPath>
<WarningLevel>4</WarningLevel>
<CodesignKey>iPhone Developer</CodesignKey>
<MtouchNoSymbolStrip>true</MtouchNoSymbolStrip>
<MtouchLink>None</MtouchLink>
<MtouchArch>x86_64</MtouchArch>
<RuntimeIdentifier>iossimulator-x64</RuntimeIdentifier>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|iPhone' ">
<DebugType>full</DebugType>
Expand All @@ -62,16 +45,6 @@
<DefineConstants>DEBUG;</DefineConstants>
<WarningLevel>4</WarningLevel>
<CodesignKey>iPhone Developer</CodesignKey>
<MtouchDebug>true</MtouchDebug>
<_BundlerDebug>false</_BundlerDebug>
<MtouchNoSymbolStrip>true</MtouchNoSymbolStrip>
<MtouchFastDev>true</MtouchFastDev>
<MtouchFloat32>true</MtouchFloat32>
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
<IOSDebuggerPort>47530</IOSDebuggerPort>
<MtouchLink>SdkOnly</MtouchLink>
<MtouchArch>ARM64</MtouchArch>
<RuntimeIdentifier>ios-arm64</RuntimeIdentifier>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'UITests|iPhone' ">
<DebugType>full</DebugType>
Expand All @@ -81,15 +54,5 @@
<OutputPath>bin\iPhone\Debug</OutputPath>
<DefineConstants>DEBUG;</DefineConstants>
<WarningLevel>4</WarningLevel>
<MtouchDebug>true</MtouchDebug>
<_BundlerDebug>false</_BundlerDebug>
<MtouchNoSymbolStrip>true</MtouchNoSymbolStrip>
<MtouchFastDev>true</MtouchFastDev>
<MtouchFloat32>true</MtouchFloat32>
<CodesignEntitlements>Entitlements.plist</CodesignEntitlements>
<IOSDebuggerPort>47530</IOSDebuggerPort>
<MtouchLink>SdkOnly</MtouchLink>
<MtouchArch>ARM64</MtouchArch>
<RuntimeIdentifier>ios-arm64</RuntimeIdentifier>
</PropertyGroup>
</Project>
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ public partial class AchievementsCollectionViewCell : MvxCollectionViewCell
public static readonly UINib Nib = UINib.FromName(nameof(AchievementsCollectionViewCell), NSBundle.MainBundle);
private string _imagePath;

public AchievementsCollectionViewCell(IntPtr handle) : base(Key, handle)
public AchievementsCollectionViewCell(ObjCRuntime.NativeHandle handle) : base(Key, handle)
{
this.DelayBind(() =>
{
Expand Down
Loading

0 comments on commit 8700698

Please sign in to comment.