본문 바로가기

Dev Platfrom

안드로이드 JAR Library 안드로이드 JAR Library 1. 이클립스에서 navtive application 빌드환경 만들기 : http://ecogeo.tistory.com/263 2. 이클립스로 실행가능한 jar 만들기 : http://blackun.egloos.com/5185203 3. Library Project 생성 : http://developer.android.com/tools/projects/projects-eclipse.html 4. 요약 / 의문점 - JAR Library 생성 : 매우 간단히 Export >> JAVA >> JAR file 를 선택하여 해당 JAR 파일을 생성하면 된다. - 의문점은 resource / AndroidMainfest 등을 포함하여 JAR 형태로 배포할 수 있는지 이다. 일단 K.. 더보기
Geocoder / getFromLocation ICS, 젤리빈 주소가져오기 오류 Geocoder / getFromLocation ICS, 젤리빈 주소가져오기 오류 1. 지오코딩으로 현재 위치의 주소를 가져오는 경우가 있을 것이다. 기존에는 잘 가지고 오던 주소가 혹지나 service not available Exception이 뜬다면, 폰을 재부팅해 봐라 잘 될 것이다. 오늘 정말 빵당했다. ICS와 젤리빈에서 지오코딩으로 주소를 가져오는 것이 한번 오류가 나면 프레임웤에서 계속 오류를 주는 것 같다. 안드로이드 미치겠다. 아. ~~~~~~ 참고 사이트 : http://stackoverflow.com/questions/12740443/android-geocoder-getfromlocationname-returns-service-not-available 더보기
Android 어플성능에 관한 고찰 Android 어플성능에 관한 고찰 어떤 모바일 어플을 개발하든 항상 성능 이슈는 있게 된다. 난 요즘 개발하고 있는 어플에 대한 성능 이슈 때문에 어떻게 하면 어플 성능을 항상 시킬 수 있을까에 대하여 고민하고 있다. 가장 큰 이슈는 ListView에 큰 이미지 파일을 보여줘야 하는 문제가 있었으며, 이를 해결하기 위하여 어떤 방식으로 이미지를 로드할까 하는 고민에 대하여 기술해 볼까 한다. 아래에 기술한 것이 답은 아니며, 해당 고민을 바탕으로 구현하고 결론 또한 써 볼까 한다. 1. 네트워크 기반 어플이 성능에 이슈되고 있는 것들 - 네트워크 상태에 따른 이미지 다운로드 속도 - 큰 이미지를 ListView에 로드할때 notifyDataSetChanged 시점 문제 - 큰 이미지를 서버에서 퀄리티 .. 더보기
Parent Class와 Child Class와의 Event 흐름(부모와 자식 사이의 이벤트) Parent Class와 Child Class와의 Event 흐름 / 문제 1. Android에서 OnItemClickListener, OnChildClickListener와 같이 ListView에 아이템에서 이벤트를 발생 시켜는 리슨어의 경우 부모에서 해당 이벤트를 가지고 있을 때, 부모가 이벤트를 가로 채서 자식에게 이벤트가 전달되지 않을 경우가 발생하게 된다. 이상하게도 OnClickListener, OnTouchListener의 경우는 super로만 해당 이벤트를 전달하지 않으면 자식이 해당 이벤트를 받을 수 있었다. 그래서 이 문제를 해결하기 위해서 많을 헤딩을 한 결과, 부모가 가로채는 이벤트를 전달 받는 것이 아닌, 해당 아이템뷰에서 setTag() 메소를 통하여 데이터를 전달 받아 해당 문.. 더보기
Android Selector 속성 Android Selector 속성 1. selector 속성 - android:state_focused = 현재 포커스를 가진 상태 (유무) - android:state_checked = 현재 체크된 상태 (유무) - android:state_checkable = 체크 가능한 상태 - android:state_active = 활성 상태 - android:state_enabled = 현재 사용 가능 상태 (유무) - android:state_selected = 현재 선택된 상태 (유무) : 결국 onClick - android:state_pressed = 현재 눌러진 상태 (유무) - android:state_window_focused = 현재 원도우가 포커스를 가진 상태(유무) 더보기
SNS 연동 SNS 연동 1. FaceBook 연동 - Feed dialog 관련 예 : http://stackoverflow.com/questions/9527675/android-facebook-api-feed-dialog - dialog 방식으로 연동 Bundle parameters = new Bundle(); if(parameters != null){ parameters.putString("name", mBugle.getmNickname() + " 님의 버글"); parameters.putString("picture", mBugle.getBugle_image()); parameters.putString("description", mBugle.getmBugle_desc()); parameters.putString.. 더보기
BitMap / BitmapFactory 속성 BitMap / BitmapFactory 속성 1. 이미지 outofmemory 줄이기 현재 개발 중의 프로그램이 이미지를 너무 많이 쓰고 있어서 이미지를 Load할 때 outofmemory가 난다. 어떻게 outofmemory를 줄일 수 있는지는 많은 사이트에서 설명이 되어 있다. 하지만...뭔가 부족하다는 느낌을 지울 수 없어 BitMap과 BitmapFactory Class를 통하여 outofmemory를 줄일 수 있는 방법 중 BitMap / BitmapFactory 속성 BitmapFactory.Options options = new BitmapFactory.Options(); options.inPreferredConfig = Config.RGB_565; options.inTempStorage .. 더보기
EditText 특수문자 제한 EditText 특수문자 제한 1. EditText 특수문자 제한 예제 소스mTopicComment = (EditText) findViewById(R.id.topic_add_comment); TextWatcher watcher = new TextWatcher() { String text; @Override public void onTextChanged(CharSequence s, int start, int before, int count) { } @Override public void beforeTextChanged(CharSequence s, int start, int count, int after) { text = s.toString(); } @Override public void afterTextC.. 더보기
Android WebView Android WebView 1. Android WebView에서 자주쓰는 함수 - loadData() 브라우저에 주어진 문자열 데이터 로딩 - loadDataWithBaseURL() : 기준 URL을 사용해 주어진 데이터 로딩 - loadUrl() : 주어진 URL을 사용해 웹페이지 로딩 - postUrl(url, postData) : POST 통신으로 URL 로딩 - setDownloadListener() : 사용자가 .zip이나 .apk 파일을 다운받는 경우 등의 다운로드 이벤트의 콜백 등록 - setWebChromeClient() : 제목이나 진행률 표시줄을 업데이트하거나 자바스크립트 대화상자를 여등 등, WebView 영역밖에서 실행되는 이벤트의 콜백을 등록 - setWebViewClient().. 더보기
App(앱)와 WebVew(웹) 간의 데이터(data) 통신 App(앱)와 WebVew(웹) 간의 데이터(data) 연동(통신) 1. android addjavascriptinterface를 통한 앱과 웹뷰사이의 데이터 연동 addjavascriptinterface API는 안드로이드에서만 제공되는 API이기 때문에 안드로이드 플랫폼에서만 사용할 수 있다는 단점이 있다. - 예제 소스 [APP] WebView webViewCommon; webViewCommon = (WebView)findViewById(R.id.webview); webViewCommon.getSettings().setJavaScriptEnabled(true); //자바스크립트 사용 가능 webViewCommon.loadUrl("http://test/test.jsp");//요청할 URL webVie.. 더보기