본문 바로가기

개발/안드로이드 개발

[안드로이드/안드로이드 개발]MultipartEntity Progress 사용하기 apache-mime4j 이쪽 라이브러리를 사용하게되었는데 파일업로드 시 Progress Bar를 띄우게 되었습니다.HttpUrlConnection을 사용하는 소스는 구글링 해서 한국어로 검색 시 많이 나오는데 라이브러리를 사용하는 부분에서는 영어로 된것밖에없는것 같아서 하나 만들게 되었구요.MultipartEntity를 사용해 파일 업로드 시 간단하게 프로그래스바를 띄울 수 있습니다. 위와 같이 MultipartEntity를 상속받은 class를 하나 추가하고 아래와 같이 사용하시면 됩니다.(AsyncTask를 사용하였습니다.) 더보기
[안드로이드] 카카오스토리 형식의 ListView 카카오스토리 처럼 ListView에서 View를 아래로 드래그(아래로 스크롤아님) 시 처음 뷰가 나와 목록을 다시 조회하는 방식기존 apiDemo에 보면 listview를 아래로 스크롤했을때의 소스는 있으니 아래로 내렸을 경우만 보겠습니다header 나 footer를 사용하지 않고 item으로 추가하는 방식입니다. 아래는 실행화면입니다. 에.. 뭐랄까요.. 위 예제는 쓰지 않으시는게 정신 건강에 좋으실듯 싶습니다. list의 item갯수가 화면에 디스플레이되는 Item의 갯수와 같을때 다시 말해서 한 화면에서 볼 수 있는 아이탬의 갯수보다 작을 경우에는 쓸수가 없네요. 모 이런 방법도 있구나 정도로 알아두면 좋겠다고 말씀드리고 싶지만. 맨붕을 계속 겪다보니 그냥 한번 스쳐지나가듯 보시면 좋을 듯 싶고. .. 더보기
안드로이드 - 음성인식 버튼을 누르면 음성을 입력받아 TextView에 뿌려보는 예제 만들기소스는 매우간단합니다. RecognizerIntent를 사용합니다.그외엔 딱히 중요한게 없네요. 보시면 바로 아실듯.. 인식률이 좋다기 보다는 abc라고 말했는데 이것저것 많이 나오네요. abc가 포함되긴 했지만 말이죠이런걸 인식률이 좋다고 하는건가요.. 어쨋든 a=b라는 식으로 1:1로 매핑되도록은 하기 힘들겠네요. 비교를 해야될듯. 더보기
LiveWallpaper - 간단한 LiveWallpaper 만들기(1) 우선 LiveWallpaper에 대해 알아야 하니 CubeLiveWallpaper로 기본 동작방법을 알아보면(참고로 CubeLiveWallpaper는 Android의 Sample프로젝트중에 있으니 바로 받으실 수 있습니다.) 1. 일단 일반 App과 다른점은 Manifest.xml파일에서 이 두항목을 Intent-filter로 가지는 Activity가 없습니다. LiveWallpaper의 특성을 생각해보자면 모 당연한 말일 수 있지만요. 2. Manifest.xml 파일에 Service가 있는데 일반적으로 Android에서 Service는 Activity와 같이 실행되었을 경우에만 실행되는 것이 아니라 항상 Background에서 돌아가는 것, 그리고 별도의 Activity를 가지지 않는다는 것을 알고 .. 더보기
안드로이드 갑자기 생긴 에러에 대한 해결책 java.lang.NoClassDefFoundError: org.apache.http.entity.mime.MultipartEntity 04-18 11:00:20.781: E/AndroidRuntime(4447): at egovframework.tcpor.mobile.mri.lsi.http.HttpRequest.postRequest(HttpRequest.java:121) 04-18 11:00:20.781: E/AndroidRuntime(4447): at egovframework.tcpor.mobile.mri.lsi.thread.HttpThread.fileUpload(HttpThread.java:83) 04-18 11:00:20.781: E/AndroidRuntime(4447): at egovframewo.. 더보기
[안드로이드]sensor 정리 sensor 이벤트를 발생시킨 센서 객체 accuracy 이벤트가 발생했을 당시 센서의정확도 values 감지된 값 timestamp 센서 이벤트가 발생한 시간 센서의 종류 타입 상수값 설명 TYPE_ACCELEROMETER 1 가속계 TYPE_MAGNETIC_FIELD 2 자기장 TYPE_ORIENTATION 3 회전 방향 TYPE_GYROSCOPE 4 자이로스코프. 역학적 운동을 조사하는 회전의 TYPE_LIGHT 5 조도. 화면 밝기 조정 TYPE_PRESSURE 6 압력 감지 TYPE_TEMPERATURE 7 온도계 TYPE_PROXIMITY 8 근접 거리계. 통화중 액정 끌 때 사용 TYPE_ALL -1 모든 센서 sensor의 정보 int getType () 센서의 타입 String getNa.. 더보기
[안드로이드] 전화수신거부 덜렁거려서 그런지 네이버나 한국어 구글링한 결과에서 찾은 샘플이나 소스들이 가끔 그들의 블로그나 웹페이지에서 말한것처럼 정상작동하지 않는 경우가 많네요. 이번에는 전화 수신거부에 대해 찾아보다가 도저히 안되겠다 싶어서 영어로 검색을 했습니다. 전화 수신 거부에 대해서는 다른 블로거님이 com.android.phone 이었던가 그 클래스를 ActivityManager를 통해 종료하는 방법이나 문자 수신때처럼 abortBroadcast를 사용하는 방법을 생각했었는데 짧디 짧은 영어로 검색해서 찾은건 전혀 다른 방법이었네요. 일단 지금 테스트 해보기 전이라 뭐라 말씀드릴 수는 없지만. 일단 한 3일 찾아헤메다 한국어로 검색했을때는 찾지 못했던 방법이라 왠지 기쁨. 일단 링크는 다음과 같습니다. http://a.. 더보기
[안드로이드] 어플 종료(?) 어플이 Background 로 전환될 경우에 어플을 초기화하거나 해야할 경우가 있었는데 구글링을 해보면 보통 ActivityManager를 사용해서 killBackgroundProcesses(packageName) 를 사용하거나 Eclare(version 8) 이전의 경우 restartPackage(packageName)를 사용한다고 하는데 뭐랄까.. 어쨋든 원하는 결과를 얻지 못했습니다. 제가 원하던 결과는 이렇습니다. A,B : a program Activity D : b program Activity -> : 화면전환 테스트 전환방향 1. A -> B -> D -> B 2. D 를 실행 후 HOME 키 후 A -> B 홈키를 통해 최근실행한 App 실행(D) 후 back키를 눌러 다시 B로 복귀 원.. 더보기
Android Serializable 주의사항 Serializable의 경우 사용하실때 주의할 점은 Serializable이 Implements된 클래스를 사용 할 경우 보내는 곳과 받는 곳의 패키지 구조가 같아야 한다는 점. 알게된게 다른 App의 Activity를 호출할 일이 있었는데 계속 오류메세지도 없이 종료되길래 다른 개발자분께 물어보다보니 패키지구조와 serialVersionUID가 같아야 정상적으로 작동된다고 합니다. 더보기
Android 휴대폰 전화번호 받아오기 TelephonyManager tm = (TelephonyManager)getSystemService(Activity.TELEPHONY_SERVICE); String 전화번호 = tm.getLine1Number(); 이 포함되어있어야 함. 더보기