[android] GCM process diagram 출처 : android hive GCM process diagram GCM 서버 개발하기 ( Google Cloud Messaging service server development ) GCM 앱 개발하기 ( Google Cloud Message service app developement ) GCM (Google Cloud Messaging service ) Framework 에 대해 알아본다. GCM ( Google Cloud Messaging Service ) 에 대해 알아본다. 도움이 되셨다면 손가락 꾸욱~ ( 로그인 필요 x ) 2012. 11. 9. [android] AndroidHttpClient vs. DefaultHttpClient vs. HttpURLConnection 출처 : Android's HTTP Clients AndroidHttpClient vs. DefaultHttpClient vs. HttpURLConnection - AndroidHttpClient 는 android 에서 제공, DefaultHttpClient 는 Apache 에서 만든 것. - 둘 다 HTTPS, streaming upload, download, timeout, IPv6, connection pool 등을 지원한다. Apache HTTP Client - web browser 에 적합하며, 많은 갯수와 유동적인 API set 을 지원한다. 버그도 거의 없다. - 사이즈가 크기 때문에 호환성을 유지하며 API 확장하는 것이 어렵다. HttpURLConnection ( Android HTTP .. 2012. 11. 9. [android] Invalid use of SingleClientConnManager: connection still allocated. Invalid use of SingleClientConnManager: connection still allocated. - 연속적으로 HttpClient object 를 사용할 경우 간혹 발생하는 Exception 이다. full error 는 아래와 같다. 11-08 16:19:03.466: W/SingleClientConnManager(24709): Invalid use of SingleClientConnManager: connection still allocated. 11-08 16:19:03.466: W/SingleClientConnManager(24709): Make sure to release the connection before allocating another one. 11-08 16:.. 2012. 11. 9. [android] android.os.NetworkOnMainThreadException. android.os.NetworkOnMainThreadException - 해당 Exception 은 Network 관련된 operation 을 Main Thread 에서 수행했을 때 발생하는 Exception 이다. 해당 Exception 은 진저브레드 ( 2.3.3 )에서는 발생하지 않았고, ICS ( 4.0.0 )부터 발생을 하기 시작한다. 필자가 진저와 ICS 단말 둘다에서 테스트해본 결과 진저에서는 발생하지 않던 exception 이 ICS 에서 발생했기 때문이다. 이는 Strict mode 라는 것이 등장했기 때문. - 원인은 말 그대로 Network 관련 operation 을 main thread 에서 했기 때문이다. 추가로 strict mode 가 설정되었기 때문이다. - 해결책은 2가지가.. 2012. 11. 9. [android] proguard (프로가드)적용하기. 프로가드 ( proguard ) 적용하기. - 프로가드는 코드를 decompile ( 디컴파일 ) 했을 때 일종의 암호화가 된 상태로 디컴파일 되도록 지원해주는 것입니다. 프로가드( proguard ) 적용방법 1. 위의 파일( proguard.cfg )을 프로젝트 root 폴더에 붙여줍니다. 2. project.properties 에 아래 코드를 덧붙여줍니다. proguard.config=proguard.cfg 3. 이제 끝! 자동으로 proguard 라는 폴더도 만들고 앱을 export 하면 proguard 를 적용합니다. 도움이 되셨다면 손가락 꾸욱~ ( 로그인 필요 x ) 2012. 11. 9. [android] 구글 개발자 등록하기. 구글 개발자 등록하기. - 마켓에 앱을 올리기 위해서는 먼저 구글 개발자 등록을 해야합니다. 구글 개발자 등록을 위해서는 다음과 같은 준비물이 필요합니다. 준비물 - 25$ 국제 결재 가능한 신용카드. - 구글 아이디 - 자 이제 등록을 시작해봅시다. 구글 개발자 등록 사이트 - 구글 개발자 등록 사이트에 접속하면 위와 같은 화면이 나옵니다. 구글 아이디로 로그인을 합니다. - 로그인 하면 개발자의 기본 정보를 보여줍니다. 입력한 후 다음으로 진행. - 약관에 동의해주시고.. - 등록 수수료에 대한 안내가 나오는데, 그냥 계속 진행합니다. - 신용카드 정보와 개발자의 개인정보를 요구합니다. 쭉쭉 채워주고, 다음으로 넘어갑니다. 참고로 카드이름이 계정이름과 같아야 한다고 합니다. 저는 처음부터 같은 이름으.. 2012. 11. 8. [android] InputStream 은 2번 읽을 수 없다. InputStream 은 2번 읽을 수 없다. - InputStream 을 이용해서 Cache 저장하고, 해당 Stream 을 BitmapFactory 를 이용해서 decoding 을 했더니, BitmapFactory 에서 항상 null Bitmap 을 return 하더이다. 그래서 알아보니, InputStream 은 사실 한번만 사용할 수 있다. 한번 read 로 position 이 이동된다면, 다시 원점으로 돌릴 수 없다. mark 와 reset 을 이용한 방법이 있다고 하나, 이는 추가 구현이 필요하다. 그래서 보통 copy 를 하는 방법을 사용하곤 하는데, 이 역시도 추가 library 가 필요하다. 결국 잘 생각해서 input stream 을 한번만 사용하던지 memory 상 array 에 ca.. 2012. 11. 7. [android] HashMap 에서 equals 를 호출하지 않습니다 HashMap 에서 equals 를 호출하지 않습니다 - List형 Collections 에서는 equals() 함수를 호출하여 Object 들을 비교하여 해당 key 를 찾아내는데, HashMap 이나 HashTable 등의 Hash Collection 에서는 hashCode() 를 호출하여 Object 들을 비교합니다. 그래서 List 형과 Hash 형 Collection 모두 사용되길 원한다면 hashCode() 와 equals() 를 둘 다 override 해주는 것이 좋습니다. - 구현방법은 아래 링크를 참조하세요. [Design Pattern/Java] equals 메소드를 오버라이드 할 때는 hashCode 메소드도 항상 같이 오버라이드 하자. [Design Pattern/Java] Equa.. 2012. 11. 7. [android] File.createNewFile() 호출시 발생하는 InvalidArgumentException File.createNewFile() 호출시 발생하는 InvalidArgumentException - File.createNewFile() 호출시 InvalidArgumentException 이 발생할 수 있습니다. 이 Invalid Argument 예외가 발생하는 이유는 file 이름에 / : 등 특수문자가 들어가 있을 때 발생합니다. 파일이름에서 특수기호를 최대한 빼 주시면 해당 예외를 막을 수 있습니다. 도움이 되셨다면 손가락 꾸욱~ ( 로그인 필요 x ) 2012. 11. 7. 반응형 이전 1 ··· 80 81 82 83 84 85 86 ··· 125 다음