title: Why does chrome.extension.getBackgroundPage() return null?
body: <p>I have a <strong>manifest.json</strong> file that looks like this:</p>
  
  <pre><code>{
    "name": "Zend Debugger Extension",
    "version": "0.1",
    "background_page": "background.html",
    "permissions": [
      "cookies", "tabs", "http://*/*", "https://*/*"
    ],
    "browser_action": {
      "default_title": "Launch Zend Debugger",
      "default_icon": "icon.png",
      "popup": "popup.html"
    }
  }
  </code></pre>
  
  <p>Here's my <strong>background.html</strong>:</p>
  
  <pre><code>&lt;html&gt;
      &lt;script&gt;
      function testRequest() {
          console.log("test Request received");
      }
      &lt;/script&gt;
  &lt;/html&gt;
  </code></pre>
  
  <p>And my <strong>popup.html</strong>:</p>
  
  <pre><code>&lt;script&gt;
  function debug(target) {
      if (target.id == 'thisPage') {
          console.log('sending request');
          chrome.extension.getBackgroundPage().testRequest();
      }
  }
  &lt;/script&gt;
  
  &lt;div onclick="debug(this)" id="thisPage"&gt;Current Page&lt;/div&gt;
  </code></pre>
  
  <p>However, the <strong>background.html</strong> page doesn't seem to be accessible. I'm getting this error:</p>
  
  <pre><code>Uncaught TypeError: Cannot call method 'testRequest' of null
  </code></pre>
  
  <p>When I inspect <code>chrome.extension.getBackgroundPage()</code> I get a null value. I'm thinking I have made a mistake in my manifest file, but I can't see what I've done wrong.</p>
  
  <p>Thanks.</p>