일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |
- 쿼터뷰
- submodule sourcetree
- 2d게임
- 게임개발
- 목서버
- DataBinding
- 내 맘대로 정리한 안드로이드
- 타이쿤
- 개발
- 안드로이이드 submodule
- 유니티
- 안드로이드
- Unity
- 코틀린
- 앱
- Android
- 서브모듈 pull
- 카페오냥
- github
- Kotlin
- gitlab submodule
- Android Studio
- 앱개발
- github submodule
- java
- 안드로이드개발
- firebase
- 서브모듈 sourcetree
- GIT
- 티스토리
- Today
- Total
목록안드로이드 (27)
Uing? Uing!!
꿈에 그리던 회사의 문턱 안으로 들어섰다.서류 등록부터 최종 면접까지는 총 5개의 절차가 있었고, 절차를 다 밟기까지는 무려 2달이라는 긴 시간이 걸렸다.매 절차마다 무언가를 준비했고 또 무언가를 배웠다. 그걸 잊지 않고자 이 글을 작성한다.(혹시라도 팀원분이 이 글을 발견하게 된다면 몹시 부끄러워질 것 같아서 기업명은 검색에 안 잡히게 줄였다.) 지원 계기8월 수료를 앞두고 5월쯤 취준을 시작했다.아직 수료까지 3달이 남은 데다, 수료하고 졸업을 미뤄도 되는 상황이어서 마음이 꽤 여유로웠던 것 같다.경력도 없는 주제에 새내기때부터 늘 꿈만 꾸던 기업의 경력 수시채용을 바로 기웃거렸으니 말이다. 홈페이지의 수시채용란에는 안드로이드 개발 관련 채용공고가 여러 개 올라와 있엇다.그중 몇몇은 내 관심분야와 맞..
소프트키와 화면 변화 EditText는 정말 빈번하게 사용되는 뷰이다. 이 EditText를 터치하면 키보드(소프트키)가 화면 하단에서 나타난다. 그런데 가끔, 이 소프트키가 화면을 가리는 경우가 있다. 아래와 같은 상황이 그 예시이다. (가장 처음으로 만들었던 '지나가리라'라는 어플리케이션의 화면이다.) 가장 왼 쪽의 레이아웃에서 키보드가 나오더라도 맨 오른쪽처럼 버튼을 유지하고 싶은데, 가운데의 스크린샷처럼 화면을 반쯤 가리면서 필요한 뷰들이 숨어 버린다. 앗 재난문자가 windowSoftInputMode windowSoftInputMode를 이용하면 키보드가 나타나고 사라졌을 때의 화면 변화 방식을 지정해 줄 수 있다. 가장 대표적인 설정값은 "adjustResize"이다. 이 값은 소프트키가 올라..
사건의 발단 지난 달, openCV를 활용해 이미지처리 기능을 구현하고 있었다. 이미지처리 과정이 상당히 복잡해서, Core 연산이 아주 많이 들어갔다. 메서드 여러 개로 나누어서 작업하고 있는데도 한 메서드가 몇백 줄이 넘어가는 길이였다. 연산이 복잡하기 때문에 어떤 줄에서 초 단위로 느려지는지 눈으로 확인하고 싶었다. 안드로이드 스튜디오의 프로파일러를 활용하면 큰 틀에서의 네트워크나 메서드 단위는 확인할 수 있지만, 한 줄 한 줄의 실행속도를 측정하는 것은 어려워 보였다. 삽질의 과정 그래서 직접 코드로 실행 시간을 확인하기로 했다. 처음에는 일반 예제에서 많이 하듯이 System.currentTimeMillis()만을 활용해 보려고 시도했다. prevTime과 curTime이라는 Long타입의 변수..
configChanges 앞서 액티비티 생명주기 (Activity Lifecycle)에 대한 포스팅을 했었다. [내 맘대로 정리한 안드로이드] 액티비티 생명주기 (Activity Lifecycle) 생명주기(Lifecycle)를 알아야 하는 이유 액티비티 생명주기란 액티비티가 생성되고, 정지되고, 재생되고, 종료되는 등의 상태 변화와 그에 따른 콜백 메서드를 총칭한다. 안드로이드 개발자라면 � holika.tistory.com 위 글에서 화면이 회전해 가로/세로모드가 변경될 때에는 onDestroy() 이후 onCreate()가 다시 시작된다고 했었다. 하지만 화면이 돌아갈 때마다 onCreate()부터 시작해서 모든 값들을 다시 가져올 필요는 없지 않은가. 온라인에서 뭔가를 다운로드 해야 하는 상황을 ..
Main Thread (UI Thread)와 Worker Thread 안드로이드에는 Main Thread (UI Thraed)와 Worker Thread라는 개념이 따로 존재한다. 이름만 다른 것이 아니라, 두 종류의 Thread는 아예 다른 목적으로 사용된다. Main Thread는 어플리케이션을 실행하면 기본적으로 작업이 실행되는 스레드이고, Worker Thread는 특정한 목적을 위해 따로 생성해서 동작하는 스레드이다. Main Thread와 Worker Thread를 사용하는 규칙은 단순하게 아래 두 가지이다. 1. Main Thread에서는 긴 시간이 걸리는 작업을 지양해야 한다. 2. Worker Thread에서는 UI 작업을 하지 않아야 한다. 이렇게만 적혀 있으면 당연히 궁금해진다. 왜...
접근 제한자 Java와 Kotlin은 지극히도 객체 지향적인 언어다. 모든 기능들이 Class, 객체의 형태로 연결되어 작동한다. 이런 객체지향적인 구조에서는 Class간에 어떤 정보를 공개할 것이고 또 어떤 정보를 숨길 것인지가 중요하다. 어떤 경우에는 클래스의 외부 사용자가 직접 건드려서 사용해야 하는 함수나 변수 등등이 있을 수 있고, 또 반대의 경우에는 외부에서 직접 건드려서는 안 되는 내용이 클래스 내에 포함될 수도 있다. 각 요소마다 이에 대한 설정을 관리해주는 것이 '접근 제한자'이다. Java에서의 접근 제한자 (Access Modifiers) Java에서 사용되는 접근 지정자에는 4가지 종류가 있다. 아래는 다른 블로그 (이를테면 https://luyin.tistory.com/232) 에..
사건의 발단 Firebase를 이해하고 SNS를 만들어 보겠답시고 아래 인프런 강의를 보는 중이었다. 하울의 안드로이드 인스타그램 클론 만들기 - 인프런 이 강좌를 통해서 인스타그램 앱을 만들 수 있습니다. 초급 모바일 앱 개발 프로그래밍 언어 Android Kotlin 모바일 앱 온라인 강의 안드로이드 강좌, 인스타그램 만들기 강좌, 하울 www.inflearn.com 실은 이 강의를 듣기 시작한 게 2020년 3월인데, 개강 후에 연구실 일로 정신이 없어서 잠시 내려놓았었다. 학기가 끝나고, 잠시 취업을 준비하고, 면접 결과를 기다리며 잠시 쉬다가 듣다 만 강의가 생각나 마저 듣기 시작했다. 예전에 강의를 따라가면서 github에 올려 두었던 중간 과정이 있어서, 그걸 clone한 뒤에 마저 작업을 ..
Garbage Collection Java는 Garbage Collection(GC)을 이용하여 메모리를 관리한다. 필요에 따라 GC가 실행되고, 그 과정에서 사용하지 않는 객체들을 정리해 준다. Q. 하지만 어떻게? 지난 면접에서 Garbage Collector가 어떤 식으로 객체를 정리하는지에 대해 질문을 듣자 머리가 멍해졌다. 뭔가... 참조를... 활용할 것 같은데... 뒷부분의 코드를 확인하나...? 코드를 활용한다고 답변했다. 잘 모르는 것이 느껴졌는지 추가 질문이 있었고 완전히 잘못 답변했다. 지금 생각해 보니 이 면접... 왜 나를 붙여주셨나 싶다 ㅋㅋ 구글링을 통해 많은 자료들을 둘러보고, 가장 기본적인 내용부터 이해하고자 했다. 도움이 된 사이트들이 많았지만 지금 검색해 보았을 때 유익..