を見つける:プログラムで、私は具体的には、プログラム的にAndroidデバイスのためのシステム情報を見つけようとしていますAndroidのシステム情報
- RAM
- CPU速度など
- #コア、アーキテクチャ、
この情報を指定するAndroidクラスはありますか。私はandroid.boardライブラリを使用していますが、それは私が望むすべてを持っていないようです。
を見つける:プログラムで、私は具体的には、プログラム的にAndroidデバイスのためのシステム情報を見つけようとしていますAndroidのシステム情報
この情報を指定するAndroidクラスはありますか。私はandroid.boardライブラリを使用していますが、それは私が望むすべてを持っていないようです。
から入手することができますので、このスレッド缶を訪れる他の人がステップを知るようになる:
1)parse/proc/meminfoコマンド。あなたはここに参照コードを見つけることができます。 Get Memory Usage in Android 2)コードの下に使用して、現在のRAMを取得:
MemoryInfo mi = new MemoryInfo();
ActivityManager activityManager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
activityManager.getMemoryInfo(mi);
long availableMegs = mi.availMem/1048576L;
注:ことに注意してください - 私たちは一度だけ、合計メモリを計算する必要があります。コール・ポイント1はコード内で1回だけ使用し、その後はポイント2のコードを繰り返し呼び出すことができます。
/proc/cpuinfo
ファイルから必要な情報のほとんどを得ることができます。ここでは、そのファイルをロードし、解析する方法についてのチュートリアルです:http://www.roman10.net/how-to-get-cpu-information-on-android/
さらにRAMについての情報は私が何をしたか、あなたを教えてみましょう/proc/meminfo
ファイル
アガルワルの答えは非常に役に立ちました。
主な活動から:
public class MyActivity extends Activity {
...
public void onCreate(Bundle savedInstanceState) {
...
MySystemUtils systemUtils = new MySystemUtils(this); // initializations
...
}
}
SystemUtilsファイルでは、私が活動して空きメモリを計算しますが、ユーティリティがファイルシステムにアプリケーションコンテキストを渡していないよので、それを少し変更する必要がありました:
MySystemUtils (Context appContext) { // called once from within onCreate
MemoryInfo mi = new MemoryInfo();
ActivityManager activityManager = ActivityManager)appContext.getSystemService(Activity.ACTIVITY_SERVICE);
activityManager.getMemoryInfo(mi);
long availableMegs = mi.availMem/1048576L;
}
現在のデバイスのRAMサイズを取得するためのコードスニペットです。
ActivityManager actManager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);
MemoryInfo memInfo = new ActivityManager.MemoryInfo();
actManager.getMemoryInfo(memInfo);
long totalMemory = memInfo.totalMem;
meminfoは完全にインストールされたラムを提供しません。使用済みのラムについての情報を提供します。熱く使用されます。その答えは正しいわけではありません。 – drdrej