반응형
안드로이드(Android) CPU 버전 알아오기 |
개발환경 : window 7 64bit, Eclipse Mars, Android 4.2.2 |
현재 테스트 하고 있는 안드로이드 CPU 정보를
알아내어 화면에 표현을 해 보겠습니다.
터미널에서 시스템 명령어를 실행하는 것과
똑 같은 효과를 얻게 됩니다.
명령어는 두가지가 있는데 다음과 같습니다.
/system/bin/cat
/proc/cpuinfo
실행한 것을 화면에 표시합니다.
명령어를 실행하기 위해 ProcessBuilder 객체를
이용합니다.
String[] args = { "/system/bin/cat", "/proc/cpuinfo" }; cmd = new ProcessBuilder(args); Process process = cmd.start();
그리고 스트림으로 넘어온 값을 1024 바이트에
담아 끝까지 읽어 드립니다. 문자열로 만듭니다.
InputStream in = process.getInputStream(); byte[] re = new byte[1024]; while (in.read(re) != -1) { result = result + new String(re); } in.close();
아래는 메인 activity 에 xml 입니다.
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="fill_parent" android:layout_height="fill_parent" android:orientation="vertical" > <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:autoLink="web" android:gravity="center_horizontal" android:text="mainia.tistory.com" /> <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="Android CPU 정보" /> <TextView android:id="@+id/cpu_info" android:layout_width="fill_parent" android:layout_height="wrap_content" /> </LinearLayout>
메인 activity 전체 소스입니다.
import java.io.IOException; import java.io.InputStream; import android.app.Activity; import android.os.Bundle; import android.widget.TextView; public class SampleActivity12 extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_sample_activity12); TextView txtOs = (TextView) findViewById(R.id.cpu_info); txtOs.setText(ReadOSinfo()); } private String ReadOSinfo() { ProcessBuilder cmd; String result = ""; try { String[] args = { "/system/bin/cat", "/proc/cpuinfo" }; cmd = new ProcessBuilder(args); Process process = cmd.start(); InputStream in = process.getInputStream(); byte[] re = new byte[1024]; while (in.read(re) != -1) { result = result + new String(re); } in.close(); } catch (IOException ex) { ex.printStackTrace(); } return result.toString(); } }
위 소스를 실행한 결과 입니다.
콘솔에 출력하고 TextView 에 결과값을 표현한
것입니다. Model Name 이 Intel Core i5 이네요
이것은 컴퓨터에 있는 에뮬레이터를 이용한
결과 이므로 그렇게 나온것입니다. 스마트 폰이
이정도면 엄청 비싸겠죠 ㅋ
반응형
'안드로이드 개발' 카테고리의 다른 글
안드로이드(Android) 간단하게 TTS(Text-To-Speech) 구현하기 (8) | 2014.10.26 |
---|---|
안드로이드(Android) WebView 브라우저기능중 URL 이동바 구현 (0) | 2014.10.26 |
안드로이드(Android) WebView 이용해 브라우저구현과 메뉴구현 (0) | 2014.10.25 |
안드로이드(Android) 스마트 폰에 모든 시스템 정보 알아보기 (1) | 2014.10.25 |
안드로이드(Android) 2014년 9월 까지 플랫폼 버전과 화면해상도 분포 (0) | 2014.10.24 |
안드로이드(Android) OS 버전과 시스템정보 알아오기 (0) | 2014.10.23 |
안드로이드(Android) 저장소(Sdcard) 에서 읽어온 파일이 이미지인지 판단하기 (0) | 2014.10.23 |
안드로이드(Android) google map API v2 에서 지도에 마커설정하기 (1) | 2014.10.22 |