Я сделал приложение, в котором есть валюта приложения (например, монеты в играх), и реализовал в нем видеорекламу с вознаграждением. У меня есть несколько элементов активности, которые может загрузить пользователь. Я хочу уменьшить валюту приложения, когда пользователь нажимает, чтобы загрузить элементы, и когда монеты становятся равными 0, я хочу предупредить пользователя, чтобы он посмотрел видео с наградой, чтобы получить несколько монет. Как это может быть сделано?
@eXodiquas Я реализовал только видеорекламу с наградами. ничего больше. Моя проблема в том, что я хочу уменьшить количество монет на сумму (скажем, 5), когда пользователь пытается что-то загрузить из приложения.




Как отметил пользователь, нам нужна дополнительная информация, чтобы помочь вам решить эту проблему.
Если валюта - это int variable внутри операции, каждый раз, когда пользователь нажимает кнопку «купить», вы уменьшаете вариацию, скажем, валюта = валюта - 5 и if (currency<=0) { [show the dialog to watch an ad] }, если валюта хранится в базе данных, как и должно быть, вы получаете значение валюты для этого идентификатора игрока, уменьшите его на значение по вашему выбору и обновите строку с новым значением.
Мне удалось реализовать эту функциональность в своем приложении. Вот как я это сделал
private TextView mText;
private int coinCount;
mText = (TextView) findViewById(R.id.money);
coinCount = 0;
mText.setText(" " + coinCount);
Button button = (Button) findViewById(R.id.buynow);
button.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (coinCount <= 29) {
//if (coinCount <30) {
new MaterialStyledDialog.Builder(MainActivity.this)
.setTitle("Not Enough Coins")
.setDescription("Watch the Ad To Get 10 coins")
.setIcon(R.drawable.ic_money)
.withIconAnimation(true)
.withDialogAnimation(true)
.withDarkerOverlay(true)
.setHeaderColor(R.color.color)
.setPositiveText("Get some coins")
.onPositive(new MaterialDialog.SingleButtonCallback() {
@Override
public void onClick(@NonNull MaterialDialog dialog, @NonNull DialogAction which) {
mRewardedVideoAd.show();
}
})
.show();
} else {
coinCount = coinCount - 30;
mText.setText(String.valueOf(coinCount));
}
}
});
На этот вопрос невозможно ответить без дополнительной информации. Что ты делал до сих пор? Вы можете показать нам код? Вы можете объяснить, в чем именно заключается ваша проблема?