diff --git a/include/android/SkAnimatedImage.h b/include/android/SkAnimatedImage.h
index dc1ce0a..4a61a8b 100644
--- a/include/android/SkAnimatedImage.h
+++ b/include/android/SkAnimatedImage.h
@@ -99,6 +99,13 @@
      */
     void setRepetitionCount(int count);
 
+    /**
+     *  Return the currently set repetition count.
+     */
+    int getRepetitionCount() const {
+        return fRepetitionCount;
+    }
+
 protected:
     SkRect onGetBounds() override;
     void onDraw(SkCanvas*) override;
diff --git a/tests/AnimatedImageTest.cpp b/tests/AnimatedImageTest.cpp
index cbbef2d..95d7fc6 100644
--- a/tests/AnimatedImageTest.cpp
+++ b/tests/AnimatedImageTest.cpp
@@ -82,6 +82,8 @@
             continue;
         }
 
+        REPORTER_ASSERT(r, defaultRepetitionCount == animatedImage->getRepetitionCount());
+
         auto testDraw = [r, &frames, &imageInfo, file](const sk_sp<SkAnimatedImage>& animatedImage,
                                                        int expectedFrame) {
             SkBitmap test;
@@ -216,6 +218,8 @@
                         SkCodec::MakeFromData(data)));
             animatedImage->start();
             animatedImage->setRepetitionCount(loopCount);
+            REPORTER_ASSERT(r, animatedImage->getRepetitionCount() == loopCount);
+
             for (int loops = 0; loops <= loopCount; loops++) {
                 REPORTER_ASSERT(r, animatedImage->isRunning());
                 REPORTER_ASSERT(r, !animatedImage->isFinished());
