출처 : http://blog.mandeulgo.net/2014/01/13/mariadb-5-5-34-mroonga-3-11-handlersocket-centos6-%EC%84%A4%EC%B9%98%EA%B8%B0/ Mroonga 설치 삽질기이번 프로젝트를 기획하면서 Mroonga 에 관심을 갖게 되었다. Percona 서버 부터 mysql 5.5~5.6 , Mariadb 를 다 설치해봤지만현재까지 나온 Mroonga 3.11 은 mysql 5.6 버전에서 제대로 설치가 되지 않았다.당연히 뭔짓을 해도 CentOS 6.5 에서 MariaDB 10.0.7 과 Mroonga 가 설치가 안된다.정확히 말하면 설치는 성공했으나 MariaDb 에 Mroonga 를 플러그인으로 등록 할때마다 오류를 뿜는다. 버전 ..
Fulltext search (Mroonga) 전문 검색 엔진MySQL 서버에 내장된 전문 검색 엔진은 DELIMITER 방식의 단어 파싱만 제공되고 있어서 사용자들이 띄어쓰기나 문장 기호를 명확히 입력하지 않을 때에는 검색이 불가한 경우가 많다.그래서 실제로 MySQL의 Builtin fulltext search engine은 많이 사용되지 않으며, 더불어 MySQL builtin fulltext search는 InnoDB 스토리지 엔진을 사용할 수 없는 것도 한가지 문제이다. 이런 단점들을 보완하기 위해서, Lucene나 Sphinx를 도입해서 응용 프로그램 레벨에서 이를 구현하기도 하는데, 이는 많은 개발 코드를 필요로 한다.그래서 MySQL 서버에 플러그인 형태로 내장되어서 스토리지 엔진 형태로 ..
if(android.os.Build.VERSION.SDK_INT < android.os.Build.VERSION_CODES.HONEYCOMB) { android.text.ClipboardManager clipboard = (android.text.ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE); clipboard.setText(stringYouExtracted); } else { android.content.ClipboardManager clipboard = (android.content.ClipboardManager) getSystemService(Context.CLIPBOARD_SERVICE); android.content.ClipData..
안녕하세요. 야매 프로그래머입니다 안드로이드를 처음 접하시는 개발자 후배분이나 일반인들을 상대로 강의를 진행하려 합니다. 자신의 실력이 초급 이상이라고 생각하시면 제가 작성하는 글은 전혀 도움이 되지 않으니, 창을 닫아주시면 감사하겠습니다. 안드로이드 개발 환경 구성 - 개발 툴킷 설치 안드로이드를 개발하는데 필요한 필수적인 개발 환경은Java JRE가 설치되어 있어야 합니다. 현재 안드로이드 빌드 툴로는 이클립스, 안드로이드 스튜디오가 있습니다. 저는 이클립스가 익숙하니 앞으로의 모든 강의는 이클립스를 기준으로합니다 1. Eclipse + Android SDK + Android ADT 한방 설치 http://developer.android.com/sdk/index.html 위 사이트에서 Download..
The content of the adapter has changed but ListView did not receive a notification. Make sure the content of your adapter is not modified from a background thread, but only from the UI thread. [in ListView(xxxxxxxxxx, class xxxxxxxxx ListView) with Adapter(class xxxxxxxxxxx listAdapter)] 리스트뷰를 사용하다보면 간간히 접하는 오류이다. 문제는 별별 상황에서 이 오류가 나타난다는 것이다. 인터넷에 떠도는 해결 방법으로는 특정 상황에서 발생하는 문제를 해결하지 못했다. 구글링을 믿었는..
iOS에서는 null체크가 애매하다. 특히 JSON같이 서버에서 받아온 값을 처리 할 때, 의도치 않게 null로 인식되어야 할 값들이 null로 인식되지 않을때 문제가 발생 할 수 있다. 내가 사용하는 방법. FUNCTION:+ (BOOL)isNull:(NSString*)str { if(str == nil || [str isEqualToString:@""] || [str isEqualToString:@"null"] || str == (id)[NSNull null] || [[str stringByTrimmingCharactersInSet:[NSCharacterSet whitespaceAndNewlineCharacterSet]] isEqualToString:@""]) return YES; else retu..
java.lang.IllegalStateException: The content of the adapter has changed but ListView did not receive a notification. Make sure the content of your adapter is not modified from a background thread, but only from the UI thread. 영어를 해석해보면 어댑터의 데이터가 변경되었는데 리스트는 이 사실을 전달 받지 못했다.어댑터의 컨텐츠를 백그라운드 쓰레드에서 변경하며 안되고, 메인 쓰레드(UI 쓰레드)에서 변경해야만 한다. 라고 한다. 문제는 이 내용이 2가지 사항에 해당하지 않더라도 시도 때도 없이 동일하게 나온다는 것이다. 답답해서 구..
흔히 Activity간에 데이터를 전달 할 경우, 특별한 경우가 아니면 간단하게 putExtra를 사용해서 Activity간에 데이터를 전달하는 방법을 사용한다. 문제는 이러한 방법을 사용 할 경우, 한정된 데이터형만을 사용 할 수 있는데, 사용자가 클래스로 만든 Object형을 Intent로 전달할 수 있는 방법을 공유하고자 한다. 일반적인 방법으로는 Custom Object형을 전달 할 수 없다. 이를 가능하기 위해서는 Serializable나 Parcelable을 Custom Object에서 구현시켜 주어야 한다. 여기서는 Parcelable를 사용한 방법을 소개하겠다. public class CustomObject { private int a; private int b; private Strirn..