如何让Android应用每天运行一个方法?

时间:2013-08-05 05:38:12

标签: android eclipse sharedpreferences

我需要一个广告屏幕(revmob),每天从onCreate方法调用一次。我从How do I get an Android application's method to run a method daily with Eclipse?抓住了这个想法,但由于每次调用onCreate时都会加载广告,因此无效。

我的代码是:

if(runOnceDaily()){
    revmob = RevMob.start(this, REVMOB_APP_ID);
    revmob.showFullscreen(this);
}

private boolean runOnceDaily(){
    boolean result = false;
    SharedPreferences prefs = this.getSharedPreferences(
              "com.blogspot.blog.myapp", Context.MODE_PRIVATE);
    long minStartTime = System.currentTimeMillis() - 1000*60*60*24;
    long lastTimeRan = prefs.getLong("lastTimeRan", -1);
    if (lastTimeRan >= minStartTime) {
        // a day passed.
        //also save the new 'lastTimeRan' in prefs
            result = true;
            prefs.edit().putLong("lastTimeRan", System.currentTimeMillis()).commit();
    }
    return result;
}

2 个答案:

答案 0 :(得分:0)

您可以使用AlarmManager运行每日方法

答案 1 :(得分:0)

将Alarmmanager与BroadcastReceiver类一起使用。 在接收器的OnReceive方法中调用需要每天运行的方法。 这种方法非常简单。