Проблема с библиотекой AndroidViewAnimation на физическом устройстве - PullRequest
0 голосов
/ 12 июля 2020

Привет, я пытаюсь использовать эту библиотеку https://github.com/daimajia/AndroidViewAnimations

Я добавил зависимости в библиотеку для приложения build.gradle. Вот исходный код MainActivity. java



import android.media.MediaPlayer;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;
import android.widget.ImageView;

import androidx.appcompat.app.AppCompatActivity;

import com.daimajia.androidanimations.library.Techniques;
import com.daimajia.androidanimations.library.YoYo;

import java.util.Random;

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Log.d("Main Activity", "onCreate: starts");
        Button diceButton =  findViewById(R.id.dicebutton);
        final ImageView firstImageView =  findViewById(R.id.image1);
        final ImageView secondImageView = findViewById(R.id.image2);
        final int[] diceImages = {R.drawable.dice1, R.drawable.dice2, R.drawable.dice3, R.drawable.dice4
                , R.drawable.dice5, R.drawable.dice6};

        final MediaPlayer mediaPlayer = MediaPlayer.create(this, R.raw.dice_sound);


        diceButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                int bound = diceImages.length;
                int firstRandomValue = getRandomNumber(bound);
                int secondRandomValue = getRandomNumber(bound);


                firstImageView.setImageResource(diceImages[firstRandomValue]);
                secondImageView.setImageResource(diceImages[secondRandomValue]);

              
                YoYo.with(Techniques.Shake).duration(1500).playOn(firstImageView);
                YoYo.with(Techniques.Shake).duration(1500).playOn(secondImageView);

                mediaPlayer.start();

            }
        });

    }

    private int getRandomNumber(int bound) {
        Random random = new Random();
        return random.nextInt(bound);
    }
}

Приложение работает правильно, и анимация работает в ImageView после нажатия кнопки в Android Emulator. Физическое устройство также запускает приложение, но анимация из класса YoYo не работает. Смартфон LGV30 Android P ie 9.0.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...