User Tools

Site Tools


sample_code:get_device_specs

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Next revision
Previous revision
Next revision Both sides next revision
sample_code:get_device_specs [2015/01/17 20:39]
stevegarman created
sample_code:get_device_specs [2015/12/18 21:50]
administrator remove confusing comment
Line 8: Line 8:
  
 <code JavaScript getDeviceSpecs.js> <code JavaScript getDeviceSpecs.js>
 +var allBuilds = JSON.parse('{'+
 +'"1":{"level":1,"codename":"(no code name)","version":"1.0"}, ' +
 +'"2":{"level":2,"codename":"(no code name)","version":"1.1"} , ' +
 +'"3":{"level":3,"codename":"Cupcake","version":"1.5"}, ' +
 +'"4":{"level":4,"codename":"Donut","version":"1.6"}, ' +
 +'"5":{"level":5,"codename":"Eclair","version":"2.0"},  ' +
 +'"6":{"level":6,"codename":"Eclair","version":"2.0.1"}, ' + 
 +'"7":{"level":7,"codename":"Eclair","version":"2.1"}, ' + 
 +' "8":{"level":8,"codename":"Froyo","version":"2.2.x"}, ' + 
 +' "9":{"level":9,"codename":"Gingerbread","version":"2.3 - 2.3.2"}, ' + 
 +' "10":{"level":10,"codename":"Gingerbread","version":"2.3.3 - 2.3.7"}, ' + 
 +' "11":{"level":11,"codename":"Honeycomb","version":"3.0"}, ' + 
 +' "12":{"level":12,"codename":"Honeycomb","version":"3.1"}, ' + 
 +' "13":{"level":13,"codename":"Honeycomb","version":"3.2.x"}, ' + 
 +' "14":{"level":14,"codename":"Ice Cream Sandwich","version":"4.0.1 - 4.0.2"}, ' + 
 +' "15":{"level":15,"codename":"Ice Cream Sandwich","version":"4.0.3 - 4.0.4"}, ' + 
 +' "16":{"level":16,"codename":"Jelly Bean","version":"4.1.x"}, ' + 
 +' "17":{"level":17,"codename":"Jelly Bean","version":"4.2.x"}, ' + 
 +' "18":{"level":18,"codename":"Jelly Bean","version":"4.3.x"}, ' + 
 +' "19":{"level":19,"codename":"KitKat","version":"4.4 - 4.4.4"}, ' + 
 +' "20":{"level":20,"codename":"K or L","version":"4 or 5"}, ' + 
 +' "21":{"level":21,"codename":"Lollipop","version":"5.0"}, ' + 
 +' "22":{"level":22,"codename":"Lollipop","version":"5.1"}, ' + 
 +' "23":{"level":23,"codename":"Marshmallow","version":"6.0"} ' + 
 +' }' );
 +
 +var osObj = allBuilds[app.GetOSVersion()]
 +try
 +{
 +    var osInfo = "Android "+ osObj.version +" (" +
 +     osObj.codename + ")  API level " + 
 +     osObj.level
 +}
 +catch(err)
 +{
 +    var osInfo = app.GetOSVersion();
 +}
  
 //Called when application is started. //Called when application is started.
 function OnStart() function OnStart()
 { {
 +
     //Create a layout with objects vertically centered.     //Create a layout with objects vertically centered.
-    lay = app.CreateLayout( "linear", "VCenter,FillXY" );    +    var lay = app.CreateLayout( "linear", "VCenter,FillXY" );    
  
     //Create a button and add it to layout.     //Create a button and add it to layout.
-    btn = app.CreateButton( "Test" );+    var btn = app.CreateButton( "Test" );
     btn.SetOnTouch(btn_OnTouch);     btn.SetOnTouch(btn_OnTouch);
     lay.AddChild( btn );     lay.AddChild( btn );
Line 36: Line 74:
   var model = app.GetModel();   var model = app.GetModel();
   var tablet = app.IsTablet();   var tablet = app.IsTablet();
 +  var fromapk = ( app.GetAppPath() == "/Assets" ) 
 +  var dsversion = app.GetDSVersion();
 //Get screen dimensions.  //Get screen dimensions. 
   var sw = app.GetScreenWidth();    var sw = app.GetScreenWidth(); 
Line 43: Line 83:
   var dw = app.GetDisplayWidth();    var dw = app.GetDisplayWidth(); 
   var dh = app.GetDisplayHeight();   var dh = app.GetDisplayHeight();
 +//Get drive details 
 +  var intfld = app.GetInternalFolder(); 
 +  var extfld = app.GetExternalFolder(); 
 +  var intspace = app.GetFreeSpace("internal"); 
 +  var extspace = app.GetFreeSpace("external"); 
 +  
 //specs are formatted as a comment so we can paste //specs are formatted as a comment so we can paste
 //them somewhere convenient //them somewhere convenient
-  var s = "/*\nos=" + os+"\n"++  try {os=osInfo;
 +  catch(err){} 
 +  var s = "/*\n"+ 
 +        "os=" + os+"\n"+
         "tablet="+ tablet + "\n"+         "tablet="+ tablet + "\n"+
         "model=" + model + "\n" +         "model=" + model + "\n" +
 +        "DroidScript=" + dsversion + "\n"+
         "screen width="+ sw + "\n" +          "screen width="+ sw + "\n" + 
         "screen height="+ sh + "\n" +          "screen height="+ sh + "\n" + 
         "screen density="+ dens + "\n" +          "screen density="+ dens + "\n" + 
         "display width="+ dw + "\n" +          "display width="+ dw + "\n" + 
-        "display height="+ dh +"\n*/"; +        "display height="+ dh +"\n" + 
 +        "internal folder=" + intfld + "\n" + 
 +        "external folder=" + extfld + "\n" + 
 +        "int free space=" + intspace + "\n" + 
 +        "ext free space=" + extspace + "\n" + 
 +     "country code="+app.GetCountryCode() +"\n"
 +"country="+app.GetCountry()+"\n"
 +     "language code="+app.GetLanguageCode() +"\n"
 +"language="+app.GetLanguage()+"\n"
 +        "*/";
    return(s);    return(s);
 } }
- 
 </code> </code>
 ===== Notes ===== ===== Notes =====
 The function getDeviceSpecs at the end of the code, can be pasted independently into a project an the string returned can be used however you see fit. The function getDeviceSpecs at the end of the code, can be pasted independently into a project an the string returned can be used however you see fit.
sample_code/get_device_specs.txt · Last modified: 2022/04/25 17:48 by stevegarman