Line 237 is the Log.d() method call. 'extra' appears to be null (I cannot recreate the problem locally to verify 100%). More digging in the code and it looks to me like 'extra' is set when the configuration is read from AdWhirl and the only way it could be null is if there is an error reading the config. If that were the case I suppose it could result in an NPE here. A simple fix would be:
public void rotateThreadedDelayed() {
int cycleTime = 30;
if( extra != null ) {
cycleTime = extra.cycleTime;
}
Log.d(AdWhirlUtil.ADWHIRL, "Will call rotateAd() in " + cycleTime
+ " seconds");
scheduler.schedule(new RotateAdRunnable(this), cycleTime,
TimeUnit.SECONDS);
}