Article downloading now runs in a separate service started at boot and run every 20 seconds (for debugging) thereafter. (The cycle period is set in dimens.xml.) When articles are received, a broadcast is sent. To receive the broadcast and get the new articles into your main activity for display, see the code starting at line 71 of DatabaseActivity:
 private BroadcastReceiver testReceiver = new BroadcastReceiver() {
  @Override
  public void onReceive(Context context, Intent intent) {
   if (intent.getIntExtra("resultCode", RESULT_CANCELED) == RESULT_OK) {
    toast("There are " + intent.getIntExtra("howMany", -1) + "  new articles, oldest=" + intent.getIntExtra("oldest", -1) + ".");
   }
  }
 };

Background downloading is turned off when there's no network connectivity. You can turn off the timer, stopping the background downloading entirely, using the cancelAlarm() function in DatabaseActivity. However, at next boot, everything will start again, so we should have a persistent preference to enable/disable background downloading and I'll have to find a way to get to it. (If it's hard to do, we can always communicate through the database.)
Merge branch 'master' of github.com:davidschachter/WestportNow2