Crea una pantalla de bienvenida animada usando marcos en Android

Así que este es el trato, he buscado todas las preguntas y enlaces en línea, pero ninguna es útil. Tengo 120 cuadros de una animación en formato .jpg para mi pantalla de inicio. Entiendo que los jpegs se convierten en mapas de bits en la memoria, por eso obtengo un OutOfMemoryError. El número máximo de fotogramas que puedo animar es 10. ¿Hay alguna forma de hacerlo fotograma a fotograma o debería intentar algo más? Aquí está mi código:

    final AnimationDrawable anim = new AnimationDrawable();
    anim.setOneShot(true);

    for (int i = 1; i <= 120; i++) 
    {
        Drawable logo = getResources().getDrawable(getResources()
                  .getIdentifier("l"+i, "drawable", getPackageName()));

        anim.addFrame(logo, 50);
        if (i % 3 == 0)
        {
            System.gc();
        }
    }

    ImageView myImageView = (ImageView) findViewById(R.id.SplashImageView);
    myImageView.setBackgroundDrawable(anim);
    myImageView.post(new Runnable()
    {
       public void run()
       {
          anim.start();
       }
    });

He colocado los 120 jpegs debajo de la carpeta dibujable con un prefijo "l" (por ejemplo, l1, l2, etc.). Hago recolección de basura cada 3 jpegs, pero eso no hará nada.

Respuestas a la pregunta(3)

Su respuesta a la pregunta