모바일

모바일/안드로이드 스튜디오

[안드로이드 스튜디오] gradle 이란?

Gradle 자동화된 컴파일/빌드/실행 시스템. 그래들은 빌드 구성 파일들을 통해 프로젝트 빌드가 구성되고 관리되게 해준다. 따라서 프로젝트를 빌드하는 방법, 빌드에 필요한 모듈간의 의존 관계 같은 내용들이 정의된다. 그루비(Groovy) 언어 기반의 스크립트로 선언된다. 장점 유연성 플러그인을 사용하여 (안드로이드 스튜디오 같은)다른 환경에 통합될 수 있다. 특징 합리적인 디폴트 그래들은 사전 정의된 합리적인 디폴트 구성 설정들을 가지고 있다. 개발자가 따로 빌드 설정을 주지 않아도 합리적으로 설정된 디폴드 값을 사용하여 빌드가 수행될 수 있다. 의존 관계 프로젝트의 모듈 A가 모듈 B에 의존하고 있다면, 이 의존 관계를 프로젝트 빌더에 알려야 한다. 프로젝트에 필요한 라이브러리와 JAR 파일도 마찬가..

모바일/안드로이드 스튜디오

[안드로이드 스튜디오] Activity VS Fragment (1)

* 본 게시물은 [핵심만 골라 배우는 안드로이드 스튜디오3 & 프로그래밍] 도서를 참고하여 작성되었습니다. Activity 액티비티는 컴포넌트를 더 높은 수준의 개념으로 끌어올린, 어플의 기능을 갖는 단일의 독립 실행형 모듈이다. 재사용성, 상호 운용성이 극대화되어있다. 그리고 하나의 사용자 인터페이스 화면과 그 기능에 밀접한 관련이 있다. EX) 한 일정 관리 어플에서 당일날 설정된 일정만 보여주는 화면 익월 달력을 보여주는 화면 일정을 설정하는 화면 등으로 이루어 진다면 Activity를 사용해 이것들을 하나의 기능적 모듈로 두고, 인터페이스 화면(이벤트 처리 포함)과 함께 관리할 수 있다. 그리고 액티비티끼리는 완전히 독립되어 있다. 따라서 액티비티 사이에 함수나 변수를 공유하는 것은 불가능하다. ..

모바일

Navigation Drawer, AppBar, CoordinatorLayout

Navigation Drawer (참고 글 : https://recipes4dev.tistory.com/140) navigation 기능을 drawer처럼 필요할 때마다 열고 닫으며 사용하는 것임. (navigation 뷰를 drawerLayout 에 넣어 사용하는 것이지 저 자체로 하나의 뷰 위젯 클래스가 아니다) 또 이 drawerLayout는 (대체로) FrameLayout으로 구성한다. 왜냐면 각 네비게이션 항목마다 레이아웃을 각각 구성하면 리소스 낭비가 크다고 했었나... 여하튼 그렇게 하나하나 만들어 매번 전체 화면을 이동하는 것보다 FrameLayout으로 (공통적인 부분을 제외한) 바꿔 표시될 뷰만 수정하는 것이 훨씬 빠르기 때문이다. AppBar vs ToolBar vs ActionBar..

모바일/RIBs

[RIBs-Tutorial-2]

목표 부모 RIB와 통신하는 자식 RIB 생성 부모의 인터랙터가 원하면 자식 RIB를 탈부착하기 view-less RIB 만들기 부모 RIB가 처음 로드될 때 자식 RIB를 첨부하기 RIB 유닛 테스팅 산출물 어떤 형태 이런 형태 프로젝트 구조 플로우 플레이어가 로그인 -> 스타트 게임 버튼을 누른다. 이때 LoggedOut 이 Root RIB에게 사용자의 로그인 액션을 알려줄 것이다. 그 뒤 root router가 LoggedOut에서 LoggedIn RIB로 제어권을 넘겨 줌. loggedIn 은 뷰리스 RIB라서 딱히 보여주는건 없고 그냥 LoggedOut에서 OffGame의 뷰를 보여주기만 한다. root router는 LoggedOut의 인터랙터의 리스너로 여겨지고 이것을 통해 LoggedOut..

모바일/RIBs

[RIBs-Tutorial-1]

참고 링크 : github.com/uber/RIBs/wiki/iOS-Tutorial-1 목표 RIB의 다양한 조각(piece) 이해하기 서로 어떻게 상호작용하고 통신하는지 이해하기 산출물 두개의 플레이어의 이름을 입력하고 로그인 버튼을 누르면 Xcode 콘솔에 해당 플레이어들의 이름이 출력됨 player1 vs player2 프로젝트 구조 (파파고 번역...) 우리가 제공하는 보일러 플레이트 코드는 두 개의 RIB로 구성된 iOS 프로젝트를 포함하고 있다. 앱이 시작되면 AppDelegate는 루트 RIB를 구축하고 애플리케이션에 대한 제어를 전송한다. 루트 RIB의 목적은 RIBs 트리의 루트 역할을 하고 필요할 때 해당 하위 트리에 제어를 전달하는 것이다. 루트 RIB의 코드는 대부분 Xcode 템플..

모바일/RIBs

[RIBs-Tutorial-0] iOS RIBs 설치, Xcode에 파일 만들기 [왕초보용]

참고 링크 : github.com/uber/RIBs#installation-for-ios 해당 게시물은 github.com/uber/RIBs/wiki/iOS-Tutorial-1 을 공부하기 위해 개인적으로 적어 놓은 것입니다. 저도 왕왕왕초보라 틀린 부분이 있을 수 있습니다ㅠㅠ! 참고만 해주세요. iOS에 RIBs를 설치하고 Xcode에 파일을 만들어 보자! 나는 CocoaPod을 사용했기 때문에 그 과정을 적겠다. 1. CocoaPods 설치 $ sudo gem install cocoapods 1-1. CocoaPods의 라이브러리를 저장할 파일로 이동 $ cd /(원하는 파일 경로) 혹은 그냥 cd 뒤로 빨간 박스친 파일 명을 Shift 누른 채 드래그하면 쉽다. 1-2. CocoaPod init $..

얌얌념념
'모바일' 카테고리의 글 목록