Petmory – Pet Memory Game for Android

free memory game for android

This is a free memory game for Android for young and old alike. The game features cards which are displaying images of cute animals.

About Memory

The goal of the classic memory game is to turn over two cards and try to find pairs – meaning two cards that display the exact same image. If you did not succeed, the cards will be covered again.
This Android version is no different: Try to find pairs until all cards are uncovered to win the game.

Have fun and train your memory.

Features of Petmory

  • adjustable difficulty (5 Level)
  • cute cards with animal images
  • Highscore
  • Languages: currently only English
  • Download Memory for Android

    Download Petmory

    Screenshots of the Game

    Click images for full size screenshots of the game.

    2 thoughts on “Petmory – Pet Memory Game for Android

    1. Great Application, Just want to ask is it possible to share yr difficulty class so i can use it in my final year project? would be great if you can help!

    2. @Alaa sure, but it’s not that interesting. The difficulty is just an enum:

      public enum Difficulty {
          EASY {
              public String toString() {
                  return "Easy";
          BELOW_MEDIUM {
              public String toString() {
                  return "Below Medium";
          MEDIUM {
              public String toString() {
                  return "Medium";
          HARD {
              public String toString() {
                  return "Hard";
          ABSURD {
              public String toString() {
                  return "Absurd";

          public static Difficulty getFromInt(final int diff) {
              switch (diff) {
                  case 1:
                      return EASY;
                  case 2:
                      return BELOW_MEDIUM;
                  case 3:
                      return MEDIUM;
                  case 4:
                      return HARD;
                  case 5:
                      return ABSURD;
                      return MEDIUM;

          public static List<Difficulty> getAll() {
              final List<Difficulty> items = new ArrayList<Difficulty>();
              items.add(0, Difficulty.EASY);
              items.add(1, Difficulty.BELOW_MEDIUM);
              items.add(2, Difficulty.MEDIUM);
              items.add(3, Difficulty.HARD);
              items.add(3, Difficulty.ABSURD);
              return items;

      In the preferences activity I used a TextView to display it as well as a RatingBar to display and change the difficulty:

      RatingBar ratingBar = (RatingBar) findViewById(;
      TextView diff = (TextView) findViewById(;
              ratingBar.setOnRatingBarChangeListener(new OnRatingBarChangeListener() {
                  public void onRatingChanged(final RatingBar ratingBar,
                          final float rating, final boolean fromUser) {
                      diff.setText("Difficulty: "
                              + Difficulty.getFromInt((int) rating));
                      final SharedPreferences.Editor editor = sp.edit();
                      editor.putInt("difficulty", (int) rating);

      The preferences xml view file looks like this:

                 android:stepSize="1.0" />

      And the styles file to style the ratings bar looks like this:

          <style name="ratingBarStyle" parent="@android:style/Widget.RatingBar">
              <item name="android:progressDrawable">@drawable/ratingstars</item>
              <item name="android:minHeight">48dip</item>
              <item name="android:maxHeight">48dip</item>

      And finally the ratingstars xml file which actually defines what the rating bar should display:

      <layer-list xmlns:android="">
          <item android:id="@+android:id/background"
               android:drawable="@drawable/ic_hart_empty" />
          <item android:id="@+android:id/secondaryProgress"
               android:drawable="@drawable/ic_hart_empty" />
          <item android:id="@+android:id/progress"
               android:drawable="@drawable/ic_hart_full" />

    Leave a Reply

    Your email address will not be published.