본문 바로가기

IT

WebView를 이용한 파일 첨부 하기 웹뷰에선 버전별로 파일 첨부 코드를 생성해 줘야 한다.*다른 버전은 문제 없는거 같은데 4.2.2 버전에서는 안된다.(이유는 모르겠다.) permission 추가 변수 선언private static final int FILECHOOSER_RESULTCODE = 1; private final static int FILECHOOSER_LOLLIPOP_REQ_CODE = 2; private ValueCallback mUploadMessage = null; private ValueCallback filePathCallbackLollipop; WebView setWebChromeClient 부분// For Android 3.0- @SuppressWarnings("unused") public void openFil.. 더보기
Android Studio 설치 안드로이드를 다시 시작 하게 되었다. 이클립스를 설치하려다 보니 더이상 ADT를 제공하지 않는 다기에 이참에 Android Studio를 설치하기로 했다. 설치 방법은 간단 하다. http://developer.android.com/sdk/index.html 위에 링크를 따라가서 설치파일을 다운로드 받고 실행시킨 후 다음만 눌려주면 된다. 더보기
Embedded Recipes 임베디드 기초 서저기라고 할수 있는 Embedded recipes책을 드디어 가지게 되었다.ㅋㅋ 블로그에 쓴내용을 책으로 담은건데 정말 유용하고 임베디드 기초를 잘 습득할수 있는책이다. 코너북에서만 판매해서 그런지 가격은 에누리 없이 3만3천원 이다.ㅋ 사기전에는 좀 비싸다라는 생각을 했지만 사고 나니 잘산거같다.ㅋ 만든의도나 책의 내용이나 전부 마음에 든다. 좀 아쉽다함은...오타가 많다는거?ㅋㅋ 더보기
유지보수가 어렵게 코딩하는 방법 유지보수가 어렵게 코딩하는 방법. 유지보수 하기 어렵게 코딩해서 평생 개발자로 먹고 살자라는 표지가 보인다. 안에 내용을 보면 개발자들이라면 배울때 저렇게하면 안된다 라고 배운내용들을 가지고 꼭 그렇게 하라고 서술 되어있다. 그렇게 하면 정말 유지보수가 힘들어 지긴할것이다. 하지만 저책은 절대 저렇게 코딩하면 안된다는 것을 말하는 책이다. 현제 한빛미디어 에서 Ebook과 PDF파일로 무료로 배포 하고있다 http://www.hanb.co.kr/events/eventview.html?event_id=freebook 더보기
전공연구 전시회(12.1 ~ 2) 학부생활을 마무리하는 전시회를 하였다. 작품이 뭔가 부끄럽기도 하지만 1년동안의 성과라 뿌듯하다.ㅋㅋ 우리팀원들 1년동안 탈도 많았지만 다들 고생했다.ㅋㅋ 우리 NS_Lab 9기 단체사진이다 아마 마지막 단체 사진이 되지 않을까 싶다.ㅋㅋ 2틀에 짦은 전시회 였지만 그래도 마지막을 잘 장식해서 마음이 편하다ㅋ 더보기
Android 액정크기에 맞게 자동화면 맞추기 요세 핸드폰에서 탭까지 액정 크기가 다양하기 때문에 그에 맞게 자동으로 맞춰주는 기능이 있다. 간단하게 맞추는 기능 AndroidManifest.xml파일에 요것만 넣으면 끝!!! 더보기
fill_parent와 Wrap_content의 차이 레이아웃을 구성하는 프로퍼티들 중에서 Layout width 항목과 Layout height 항목이 취하는 값 중에서 fill_parent 와 wrap_content 의 차이를 계속 헷갈려하다가 이렇게 포스팅을 해둔다. fill_parent : 부모가 가지는 길이를 모두 채울 때 사용한다. 즉, 해당 레이아웃을 취하는 컨테이너의 길이를 모두 채우는 것이다 wrap_content : 해당 뷰가 그려질 수 있게 필요한 길이만 사용한다. 이 경우 절대적인 값도 넣을 수 있는데, 10px, 10dp, 10sp 처럼 수치와 단위를 써서 직접 길이 값을 지정하면 된다. 다음은 Linear_layout 안의 Button 을 가지고 fill_parent와 wrap_content를 비교해본 것이다. 출처 : http:/.. 더보기
JVM의 메모리구조 1. 메서드 영역(method area) - 프로그램 실행 중 어떤 클래스가 사용되면, JVM은 해당 클래스의 클래스파일(*.class)을 읽어서 분석하여 클래스에 대한 정보(클래스 데이터)를 이곳에 저장한다. 이 때, 그 클래스의 클래스 변수(class variable)도 이 영역에 함께 생성된다. 2. 힙(heap) - 인스턴스가 생성되는 공간. 프로그램 실행 중 생성되는 인스턴스는 모두 이곳에 생성된다. 즉, 인스턴스변수(instance variable)들이 생성되는 공간이다. 3. 호출스택(call stack 또는 execution stack) - 호출스택은 메서드의 작업에 필요한 메모리 공간을 제공한다. 메서드가 호출되면, 호출스택에 호출된 메서드를 위한 메모리가 할당되며, 이 메모리는 메서드가.. 더보기
Cortex-m3와 모터드라이브 연결 모터 드라이버도 연결은 어렵지 않았다. 똑같이 물려주면 끝이다. 단, Cortex-m3의 구동 전류는 3.3 or 5 볼트이다 여기서 나오는 전류로 모터드라이버를 동작시키면 모터가 아주 느리게 움직일지도 모른다. 모터의 구동 전류을 확인하고 그 전압에 맞게 따로 전류를 따줘할수도 있다. 더보기
Cortex-m3와 Bluetooth모듈 연결하기 LM89623S와 Bluetooth모듈 을 연결해 보았다. 생각보다뭐 별거 없었다. 연결한 방법은 간단하다 MCU RX,TX 선을 Bluetooth모듈의 RX,TX를 크로스로연결만 하면 납땜은 끝난다. 코딩부분에서 전송이 되고있는지 확인해보기위해 샘플 코드인 uart_echo 프로그램을 다운로딩해서 테미널 프로그램으로 테스트해보았다. 잘~돌아간다. #include "inc/hw_ints.h" #include "inc/hw_memmap.h" #include "inc/hw_types.h" #include "driverlib/debug.h" #include "driverlib/gpio.h" #include "driverlib/interrupt.h" #include "driverlib/sysctl.h" #inc.. 더보기