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..
iPhoneX 가 출시되면서 iPhoneX 디바이스 화면 대응 버전이 출시되고 있습니다. ScoreHelper도 iPhoneX 화면 대응 및 기능 개선 업데이트를 하였는데요. iPhoneX 디바이스는 세로 사이즈가 길어졌으며, 가로사이즈가 작아졌습니다 (iPhoneX : 1125 * 2436) 조금 더 큰 화면에서 점수판 앱을 즐길 수 있게 되었습니다. iPhoneX에서도 ScoreHelper로 즐탁하세요! 업데이트 사항 iPhoneX 화면 대응세트 종료 시 버튼 제목 변경, 세트 종료 및 게임 종료 버튼 디자인 동일 등 화면 개선더블 클릭 시 전면 광고 표시
안녕하세요. Dev.Faith 입니다. Android 1.4.2 업데이트는 사용하는 유저들의 의견을 반영한 업데이트 였습니다. 다운받기 첫번째 업데이트 사항은 "코트 변경" 기능입니다. 실제로 탁구 경기에서 코트를 변경하는 경우가 발생합니다. 이때 점수판까지 코트 변경 기능이 된다면 좀 더 경기에 집중할 수 있을 듯하여 추가하였습니다. 두번째 업데이트 사항은 "점수 리스트 변경"입니다. 탁구 경기 뿐만 아니라 확장성을 갖고 배드민턴 유저도 사용할 수 있다는 경우를 생각하여, 사용자들이 별로 선택 안하는 15점을 제거하고 31점을 추가하였습니다. 탁구 뿐만 아니라 배드민턴 경기에서도 활용할 수 있으니 좀 더 다양한 종목에서 사용하면 좋겠네요. iOS와 Android 모두 이용가능한 ScoreHelper와 ..
안녕하세요. Dev.Faith 입니다. 안드로이드로만 출시했던 ScoreHelper - 탁구 iOS 버전도 출시하였습니다. 앱스토어로 가기 최대한 Android 와 비슷하게 구현하려고 노력하였습니다. 이번 iOS 버전인 1.0.4 에서는 "코트체인지" 와 "도움말" 기능이 추가되어 사용자에게 편의를 주고 있습니다. iOS 버전과 Android 버전 구별없이 Score Helper - 탁구와 함께 즐탁하세요!
이번 1.4.1 버전 업데이트 사항을 알려드립니다. 이번 버전에서 눈에 띄는 부분은 [팀 이름 변경], [서브권 표시 방식 변경] 이 두가지 입니다. 점수판 화면을 보면 확실하게 인식 할 수 있습니다. 서브권 표시는 노란 배경색으로 표시 됩니다. 그래서 사용자가 확실하게 자신이 서브할 차례인지 확인할 수 있습니다. 위에 점수판 화면에서 이름 옆에 연필 표시가 있습니다. 연필을 클릭 하면 팀이름 변경 할 수 있는 팝업이 표시 됩니다. (팝업 표시 화면은 디바이스마다 다르게 표시 됩니다.) 그 밖에 변경된 아이콘의 모습과 기타 버그 사항을 업데이트 되었습니다. 앱을 사용하면서 즐탁하세요~
v 1.2.0 업데이트 사항을 공유드립니다. 이번 버전 업데이트의 주요 기능은 '(셀카)블루투스 리모컨 조작' 입니다. 스마트폰으로 사진을 촬영 시 사용하였던 '(셀카)블루투스 리모컨'을 탁구 앱에서도 사용 할 수 있습니다. 여기서 잠깐, (셀카) 블루투스 리모컨이 무엇인지 간단히 설명하자면 셀카촬영 목적으로 만들어진 블루투스 동글을 말합니다. 기본 화면에서 블루투스 설정 버튼과 도움말 버튼이 추가 되었습니다. 도움말 기능입니다. 조작키에 대한 설명이 나와있으며, 블루투스 모드와 화면 터치 모드에 따른 조작법이 설명되어 있습니다. 셀카 리모컨 설정입니다. 사용자가 보유하고 있는 셀카 리모컨의 형태를 선택합니다. 두개 버튼을 추천하고 있으며, 구성은 한개 모니터, 두개 모니터로 구성됩니다. 다운로드 htt..
국민 스포츠인 탁구를 즐기다보면 정확한 점수와 서브권을 잊어버릴 때가 있습니다. 이러한 불편함을 해결할 수 있는 정규 탁구 경기 규칙을 적용한 점수판 앱을 소개합니다. https://play.google.com/store/apps/details?id=com.cks.scoreboard 다른 탁구앱과 차이점은 깔끔한 디자인과 빠른 시작 모드입니다. 다른 앱과 다른 기능인 빠른 시작모드로 사용자가 원하는 게임을 빠르게 세팅 할 수 있습니다. 1. 간단 설명 * 단판게임 : 1 세트 21점 경기 입니다. * 3전 2승 게임 : 3세트 21점 경기입니다. 먼저 2세트 얻은 팀이 승리하게 됩니다. * 5전 3승 게임 : 5세트 21점 경기입니다. 먼저 3세트 얻은 팀이 승리하게 됩니다. * 사용자 정의 : 직접 사..
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) 위의 사이트에서..

앱에서 가장 많이 볼 수 있는 기능을 살펴보면 "좌우 스와이프" 기능을 쉽게 찾을 수 있는데요. Android의 스와이프 기능은 다양한 구현 방법이 존재하는데 대표적으로 ViewPager 일 것입니다. 이번 포스트에서 공유 드릴 내용은 ViewPager을 이용한 "Carousel View Pager" 입니다. 위에 사진을 보면 현재 보여지는 화면과 좌우에 이전과 다음에 보여질 화면이 미리 보여집니다. 물론 이동도 가능하며 옆에 살짝 보이는 부분을 클릭을 통하여 화면에 대한 이벤트도 적용할 수 있습니다. 이 포스트에서는 이벤트 적용에 대한 부분은 생략을 할 것입니다. (자세한 내용은 참고 사이트를 참고해주세요.) "카드뷰"의 핵심 기능은 pager.setPagemargin() 입니다. setPageMarg..
이번 버전 업데이트는 버그수정 및 기능 개선으로 업데이트 되었습니다. 무엇보다 이번 업데이트에서 swift4로 소스를 업데이트하여 앞으로 더 다양한 기능을 제공할 준비를 마쳤습니다. 1. 위젯 및 앱 민족 변경 오류 날짜가 변경 될 때마다 변경 되었던 민족 정보가 업데이트 안되는 이슈가 발생하였습니다. 490민족을 다음 다시 처음으로 민족 변경하는 부분의 수정으로 이슈 수정완료하였습니다. 2. 알림 설정 기능 개선 사용자가 알림 시간을 설정하는데 스크롤 도중 확인 누르면 변경되고 있는 데이터를 가져오는 것이 아닌 이전에 등록한 데이터를 가져오는 문제가 발생하였습니다. 이번 버전 업데이트로 스크롤 도중에는 설정 버튼이 클릭 되지 않도록 변경되었습니다. 앱 설치를 원하시는 경우 설치하기 버튼을 눌러주세요. ..
미션차이나센터 앱 개발자이면서, 소비자의 입장에서 앱을 사용했을 때 불편함을 발견하였습니다. 고민 끝에 대대적은 UI 개선 및 기능 추가를 생각하고 작업하였습니다. 업데이트 사항을 공유 드리면요. 1. 가이드 화면 추가 최초 앱을 실행 시 가이드 화면이 보여지게 됩니다. 사용자는 더 쉽고 정확히 어떻게 앱이 구성됬는지 파악할 수 있습니다. 2. 위젯 기능 추가 안드로이드 앱과 다르게 iOS 앱은 알림 시 팝업 표시가 안됩니다. 노티만 주는 앱 기능을 개선하기 위해서 위젯 기능을 넣었습니다. "기도제목"이 길어서 화면에 짤리는 경우 위젯 클릭으로 앱 진입이 가능합니다. 3. 기능 개선 날짜 변화에 따른 민족 변화가 안되어서 불편함이 있었습니다. 날짜 변화를 감지하여 이전 날짜하고 다른 경우 다른 민족으로 ..
이번 1.1.0 업데이트 사항에 대해서 공유 합니다. 이번 업데이트는 버그 수정이 전부이며, 수정된 내용은 1. 알림 On/Off 기능 동작 수정, 2. 알림 메시지명 변경, 3. 민족 팝업 스크롤 버그 수정 입니다. 1. 알림 On/Off 이번 버전부터 있었던 알림 기능의 Off 기능 오류가 발생했었습니다. 해당 이슈는 수정되어 사용자가 알림이 원하지 않을 때 취소할 수 있습니다. 2. 알림 메시지명 변경 알림 메시지가 "앱을 싱행하여 오늘의 민족을 위해 기도해요~" 로 변경 되었습니다. 3. 민족 팝업 스크롤 버그 수정 특정 민족의 설명 팝업 스크롤이 끝까지 내려가지 않는 이슈를 수정하였습니다. 이상 IOS 1.1 버전 업데이트를 알아봤습니다. * 오퍼레이션 차이나(저자 : 풀 해터웨이, 발간: 중국..
안녕하세요. Faith People 입니다. 안드로이드 앱 배포 후 주변 요청으로 아이폰 앱 개발에 들어갔습니다. 처음으로 아이폰 개발이라 스위프트 스터디 개설 등 열심히 공부하며 만들었습니다. 서두가 길었네요... 이번 시간은 아이폰 버전 앱 소개와 안드로이드와 다른 점을 소개하려고 합니다. 전반적인 앱 디자인은 안드로이드와 다르지 않게 구성하였습니다. 안드로이드와 다른점은 두가지 입니다. 1. 푸시 알림 민족 데이터 업데이트 방식 밑에 스크린샷을 보면 왼쪽은 기본 푸시 알림이고 오른쪽은 그 푸시 알림을 "꾹" 눌렀을 때(3D 터치) 보여지는 화면입니다. 여기서 안드로이드하고 다른점은 Swift 푸시의 Delegate는 foreground와 background에서 알림이 울렸을 때로 나눠지는데, bac..
- Android
- 탁구
- 임용고시
- issue
- 미션차이나센터
- missionchina
- missioon
- IOS
- MCC
- RXjava
- 선교
- java
- Kotlin
- swift
- 코틀린
- 점수판
- 고시문
- 패턴
- 스코어헬퍼
- Android Studio
- push
- 안드로이드
- 디자인패턴
- flutter
- 고시문헬퍼
- DI
- IT
- 알고리즘
- view
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |