Skip to content

Instantly share code, notes, and snippets.

@alanleard
Created December 14, 2011 02:46
Show Gist options
  • Save alanleard/1475023 to your computer and use it in GitHub Desktop.
Save alanleard/1475023 to your computer and use it in GitHub Desktop.
Network Speed Test
var win = Ti.UI.createWindow();
var start = new Date().getTime();
var c = Titanium.Network.createHTTPClient({validatesSecureCertificate:false});
c.ondatastream = function(){
//start = new Date().getTime();
};
c.onload = function()
{
Ti.API.info('IN ONLOAD ');
var size = this.responseData.length;
var end = new Date().getTime();
var time = end-start;
var kbps = Math.floor((size/time)*1000);
if(kbps<200){
Ti.App.Properties.setString('Network','edge');
} else if (kbps>200 && kbps<2000){
Ti.App.Properties.setString('Network','3g');
} else if (kbps>2000){
Ti.App.Properties.setString('Network','WiFi');
}
alert('Time:'+time+' ms\nSize:'+size+' kb\nSpeed:'+kbps+' kbps\nNetwork:'+Ti.App.Properties.getString('Network'));
};
c.onerror = function(e)
{
Ti.API.info('XHR Error ' + e.error);
};
c.open('GET', 'http://www.google.com');
c.send();
win.open();
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment