처음에 시도한 방법은 mapView.setOnTouchListener를 등록해서 하는 방법인데.. 오직 한번 밖에 실행이 안된다. 왜 그런지는 도저히 이유를 모르겠다.. 심지어 수많은 블로그에도 [The handler isn't being executed. I didn't find the exact reason for this behavior yet.] 정도로 써져 있다. 그다음엔 onTouchEvent를 Override 해봤다.. 그래도 마찬가지다.. setOnTouchListener가 안되니 이것마저 안되는 것 같다.. 레퍼런스 문서를 찾다가 dispatchTouchEvent라는 녀석을 발견했고, 이 녀석을 오버라이드 해 보았다. @Override public boolean dispatchTouchE..
안드로이드 쓰레드 종료를 위해 Thread.stop(), Thread.suspend() 다 해보았지만 모두 deprecated 되어서 사용하면 안될 뿐더러, 정상 동작 하지도 않는다. 그럼 남은건 interrupt() 하나 뿐인데.. 이걸 쓴다고 해서 쓰레드가 바로 종료되는건 아니더라.. 보니까 interrupt() 쓴다고 쓰레드가 그냥 죽는게 아니고 쓰레드 내부에 직접 구현을 해줘야 했다. 중복 쓰레드 실행 시 이전 쓰레드를 죽이는 것도 처음에 boolean 변수 만들어서 죽여주는 그런 방법으로 시도했다가, interrupt()와 interrupted()를 활용 하는 것이 훨씬 간결 하다는 것을 알았다. 구현 소스는 다음과 같다. public class ThreadKillDemo extends Acti..
InputStream을 String으로 변환해 주는 예제 package org.kodejava.example.io; import java.io.IOException; import java.io.InputStream; import java.io.StringWriter; import java.io.Writer; import java.io.Reader; import java.io.BufferedReader; import java.io.InputStreamReader; public class StreamToString { public static void main(String[] args) throws Exception { StreamToString sts = new StreamToString(); /* * G..
안드로이드 어플리케이션을 다 제작했으면 마켓에 올리기 위해 release 버전으로 만들어 줘야 한다. 그냥 하는것은 아니고, 여러 과정을 거쳐야 하는데 아래 과정을 따라오면 된다. 1. keytool을 이용하여 key를 만든다. cmd창 들어가서 keytool -genkey -alias 키이름.keystore -keyalg RSA -validity 20000 -keystore 경로/키이름.keystore ex) keytool -genkey -alias roter.keystore -keyalg RSA -validity 20000 -keystore roter.keystore (마지막에 경로를 안써 주면 현재 cmd가 위치해 있는 폴더에 keystore를 만든다.) 엔터를 치면 암호 입력하라고 나온다. 암호 ..
브로드캐스트 리시버를 사용하여 핸드폰이 켜지면 자동으로 프로그램을 띄우도록 하자 우선 브로드캐스트리시버를 만들어 주자 public class PhoneBooting extends BroadcastReceiver{ @Override public void onReceive(Context context, Intent intent) { Intent i = new Intent(context, 실행할클래스.class); i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); context.startActivity(i); } } 매니 페스트는 다음과 같이 등록하자
한글 초성 검색 기능이 필요하여 구현해 보았다. 기본 적인 원리는 가~깋 나~닣.......... 하~힣 을 사용 한것. http://www.androidpub.com/45681 를 참조하여 구현하였다. /** * 초성 검색 알고리즘을 위한 클래스 이다. * @author roter * http://www.jhb.kr */ public class SoundSearcher { private static final char HANGUL_BEGIN_UNICODE = 44032; // 가 private static final char HANGUL_LAST_UNICODE = 55203; // 힣 private static final char HANGUL_BASE_UNIT = 588;//각자음 마다 가지는 글자수 ..
안드로이드에서 내 위치를 출력 하기 위해선 MyLocationOverlay를 사용하라고 여기 저기 써져있는데.. 난 아무리 해도 안되더라.. 계속 getMyLocation에서 GeoPoint값이 null값으로 나온다. 그래서 LocationManager랑 LocationListener를 사용해서 내 위치 정보를 구해왔다. //현재 내 위치를 GeoPoint로 리턴한다. private GeoPoint getMyLocation(){ LocationManager myLocationManager; LocationListener myLocationListener; //GPS가 켜져있는지 확인한다. myLocationManager = (LocationManager)getSystemService(Context.LOC..
안드로이드에서 SD 카드 사용하기. cmd창을 열어서 한다. 1. SD card 만들기 cmd : mksdcard [memory]M [만들이름] ex> : mksdcard 1024M sdcard1.iso 2. 생성된 SD card Emulator 에 마운트하기 cmd : emulator -sdcard [SD카드이름] -avd [에뮬레이터이름] ex> : emulator –sdcard sdcard1.iso -avd em21g 3. SD card 에 파일 넣기 cmd : adb push [filename] /sdcard ex : adb push text.txt /sdcard 4. SD card 에서 파일 가져오기 cmd : adb pull /sdcard [filename] ex : adb pull /sdca..
- Total
- Today
- Yesterday
- database
- source
- java
- kering
- Cloud
- db
- C++
- 드라이버
- algorithm
- linux
- 안드로이드
- NDK
- 리눅스
- driver
- 음악
- API
- jni
- Python
- android
- 프로그래밍
- AWS
- Troubleshooting
- Visual C++
- gcc
- Quiz
- C
- jni강좌
- it
- winapi
- MFC
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |