본문 바로가기
반응형

전체 글1070

[C++] vector 다루기 vector라는 것은 동적 배열을 뜻한다. 크기가 자동으로 관리되는 배열로써 최대 확장크기는 이론상10억개이지만 실제로는 5억개까지 가능하다고 한다. 다른 자료구조를 잘 몰라도 vector를 잘 다룰 줄 안다면, 전부 커버가 가능할 정도로 vector는 유용하다고 한다. (이 말의 출처는 winapi.co.kr인데, 현재 winapi.co.kr은 http://www.soen.kr/ 으로 도메인을 변경한 상태다. 옛주소는 이제 사용하지 않는다고 한다.) 그동안 자바만을 다뤄왔기에 C++ 언어를 다루는데에 상당히 애를 먹었다. 문자열 다루는 일이 만만치 않았기 때문이다. 그리고 간접참조* 주소참조& 등등의 기호가 섞여서 나올 때마다 각 기호의 의미들이 헷갈려서 애를 많이 먹었다. -> 와 . 도 분명히 다른.. 2015. 9. 23.
[안드로이드] 사진 중복 저장 이슈 내가 만든 어플에서 괴현상이 발견되었다는 보고가 들어왔다. 어플의 기능 중에 사진을 찍어서 보내는 일이 있는데, 기본 카메라앱을 쓴다. 헌데 사진을 찍어서 보내지기는 하는데, 핸드폰에는 사진이 저장되지 않는다는 것이었다. 그리고 하루가 지나면 그 사진이 보인다는 것이었다. 하루 동안 어디갔다가 갑자기 등장하는 것일까? 코드를 살펴보았으나 특이한 점은 없었다. 다만 사진 경로가 하드코딩되어 있어서 문제의 소지가 있겠다고 판단하고, 그걸 메서드에서 구하도록 수정했다. 그렇게해서 해보니 사진이 잘 가져와지는 것 같았지만, 좀 더 자세히 찾아봤다. 일단 카메라 설정이 달랐다. 나는 SD카드를 쓰고, 그 사람은 내부저장소를 카메라폴더로 쓰고 있었다. 이 설정은 바꾸기가 쉽다. 카메라 어플을 켜고 톱니를 누르면 S.. 2015. 9. 1.
[안드로이드] 앱 완전 종료 예전에는Intent intent = new Intent(this,MainActivity.class); intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); intent.addFlags(Intent.FLAG_ACTIVITY_NO_HISTORY); intent.putExtra("exit","exit"); startActivity(intent); 이렇게 처리했는데 요즘에 이게 제대로 동작하지 않는다. 잘 되는 경우도 있고 안되는 경우도 있다. 뭔가 빠진 것 같은데... Intent intent = new Intent(this,MainActivity.class); intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); intent.addFlags.. 2015. 9. 1.
[JAVA] Log4j 자바에서 로그를 찍을 때, 그동안 System.out.println을 애용했었다.하지만 이것의 문제는 출력한 뒤에 시간이 지나서 스크롤이 되어버리면더이상 볼 수 없다는 것.그래서 그걸 기록으로 남기는 로그가 필요한 것인데.php에서는 쉽게 구현이 가능했으나, 자바에서는 어떻게 구현할 것인가 생각했다.log4j라는 로그 라이브러리가 있다. 지금 최신버전은 2버전인데.인터넷에는 1버전 자료가 많이 공개되어 있어 1버전 자료를 토대로 log4j를 활용했다. log4j의 설정은 properties 파일을 활용하는데, src폴더 바로 밑에 넣어주거나,그냥 같은 폴더 내에 있기만 하면 자동으로 log4j.properties 파일을 찾아내어 해당 설정을읽고 설정에 맞게 로그를 뿌려준다. 설정파일의 내용은 대략 이렇다.. 2015. 8. 28.
[안드로이드]이미지 저장 경로 이슈 Environment.getExternalStorageDirectory().getAbsolutePath(); 이미지를 저장할 때, 파일을 저장할 때위의 경로를 쓰는 것을 권장한다. SD카드 유무와 관계없이 기본경로를 사용한다. 초기에는 외장메모리를 사용하기 위해 위의 코드를 썼지만근래에는 내장메모리가 충분히 커졌고, 위의 코드를 사용하면내장메모리의 홈폴더 경로를 리턴하게 된다. 아래 참고링크의 덧글을 참조하라. 내장메모리와 외장 메모리가 있습니다.안드로이드 초기에는 내장메모리와 외장메모리를 구분하여 외장메모리의 경우 getExternalStorageDirectory()로 접근이 가능했었습니다.하지만 메모리용량의 발전으로 내장 메모리의 용량이 커짐에 따라 내장메모리를 외장메모리처럼 사용하게 됩니다따라서 g.. 2015. 8. 25.
[안드로이드]갤러리 새로고침(Refresh) 안드로이드에서 갤러리새로고침이 기기 재부팅을 해도 안되는 경우가 있다. 갤러리 새로고침은 미디어 스캐닝을 해야 해결이 가능하다. 기존 킷켓(4.4) 이전에는 sendBroadcast(new Intent(Intent.ACTION_MEDIA_MOUNTED, Uri.parse("file://" + Environment.getExternalStorageDirectory()))); 이렇게해서 갤러리를 갱신했었지만 킷캣부터 이렇게 바꼈다(테스트 해보니 아샌(4.0.3에서도 아래 소스가 통한다.) private void galleryAddPic(String currentPhotoPath) { Intent mediaScanIntent = new Intent(Intent.ACTION_MEDIA_SCANNER_SCAN_F.. 2015. 8. 25.
반응형