Effective Java 에서 익숙하게 발견하는 단어가 있습니다. 직렬화(Serializable) 이 직렬화는 과연 무엇일까요? 직렬화 자바에서 객체 안에 저장되어 있는 내용을 파일로 저장하거나 네트워크를 통하여 다른 곳으로 전송하려면 객체를 바이트 형태로 일일이 분해해야 합니다. 이러한 분해하는 과정. 즉, 바이트 단위로 바꿔주는 형태를 직렬화 라고 합니다. 자바는 Serializable 인터페이스를 구현한 클래스만 직렬화할 수 있도록 제한하고 있습니다. private 필드를 포함한 모든 필드를 바이트로 변환해도 좋다는 표시 역활을 합니다. public class XXX implements Serializable{ } 무엇이든 예외가 있듯이 직렬화에도 예외가 있습니다. transient 가 붙은 경우..
실질적으로 RxJava을 사용하는 코드를 공유 하겠습니다. 먼저 소스를 보시면 SampleRepositoryActivity 로 코틀린으로 표현한 소스 입니다. 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455class SampleRepositoryActivity : AppCompatActivity(){ ... // 여러 디스포저블 객체를 관리할 수 있는 CompositeDisposable 객체를 초기화 합니다. interanl val disposables = CompositeDisposable() ... override fun onStop(){ super.onStop() /..
RxJava, RxSwift, RxAndroid 등 Rx라는 단어를 많이 들어봤을 것입니다. Rx는 무엇일까요? Rx은 무엇인가? 'Reactive Extensions'이며 'ReactiveX'라고도 불립니다. 이벤트를 이벤트 스트림에 전달하고, 이벤트 스트림을 관찰하다가 원하는 이벤트를 감지하면 이에 따른 동작을 수행합니다. 비동기 라이브러리로 반응하는 프로그램이라고하여 Reactive Programming으로 부릅니다. RxJava 버전 1.x 버전 2017년 6월 1일 기준으로 새로운 기능 추가 없이 버그만 수정되고 있습니다. June 1, 2017 - feature freeze (no new operators), only bugfixes 2.x 버전 1.x 버전의 설계상 문제를 개선한 버전으로 지..
안드로이드 앱 개발하다보면 Full Screen을 요구하는 경우가 많습니다. 보통은 ActionBar을 숨기는 정도만 하는데, 게임이나 컨트롤러 같은 앱을 개발하다보면 StatusBar와 SoftKey을 숨기는 경우가 발생합니다. SoftKey가 화면에 표시되기 시작한 것은 디바이스 액정크기를 늘리면서 그 안에 소프트키를 넣는 방식으로 전환되었습니다. 따라서 실제 앱을 조작하다보면 실수로 누르는 경우가 발생합니다. KitKat(android 4.4) 버전 이후부터는 코드 몇 줄로 해결할 수 있습니다. 12345678910111213141516171819202122public class MainActivity extends Activity { private View decorView; private int..
MAC 환경에서 Android Studio을 사용하다가 앱 debug 빌드 시 에러가 발생하는 경우가 간혈적으로 발생 하는 경험이 있을 것입니다. 그 많은(?) 경험 중 한가지 소개하자면 안드로이드 스튜디오 > 앱 실행 > 에러 발생 Error while executing: am startservice kr.co.sigongmedia.sigongmediaplatform/com.android.tools.fd.runtime.InstantRunServiceStarting service: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=kr.co.sigongmedia.sigongmediaplatform/com.a..
1. DP / PX Convert https://pixplicity.com/dp-px-converter/ 2. 해상도 별 Density http://qiita.com/granoeste/items/5ba025d5f9c1a2672e0aAspect RatioSizePPIDensityDPIScaleLogical SizeCommentHTC Magic480x320HVGA3:23.2192.5hdpi2401.5smallNexus S800x480WVGA5:34.0233.0hdpi2401.5largeXperia arc854x480FWVGA427:24016:94.2233.5hdpi2401.5largeOptimus Pad1280x768WXGA5:38.9167.5hdpi2401.5xlargeXOOM1280x800WXGA8:51..
Android 사용하다보면 화면 회전을 하게 됩니다. 따라서 개발하다보면 화면 회전에 따른 이벤트를 필요하게 되는데 현재 회전 되었는지 확인하는 방식은 다음과 같다. 1. 현재 회전 상태 체크12345if(getWindowManager().getDefaultDisplay().getRotation() == Surface.ROTATION_90) { //가로 모드 일 때}else{ //세로 모드 일 때} 기존에는 .getOrientation() 으로 체크하였으나 최근에는 .getRotation()을 사용하고 있습니다. 리스너로 확인 할 수 있습니다.getWindowManager().getDefaultDisplay().getOrientation()getWindowManager().getDefaultDisplay..
이 포스팅은 tiii님의 포스팅(http://tiii.tistory.com/22)을 기반으로 작성하였습니다. 제가 직접 돌리면서 부족한 부분과 어려웠던 부분을 나누고자 합니다. 설치 및 시나리오는 참고 사이트를 확인해주세요. 1. 파이썬 설치https://www.python.org/ftp/python/2.7.11/python-2.7.11.msi 2. 환경변수에 파이썬 Path 추가 (C:\Python27) * 윈도우 기준 3. 파이썬에 setuptools, pip, gdata 설치 Setuptools : - https://pypi.python.org/pypi/setuptools/1.0 - (또는) https://www.versioneye.com/python/setuptools/1.0 1) 위의 사이트에서..
- 미션차이나센터
- 패턴
- 선교
- RXjava
- MCC
- 코틀린
- java
- 점수판
- 안드로이드
- Android
- IT
- 탁구
- issue
- DI
- 고시문
- 고시문헬퍼
- 스코어헬퍼
- view
- swift
- 임용고시
- Android Studio
- missioon
- Kotlin
- 알고리즘
- missionchina
- flutter
- push
- 디자인패턴
- IOS
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |