Adding outstanding issues.
authorMounir Lamouri <mounir.lamouri@gmail.com>
Mon, 05 Nov 2012 17:44:13 +0000
changeset 272 130d9da749be
parent 271 60e739325ffd
child 273 3237ca9d12c3
Adding outstanding issues.
network-api/Overview.html
--- a/network-api/Overview.html	Mon Nov 05 17:19:15 2012 +0000
+++ b/network-api/Overview.html	Mon Nov 05 17:44:13 2012 +0000
@@ -81,6 +81,46 @@
           </ul>
         </p>
       </section>
+
+      <section>
+        <h2>Outstanding issues</h2>
+        <p>
+          The specification currently request the <dfn>user agent</dfn> to show
+          two properties: <code>bandwidth</code> and <code>metered</code>. Both
+          are currently facing some disagreements.
+        </p>
+        <p>
+          <code>bandwidth</code> is told to be hard to implement, can be quite
+          power-consuming to keep it up-to-date and its value might be unrelated
+          to the actual connection quality but could be affected by the server.
+          <br>
+          A solution to fix this would be to return non absolute values that
+          couldn't be easily abused and would be more simple to produce for the
+          <dfn>user agent</dfn>. For example, having a set of values like
+          <code>very-slow</code>, <code>slow</code>, <code>fast</code> and
+          <code>very-fast</code>.<br>
+          Another solution would be to have only values like
+          <code>very-slow</code>, <code>slow</code> and the empty string.
+        </p>
+        <p>
+          <code>metered</code> is also told to be hard to implement because
+          there is currently no standard way for the OS to know if the current
+          connection is metered but the idea of the specification is to leave
+          the implementation details to the <dfn>user agent</dfn>. That way, the
+          attribute could return a value based on a heuristic, on knowledge of
+          the current connection status or even by directly asking the user for
+          the information.<br>
+          It is interesting to point that Android 4.1 and Windows 8 both have a
+          way to check if the current connection is metered. Android is using a
+          boolean (isActiveNetworkMetered()) while Windows 8 allow the developer
+          to ask for different information (NetworkCostType,
+          ApproachingDataLimit, OverDataLimit, Roaming).
+          <!--
+            Android: https://developer.android.com/reference/android/net/ConnectivityManager.html#isActiveNetworkMetered%28%29
+            Windows: http://msdn.microsoft.com/en-us/library/windows/apps/hh465399.aspx#adapt
+          -->
+        </p>
+      </section>
     </section>
 
     <section id='conformance'>