얼마전 열심히 개발해 놓은 앱이 자꾸 동작 중지되는 현상이 일어났다. 열심히 뒤적뒤적 해봤지만 문제될 것이 없어 보였는데..... 디버깅 하다 보니 액티비티 생명 주기가 이상하게 변하는 것을 알 수 있었다. 화면 회전이 될 때 onDestroy 한번 호출 후 Create가 호출되는!!! 그래서 기존 데이터 값이 다 날라가는 현상이었다. 확인해 본 결과 아래 처럼 해결하면 된다. //Manifest 파일의 다음 부분에 아래와 같이 추가 //여기가 중요하다. ... //실제 자바 코드에서 아래의 함수 추가 @Override public void onConfigurationChanged(Configuration newConfig) { super.onConfigurationChanged(newConfig); }..
안드로이드 로컬 서비스를 이용한 액티비티와 서비스 통신. 액티비티에서 서비스 함수를 호출 하거나, 서비스에서 액티비티 함수를 호출하는 방법.이 방법은 로컬서비스 바인딩 방법으로, 서비스를 앱내에서 품고 있는 경우에만 동작함. 액티비티 클래스 구현부... public class MainActivity extends Activity { //액티비티에서 선언. private MainService mService; //서비스 클래스 //서비스 커넥션 선언. private ServiceConnection mConnection = new ServiceConnection() { // Called when the connection with the service is established public void onSe..
어떤 좋은님께서 지나가다 댓글을 달아 주셨네요 [ https://github.com/journeyapps/zxing-android-embedded ] 요즘은 그냥 프로젝트 만들어서 Ctrl C + V 2~3번만 하면 되네요. 아래 내용은 이제 무시해 주세요 ^^ 지난 번에 이어, zxing 바코드 라이브러리 이용하기에 대해 글을 쓴다. 목표는 zxing 바코드 라이브러리를 이용해서 나만의 QR 바코드 스캐너 를 만드는 것이다. [준비사항] 먼저, zxing 바코드 라이브러리(JAR)를 받는다. 기 컴파일 된 버전을 배포하고 있다. 다운 위치 : http://repo1.maven.org/maven2/com/google/zxing/ 상기 위치 오류 나면 , https://github.com/zxing/zxi..
이번에 어떤 일로 인해 Zxing 바코드 라이브러리를 이용하게 되었다. 그 중 처음 라이브러리를 임포트해서 사용하면 스캔 영역이 작아서 스캔하기 힘들어 진다. 이럴 때 스캔 영역을 조절해야하는데, 어떠한 해상도에서도 깔끔하게 적용되는 코드가 있어서 정리해 둔다. 통상적으로 스캔 영역 조절은 ViewfinderView.java 에서도 할 수 있지만, 화면 크기가 다 달라지는 안드로이드에서는 일관성이 떨어질 경우가 있다. 그래서 CameraManager.java 에서 스캔 영역을 조절하도록 한다. 추가한 zxing 의 CameraManager.java 에서 getFramingRect() 함수를 찾아서 아래와 같이 수정하도록 한다. public Rect getFramingRect() { if (framingR..