본문 바로가기

나의 플랫폼/안드로이드

[ Android ] 잠금 화면 상태 확인 어플리케이션을 개발할 때, Mediaplayer나 Alarm 같은 백그라운드에서 계속 실행되게 하는 기능을 자주 사용하는데요. 사용 시, 종료 버튼을 누르고 잠금 화면에서 소리가 계속 나오더라구요. OnPause함수를 부를 때 정지를 시키고, OnResume 함수때 다시 소리를 실행하는 상황인데요. @Override protected void onResume() { if(backgroundMediaPlayer != null)){ backgroundMediaPlayer.start(); } super.onResume(); } @Override protected void onPause() { if(backgroundMediaPlayer != null){ // 종료 시 다시 실행이 되지 않아 // MediaPl.. 더보기
[ Android ] 전체 화면 사용 시 전체 화면 만드는 방법은 세 가지가 있는데 전 2가지를 주로 사용하죠. 메니페스트 파일을 수정하거나, 수동적으로 코딩을 넣는 방법이죠. 먼저 코딩으로 하는 방법은 requestWindowFeature(Window.FEATURE_NO_TITLE); getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN); 메니페스트 수정 테마에 적용하는 방법 true true 출처 : http://www.androidpub.com/4710 더보기
[ Android ] 최대 공약수 구하기 public static int gcd(int a, int b) { while (b != 0) { int temp = a % b; a = b; b = temp; } return Math.abs(a); } 더보기
[ Android ] 소수점 자리 지정하기 public static Double decimalScale(String decimal,int loc){ BigDecimal bd = new BigDecimal(decimal); BigDecimal result; result = bd.setScale(loc,BigDecimal.ROUND_HALF_EVEN); return result.doubleValue(); } 더보기
[ Android ] 진동 설정 진동을 나게 하는 것은 간단합니다. 서비스를 받아서 실행만 시켜주고, 진동 시간만 설정해 주면 되죠^^ 순서는 다음과 같습니다. 1. AndroidManifest.xml 에 추가 2. vibrate 함수 private void loadVibrate(){ // vibrate vibrator = (Vibrator) getSystemService(VIBRATOR_SERVICE); Thread triggerService = new Thread(new Runnable() { @Override public void run() { while(isRunning) { try { Log.e("Androday", "Ring ~ "); vibrator.vibrate(1000); Thread.sleep(2000); } catc.. 더보기
[ Android ] 화면 전환 시 해결 방법 화면 전환을 했을 시! 종료 버튼을 눌렀을 시! 전화나 알람이 일어났을 시! onCreate함수와 onDestroy함수가 다시 일어나는 불상사가 생깁니다. 당연 가만히 있으실 우리 구글양반들이 아니죠 ㅎㅎ 2가지 방법이 있습니다. 첫번째는 가장 간단한 방법 AndroidManifest.xml파일 내 activity 속성마다 이 한 문장만 넣어주면 됩니다. 이 속성은 뭔가 변화가 일어났을 때 화면을 재 실행하지 않고 고정 시킨다는 속성이 orientation이구요. 뒤에 keyboardHidden은 다시 화면이 띄어졌을 때 키보드를 숨긴다는 속성입니다. 그래서 이 두 속성을 넣어주게 되면 onCreate와 onDestroy함수를 재실행될 필요가 없어지죠! onResume과 onPause는 다시 실행이 되니.. 더보기
[ Android ] Opengl에서 glDrawElements함수로 그릴 떄 주의점 전 glDrawArray함수를 많이 사용하는데요. 폴라곤을 이용하여 텍스처를 입힐 때에는 glDrawElements함수를 사용하는 게 훨 편하고 속도면에서도 낫더라구요. 그런데 기존에 사용했던 glDrawArray함수와 glDrawElements함수를 사용할 때 준비해야할 점들이 다릅니다. glDrawArray함수는 vertex 좌표만 있어도 표현이 가능하죠. ( 다른 Normal등 부수적인 것을 제외 ) 하지만, glDrawElements함수에서는 vertex만큼 중요한 좌표가 두가지가 있죠. 바로!!! vertex포인터를 하게 될 좌표와 텍스처 포인터를 할 좌표!! 이 두가지를 확실하게 해주지 않으면 죽을 때까지 원하는 모양을 보실수 없으십니다. 먼저 , 텍스처 포인터를 할 때 위와 같이 두 포인터가.. 더보기
[ Android ] Eclipse Indigo 사용시 에러 Indigo 다운로드 주소 : http://www.eclipse.org/downloads/ 여기서 안드로이드 개발용 : Eclipse IDE for Java EE Developers 근데 실행 시 다음과 같은 오류가 나오는데요. 이럴 경우 대처는 간단합니다. Eclipse 폴더 내에 eclipse.ini 란 파일을 워드 패드나 문서 프로그램으로 여세요. 그럼 다음과 같이 나오는 데요. -startup plugins/org.eclipse.equinox.launcher_1.2.0.v20110502.jar --launcher.library plugins/org.eclipse.equinox.launcher.win32.win32.x86_1.1.100.v20110502 -product org.eclipse.epp... 더보기