Uploaded image for project: 'Apache Cordova'
  1. Apache Cordova
  2. CB-173

Battery events not working properly on HTC Inspire running 2.2

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 1.3.0
    • 1.5.0
    • cordova-android
    • None
    • HTC Inspire, Android 2.2

    Description

      Originally reported by Ray Camden:

      Trying to get a very simple battery status app working. None of my events ever fire. According to the docs, batterystatus should fire when plugging/unplugging a device, but that doesn't trigger it either. Any ideas? HTC Inspire, Android 2.2 SDK. Code below. Note the alert in my battery status callback. I did that in case I screwed up something simple in drawStatus.

      <!DOCTYPE HTML>
      <html>
      <head>
      <meta name="viewport" content="width=320; user-scalable=no" />
      <meta http-equiv="Content-type" content="text/html; charset=utf-8">
      <title>Minimal AppLaud App</title>

      <script type="text/javascript" charset="utf-8" src="phonegap-1.3.0.js"></script>
      <script type="text/javascript" charset="utf-8">
      var status;

      var drawStatus = function(info)

      { var s = "<p><b>Battery Status</b><br/>"; s += "Level is "+info.level + "<br/>"; s += "Plugged in is "+info.isPlugged; s += "</p>"; status.innerHTML = s; }

      ;

      var battCrit = function(info)

      { navigator.notification.alert("Your battery is SUPER low!"); drawStatus(info); }

      ;

      var battLow = function(info)

      { navigator.notification.alert("Your battery is low!"); drawStatus(info); }

      ;

      var battStat = function(info)

      { alert('test'); drawStatus(info); }

      ;

      var onDeviceReady = function()

      { //listen for battery crit window.addEventListener("batterycritical", battCrit, false); window.addEventListener("batterylow", battLow, false); window.addEventListener("batterystatus", battStat, false); alert("registered..."); }

      ;

      function init()

      { document.addEventListener("deviceready", onDeviceReady, true); status = document.getElementById("status"); }


      </script>
      </head>

      <body onload="init();">

      <h2>Battery Tester</h2>

      <div id="status"></div>

      </body>
      </html>

      Attachments

        Activity

          People

            stevegill Steve Gill
            filmaj Filip Maj
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: