안드로이드와 앱 22

팀프로젝트 [MenuJo]

사전준비 주제 정하기SNS앱 프로젝트가 시작되고 주제는 생각보다 빨리 정해졌다. 첫 아이디어를 내주신 팀원분께서 음식을 말씀하셨는데 자료 찾기도 수월하고 사용자 타겟도 까다롭지 않다는 강점이 마음에 들어 적극찬성한 결과, 메뉴를 소개하는 앱으로 결정했다. 처음에는 맛집을 소개하는 방향이었는데 음식을 추천하는 앱으로 교정했다. 점메추처럼  와이어프레임 만들기프로젝트명과 역할분담은 화면 구성에 따라 어떤 기능이 들어갈지 알 수 있으므로 와이어프레임부터 만들어보며 결정하기로 했고 githup과 함께 pigma에 초대됐다. API는 4로 설정했고 pigma는 아이폰규격이라 안드로이드와 달라서 가장 유사한 규격에 제작하고 안드로이드 스튜디오에서는 참고해서 만들면 된다고 한다. 각 화면을 구분하고 모든 팀원이 자유..

개인 프로젝트 [회원가입 앱]

2024. 06. 19 시작 ! Lv.1 SignInActivity 로그인조건 : 새 프로젝트를 만들고 MainActivity의 이름을 SignInActivity로 바꿔주세요.로고 이미지는 원하는 이미지로 넣어주세요. 아이디, 비밀번호를 입력 받는 EditText를 넣어주세요.(미리보기 글씨(플레이스 홀더) 포함) 비밀번호 EditText는 입력 내용이 가려져야 합니다.(●●● 처리) 로그인 버튼을 누르면 HomeActivity가 실행되도록 구현합니다.(Extra로 아이디를 넘겨줍니다.) 아이디/비밀번호 모두 입력 되어야만 로그인 버튼이 눌리도록 구현합니다.(“로그인 성공”이라는  토스트 메세지 출력하도록 구현) 아이디/비밀번호 중 하나라도 비어 있다면 “아이디/비밀번호를 확인해주세요” 라는 토스트 메세..

안드로이드 앱개발 4주차 강의 [액티비티]

액티비티 Activity사용자가 직접 상호작용하는 창 windowsetContentView()를 통해 XML을 UI로 설정  안드로이드 4대 컴포넌트액티비티 Activity서비스 Service : 백그라운드에서 오랜 시간 동안 실행되어야 하는 작업을 수행하는 역할브로드캐스트 리시버 Broadcast Receiver : 앱이 안드로이드 시스템으로부터 발송되는 다양한 이벤트, 정보를 받을 수 있게 해주는 역할콘텐트 프로바이더 Content Provider : 앱 간 데이터 공유할 수 있게 해주는 역할생명주기와 콜백메소드 onCreate()호출시기 : 액티비티 생성시 호출특징 : 필수이며 생명주기 단 한번만 수행구현사항 : 레이아웃, 뷰, 바인딩, 설정 등 값 초기화나 시작로직. setContentView같은..

안드로이드 앱개발 3주차 강의 [UI]

UI UserInteface XML Layout Editor : 드래그 앤 드롭 방식. WYSIWYG(what you see is what you get) 에디터XML 코드 : 태그나 속성을 코드로 직접 입력하는 방식. Copy & paste를 이용한 편집이 효율적    뷰 View 안드로이드 앱의 UI를 구성하는 기본 단위View클래스는 모든 UI 컴포넌트들의 부모 클래스이다.  위젯 Widget : View의 서브 클래스, 앱 화면을 구성하는 시각적인 모양을 지닌 UI요소 레이아웃 Layout : ViewGroup의 서브 클래스, 뷰를 포함하면서 정렬하는 기능을 지닌 UI요소해상도는 부록에 정리되었다.   위젯 Widget TextView 화면에 text 표시 EditText 입력이 가능한 Text ..

안드로이드 앱개발 강의 부록

안드로이드 앱개발 1~2주차 강의 부록  안드로이드 플랫폼      Linux커널 ART(안드로이드 런타임)는 스레딩 및 하위 수준의 메모리 관리와 같은 기본 기능에 Linux커널을 사용 Android가 Linux커널의 주요보안기능을 활용, 다양한 하드웨어 디바이스 드라이버 제공  HAL(하드웨어 추상화 계층) 상위 수준의 JavaAPI 프레임워크에 기기 하드웨어기능을 노출하는 표준인터페이스 제공 프레임워크 API기기가 하드웨어에 액세스하기 위해 호출을 수행하면  Android시스템이 해당 하드웨어 구성 요소에 대한 라이브러리 모듈을 로드  Android런타임 Android 버전5.0 (API레벨21)이상 : 각 앱이 자체 프로세스 내에서자체 ART 인스턴스로 실행 ART는 DEX파일을 실행하여 저 용량..

안드로이드 앱개발 1 ~ 2주차 강의 [개요 ~ 프로젝트]

안드로이드 Android휴대전화를 비롯한 휴대용 장치를 위한 운영체제, 미들웨어, 사용자 인터페이스, 표준 응용 프로그램을 포함하고 있는 모바일 운영체제이자 모바일 플랫폼  모바일 플랫폼 : 모바일 운영체제 + 애플리케이션 프레임워크모바일 운영체제 : 모바일기기에서 실행되는 운영체제. 앱 실행을 쉽게 해준다.운영체제(Operating System) : 시스템 하드웨어를 관리하고 응용 소프트웨어를 실행하기 위해하드웨어 추상화 플랫폼과 공통 시스템 서비스를 제공하는 시스템 소프트웨어 애플리케이션 프레임워크 : 앱 개발을 쉽게 해준다.  안드로이드 에코 시스템 : 단말제조사, 앱개발자, 이동통신사가 함께 만든 생태계로 점유율을 높일 수 있는 이유 중 하나 2005년 구글이 안드로이드를 인수하고 2008년 오픈..

개인 프로젝트 [콘솔형 키오스크]

Lv0 계획시작 전 어떻게 구현할 것인지에 그려 보는 과정 무엇을?카페메뉴 키오스크 만들기대분류 : 1. 음료 2. 디저트 3. 상품   중분류 :음료 1.1 커피 1.2 Non커피디저트 2.1 타르트 2.2 케이크상품 3.1 소분류 :음료(커피) 1.1.1아메리카노 1.1.2카페라떼 1.1.3카페모카 1.1.4카라멜 마키아또음료(Non커피) 1.2.1말차라떼 1.2.2밀크티 1.2.3망고스무디 1.2.4자몽에이드(나중에 자몽티로 변경됐다.)디저트(브레드) 2.1.1에그타르트 2.2.2피칸타르트 2.2.3애플시나몬타르트 2.2.4딸기타르트디저트(케이크) 2.2.1티라미수 2.2.2치즈케이크 2.2.3갸또쇼콜라 2.2.4얼그레이케이크상품 3.1.1머그 3.1.2 텀블러(상품도 더 많았는데 줄였다.) 어떻게..

개인 프로젝트 [콘솔형 계산기]

계산기 만들기 계산기 앱을 만들라는 줄 알고 조건이 잘 이해되지 않아 매니저님께 확인했는데 코드로만 계산기를 만드는 거였고 제약조건이 있는 게 아니었다. 너무 어렵게 생각하고 있었다. Q. 입력값에 대해... 정수만? 정수 실수 모두? 입력개수나 입력방법은?A. 입력에 특정한 제한은 없었다.Q. '-1을 입력 할 때까지 계산 반복하기 (1번 +, 2번 -, 3번 *, 4번 /, 5번 %)' 의 의미?A. 반복한다는 의미가 '자동으로 무한반복한다'는 해석돼서 1을 입력하면 해당 연산을 무한반복 시키는 건지, 각 연산을 돌아가며 반복하라는건지 의문이었는데 무한반복이 아니었고, 명령어였다. 1을 입력하면 더하기가 시행되도록 하는 거였다.  입력값은 사용자의 타이핑으로 받기로 하고 각 레벨에 맞는 코드를 작성해..

사전캠프 3주차 강의 [MBTI 테스트]

요약사전준비 : 그라데이션 배경, 뷰페이저, 질문지xml : 코드와 팔레트로 화면 생성, 라디오그룹 생성kotlin : 뷰페이저 관련, 질문 응답처리, MBTI 테스트 완성 후 사용문제해결 및 회고  1. 사전준비 1.1 그라데이션 배경 만들기 로 그라데이션 색깔 2개를 입력하면 된다.   1.2 Viewpager 준비하기1.2.1 라이브러리 추가 : Gradle - build.gradke.kts(Module:app) - viewpager2추가 - Syncimplementation("androidx.viewpager2:viewpager2:1.0.0") 1.2.2 어답터adapter : java - New - Kotlin class - ViewPagerAdapter.kt 생성뷰페이저를 상속받아 만드는..

사전캠프 2주차 강의 [로또번호 생성기]

요약사전준비 : 공 만들기, 배경 만들기xml : 코드와 팔레트로 화면 생성kotlin : 컴포넌트에 따른 코드 입력, 이벤트에 따른 버튼 코드 입력, 로또번호 생성기 완성 후 사용문제해결 및 회고  1. 사전준비 1.1 공 만들기drawable - New File - circle_color.xml 생성 xml선언부 로 첫줄을 쓰는 것은 표준버전을 준수하고 있다는 것과 UTF-8유니코드 인코딩되었음을 의미한다. Shape 모양을 만들다. oval 원 Solid 색을 채우다. 원이므로 width, height의 size를 동일하게 설정한다.    1.2 배경 만들기drawable - New File - bg.xml 생성. Rectangle 직사각형 stroke 테두리       ..