2015-03-25 45 views

回答

0
public void getCpuInfo() { 
    try { 
     Process proc = Runtime.getRuntime().exec("cat /proc/cpuinfo"); 
     InputStream is = proc.getInputStream(); 
     TextView tv = (TextView)findViewById(R.id.tvcmd); 
     tv.setText(getStringFromInputStream(is)); 
    } 
    catch (IOException e) { 
     Log.e(TAG, "------ getCpuInfo " + e.getMessage()); 
    } 
} 

public void getMemoryInfo() { 
    try { 
     Process proc = Runtime.getRuntime().exec("cat /proc/meminfo"); 
     InputStream is = proc.getInputStream(); 
     TextView tv = (TextView)findViewById(R.id.tvcmd); 
     tv.setText(getStringFromInputStream(is)); 
    } 
    catch (IOException e) { 
     Log.e(TAG, "------ getMemoryInfo " + e.getMessage()); 
    } 
} 

private static String getStringFromInputStream(InputStream is) { 
    StringBuilder sb = new StringBuilder(); 
    BufferedReader br = new BufferedReader(new InputStreamReader(is)); 
    String line = null; 

    try { 
     while((line = br.readLine()) != null) { 
      sb.append(line); 
      sb.append("\n"); 
     } 
    } 
    catch (IOException e) { 
     Log.e(TAG, "------ getStringFromInputStream " + e.getMessage()); 
    } 
    finally { 
     if(br != null) { 
      try { 
       br.close(); 
      } 
      catch (IOException e) { 
       Log.e(TAG, "------ getStringFromInputStream " + e.getMessage()); 
      } 
     } 
    }  

    return sb.toString(); 
} 

如果你想在像素的显示尺寸可以使用的getSize:

Display display = getWindowManager().getDefaultDisplay(); 
Point size = new Point(); 
display.getSize(size); 
int width = size.x; 
int height = size.y; 

这种方法是在Android的API 13推出,因此,如果你想为以前的API用来获取显示指标:

DisplayMetrics displaymetrics = new DisplayMetrics(); 
getWindowManager().getDefaultDisplay().getMetrics(displaymetrics); 
int height = displaymetrics.heightPixels; 
int wwidth = displaymetrics.widthPixels; 

如果您不在活动中,可以通过WINDOW_SERVICE获取默认显示。另外,请务必在AndroidManifest.xml中将minSdkVersion设置为至少4,以启用对display.getWidth()的调用。

WindowManager wm = (WindowManager) ctx.getSystemService(Context.WINDOW_SERVICE); 
Display display = wm.getDefaultDisplay(); 
int width = display.getWidth(); // deprecated 
int height = display.getHeight(); 

希望它能帮助你。我不知道任何库或api。

+0

确定:)谢谢你,对于分辨率我不知道为什么不显示完全1776 * 1080而不是1900 * 1080 – 2015-03-25 08:29:35

+0

你能告诉我你使用的是什么SDK版本。如果这个答案可以帮助你,请接受它来帮助别人。 – Soham 2015-03-25 09:11:19