Привет, друг! В своем проекте я использую рекламные баннеры и рекламные баннеры. Я не хочу, чтобы пользователи недействительно нажимали на мои объявления, что теперь приводит к приостановке аккаунта. Я хочу, если пользователь нажал на мои объявления, следующее объявление будет показано через два часа, в противном случаеобъявление будет показываться всегда! Я не знаю, какую логику я использовал для предотвращения недействительных кликов, вот мой код, и, пожалуйста, скажите мне, как отложить показ объявлений на следующие 2 часа, если пользователь нажал на объявление:
package bible.swordof.God;
import android.content.Intent;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.graphics.Color;
import android.os.Bundle;
import android.support.design.widget.NavigationView;
import android.support.v4.app.Fragment;
import android.support.v4.view.GravityCompat;
import android.support.v4.view.MenuItemCompat;
import android.support.v4.widget.DrawerLayout;
import android.support.v7.app.ActionBarDrawerToggle;
import android.support.v7.app.AppCompatActivity;
import android.support.v7.widget.SearchView;
import android.support.v7.widget.Toolbar;
import android.text.TextUtils;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.widget.AdapterView;
import android.widget.GridView;
import android.widget.LinearLayout;
import android.widget.TextView;
import android.widget.Toast;
import com.google.android.gms.ads.AdListener;
import com.google.android.gms.ads.AdRequest;
import com.google.android.gms.ads.AdSize;
import com.google.android.gms.ads.AdView;
import com.google.android.gms.ads.InterstitialAd;
import com.google.android.gms.ads.MobileAds;
import java.util.ArrayList;
public class Chapters extends AppCompatActivity implements NavigationView.OnNavigationItemSelectedListener {
private GridView listView;
private ArrayList<String> stringArrayList;
private ChapterAdopter adapter;
private DatabaseHelper mDBHelper;
private SQLiteDatabase mDb;
private int booknumber;
private String bookname;
TextView setbookname;
LinearLayout layout;
private InterstitialAd interstitialAd;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_chapters);
Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
setbookname = (TextView) findViewById(R.id.bookname);
Intent mIntent = getIntent();
booknumber = mIntent.getIntExtra("booknumber", 0);
bookname = mIntent.getStringExtra("bookname");
layout = findViewById(R.id.nightmode);
interstitialAd = new InterstitialAd(this);
interstitialAd.setAdUnitId("ca-app-pub-3940256099942544/1033173712");
final AdRequest adRequest = new AdRequest.Builder().build();
interstitialAd.loadAd(adRequest);
toolbar.setTitle(bookname.toString());
setSupportActionBar(toolbar);
if (getSupportActionBar() != null) {
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
getSupportActionBar().setDisplayShowHomeEnabled(true);
}
//Toast.makeText(this, ""+booknumber, Toast.LENGTH_SHORT).show();
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
ActionBarDrawerToggle toggle = new ActionBarDrawerToggle(
this, drawer, toolbar, R.string.navigation_drawer_open, R.string.navigation_drawer_close);
drawer.addDrawerListener(toggle);
toggle.syncState();
NavigationView navigationView = (NavigationView) findViewById(R.id.nav_view);
navigationView.setNavigationItemSelectedListener(this);
setData();
listView = findViewById(R.id.list);
adapter = new ChapterAdopter(Chapters.this, R.layout.booknumber, stringArrayList);
listView.setAdapter(adapter);
final Intent intent=new Intent(Chapters.this,Verse.class);
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
Object o =listView.getItemAtPosition(position);
String convert=String.valueOf(o);
Integer chapternumber=Integer.valueOf(convert);
Toast.makeText(Chapters.this, ""+chapternumber, Toast.LENGTH_SHORT).show();
intent.putExtra("Booknumber",booknumber);
intent.putExtra("Chapternumber",chapternumber);
intent.putExtra("Bookname",bookname);
if(interstitialAd.isLoaded()){
interstitialAd.show();
}else{
startActivity(intent);
}
}
});
interstitialAd.setAdListener(new AdListener() {
@Override
public void onAdClosed() {
super.onAdClosed();
startActivity(intent);
interstitialAd.loadAd(new AdRequest.Builder().build());
}
});
}
@Override
public boolean onOptionsItemSelected(MenuItem item) {
// handle arrow click here
if (item.getItemId() == android.R.id.home) {
onBackPressed();
}
return super.onOptionsItemSelected(item);
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
getMenuInflater().inflate(R.menu.main, menu);
MenuItem myActionMenuItem = menu.findItem(R.id.action_search);
final SearchView searchView = (SearchView) MenuItemCompat.getActionView(myActionMenuItem);
searchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String query) {
return false;
}
@Override
public boolean onQueryTextChange(String newText) {
if (TextUtils.isEmpty(newText)) {
adapter.filter("");
listView.clearTextFilter();
} else {
adapter.filter(newText);
}
return true;
}
});
return true;
}
private void setData() {
try {
stringArrayList = new ArrayList<>();
mDBHelper = new DatabaseHelper(this);
mDb = mDBHelper.getReadableDatabase();
Cursor cursor = mDb.rawQuery("select DISTINCT c from t_asv where b=" + booknumber, new String[]{});
if (cursor != null && cursor.getCount() > 0) {
if (cursor.moveToFirst()) {
do {
stringArrayList.add(cursor.getString(0));
} while (cursor.moveToNext());
}
}
}
catch (Exception e){
Toast.makeText(this, ""+e, Toast.LENGTH_SHORT).show();
}
}
@Override
public boolean onNavigationItemSelected(MenuItem item) {
// Handle navigation view item clicks here.
Fragment fragment;
int id = item.getItemId();
if (id == R.id.home) {
Intent intent=new Intent(this,MainActivity.class);
startActivity(intent);
} else if (id == R.id.favoruite)
{ Intent intent=new Intent(this,Favourite.class);
startActivity(intent);
} else if (id == R.id.setting) {
Intent intent=new Intent(this,Settings.class);
startActivity(intent);
} else if (id == R.id.alert) {
Intent intent=new Intent(this,Reminder.class);
startActivity(intent);
}
else if (id == R.id.privacypolicy) {
Intent intent = new Intent(this, PrivacyPolicy.class);
startActivity(intent);
}
else if (id == R.id.aboutus) {
Intent intent = new Intent(this,Aboutus.class);
startActivity(intent);
}
else if (id == R.id.nav_send) {
}
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
drawer.closeDrawer(GravityCompat.START);
return true;
}
}