diff --git a/src/Controls/samples/Controls.Sample/Pages/Controls/ImagePage.xaml b/src/Controls/samples/Controls.Sample/Pages/Controls/ImagePage.xaml
index 5cb17014bc48..02e27ffdb81b 100644
--- a/src/Controls/samples/Controls.Sample/Pages/Controls/ImagePage.xaml
+++ b/src/Controls/samples/Controls.Sample/Pages/Controls/ImagePage.xaml
@@ -48,6 +48,16 @@
+
+
+
diff --git a/src/Core/src/Handlers/Image/ImageHandler.Android.cs b/src/Core/src/Handlers/Image/ImageHandler.Android.cs
index bc0630ac8910..96e4354feec2 100644
--- a/src/Core/src/Handlers/Image/ImageHandler.Android.cs
+++ b/src/Core/src/Handlers/Image/ImageHandler.Android.cs
@@ -48,8 +48,13 @@ public static void MapIsAnimationPlaying(IImageHandler handler, IImage image) =>
public static void MapSource(IImageHandler handler, IImage image) =>
MapSourceAsync(handler, image).FireAndForget(handler);
- public static Task MapSourceAsync(IImageHandler handler, IImage image) =>
- handler.SourceLoader.UpdateImageSourceAsync();
+ public static Task MapSourceAsync(IImageHandler handler, IImage image)
+ {
+ return handler
+ .SourceLoader
+ .UpdateImageSourceAsync()
+ .ContinueWith((action) => handler.UpdateValue(nameof(IImage.IsAnimationPlaying)));
+ }
public override void PlatformArrange(Graphics.Rect frame)
{
diff --git a/src/Core/tests/DeviceTests/Handlers/Image/ImageHandlerTests.cs b/src/Core/tests/DeviceTests/Handlers/Image/ImageHandlerTests.cs
index dabce0ffa659..12930267d890 100644
--- a/src/Core/tests/DeviceTests/Handlers/Image/ImageHandlerTests.cs
+++ b/src/Core/tests/DeviceTests/Handlers/Image/ImageHandlerTests.cs
@@ -111,8 +111,8 @@ await InvokeOnMainThreadAsync(async () =>
}
[Theory(
-#if __IOS__ || __ANDROID__
- Skip = "Animated GIFs are not yet supported on iOS. Test failing on ANDROID"
+#if __ANDROID_23__ || __IOS__
+ Skip = "Animated GIFs are not yet supported."
#endif
)]
[InlineData("animated_heart.gif", true)]