próbuję ustanowić runnable które można załadować ogłoszenia każdym odstępie 5 sekund (oczywiście 5 sek jest zbyt duża, to tylko dla celów testowania)Jak zatrzymać działanie, gdy aplikacja przechodzi w tło?
Oto mój kod:
package com.admobsdk_dfp_handler;
import com.google.ads.*;
import com.google.ads.doubleclick.*;
import android.os.Bundle;
import android.os.Handler;
import android.app.Activity;
import android.view.Menu;
import android.widget.RelativeLayout;
public class AdMobSDK_DFP_Handler extends Activity {
private DfpAdView adView;
private Handler handler = new Handler();
private Runnable runnable = new Runnable() {
public void run() {
adView.loadAd(new AdRequest());
handler.postDelayed(this, 5000);
}
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_ad_mob_sdk__dfp__handler);
adView = new DfpAdView(
this,
AdSize.BANNER,
AD_UNIT_ID);
RelativeLayout layout = (RelativeLayout) findViewById(R.id.mainLayout);
layout.addView(adView);
adView.loadAd(new AdRequest());
handler.postDelayed(runnable, 5000);
};
@Override
protected void onDestroy() {
handler.removeCallbacks(runnable);
super.onDestroy();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.activity_ad_mob_sdk__dfp__handler,
menu);
return true;
}
}
Jeśli Naciskam przycisk strony głównej, aby ukryć aplikację na tle. Działanie jest nadal wczytywane z reklamami w odstępach co 5 sekund.
Czy istnieje jakakolwiek metoda zatrzymania pracy, gdy aplikacja jest ukryta w tle? Wielkie dzięki.
BTW, aplikacja działa idealnie po usunięciu handler.postDelayed (runnable , 5000) w onCreate(), czy to dlatego, że po uruchomieniu aplikacji uruchomi się metoda run()? Tak, że nie trzeba ponownie wywoływać programu obsługi z onCreate()? –
po wywołaniu '' onCreate() '' przez system Android, następnym będzie '' onStart() '', a następnie '' onResume() ''. Możesz to zobaczyć tutaj, http://developer.android.com/training/basics/activity-lifecycle/starting.html –
co, jeśli przeniósł się do innej działalności? Jak on to robi? – tony9099