반응형 ANDROID/Android 앱 프로그래밍35 [Android] 매니페스트(Manifest), 리소스(Resource) 그리고 그래들(Gradle) 모든 내용은 Do it! 안드로이드 앱 프로그래밍을 바탕으로 정리한 것입니다. 안드로이드 앱은 '자바 코드'와 '리소스'로 구성됨 자바 코드에서는 앱의 흐름과 기능을 정의하고, 리소스에서는 레이아웃이나 이미지처럼 사용자에게 보여주기 위해 사용하는 파일이나 데이터를 관리함. 매니페스트(Manifest) 설치된 앱의 구성 요소가 어떤 것인지, 어떤 권한이 부여되었는지 시스템에 알려주는 역할 모든 안드로이드 앱은 가장 상위 폴더에 매니페스트 파일(AndroidManifest.xml)이 있어야 하고, 이 정보는 앱이 실행되기 전에 시스템이 알아야 할 내용들을 정의하고 있음 매니페스트의 주요 역할 앱의 패키지 이름 지정 앱 구성 요소에 대한 정보 등록(액티비티, 서비스, 브로드캐스트 수신자, 내용 제공자) 각 구.. 2021. 6. 16. [Android] 위험 권한(Permission) 부여하기 모든 내용은 Do it! 안드로이드 앱 프로그래밍을 바탕으로 정리한 것입니다. 위험 권한 대부분 주요 권한들은 개인 정보가 담겨 있는 정보에 접근하거나 개인정보를 만들어 낼 수 있는 단말의 주요 장치에 접근할 때 부여됨 매니페스트에 넣어준 권한은 앱을 설치할 때 사용자가 허용하면 한꺼번에 권한이 부여되는데 마시멜로(API 23)부터는 중요한 권한들을 분류하여 설치 시점이 아니라 앱을 실행했을 때 사용자로부터 권한을 부여받도록 변경 일반 권한과 위험 권한 *일반 권한(Normal Permission) - 앱을 설치할 때 사용자에게 권한이 부여되어야 함을 알려주고 설치할 것인지 물어봄 → 사용자가 부여할 권한들을 보고 수락하면 앱이 설치되고 앱에는 해당 권한들이 부여됨 *위험 권한(Dangerous Perm.. 2021. 6. 15. [Android] 브로드캐스트(Broadcast) 모든 내용은 Do it! 안드로이드 앱 프로그래밍을 바탕으로 정리한 것입니다. 브로드캐스트 수신자(Broadcast Receiver) 브로드캐스팅(Broadcasting) : 메시지를 여러 객체에 전달하는 것 → 안드로이드는 여러 앱 구성 요소에 메시지를 전달할 때 브로드캐스팅을 사용함 (앱과 앱 사이, 앱과 시스템 사이의 이벤트 전달) 안드로이드 4대 앱 구성 요소 중 하나 AndroidManifest 파일에 등록해야 시스템이 알 수 있고 화면도 없게 됨 매니페스트 등록 방식이 아닌 소스코드에서 registerReceiver() 메서드를 사용해서 시스템에 등록할 수 있음 브로드캐스트 수신자 등록하고 사용하기 브로드캐스트 수신자는 태그 안에 태그를 넣어 어떤 인텐트를 받을 것인지 지정 태그 안에 태그의 .. 2021. 6. 11. [Android] 서비스(Service) 모든 내용은 Do it! 안드로이드 앱 프로그래밍을 바탕으로 정리한 것입니다. 서비스(Service) 백그라운드에서 실행되는 앱의 구성요소/프로세스 *백그라운드 : 화면 뒤의 공간 👆 서비스도 액티비티와 같이 앱의 4대 구성요소(액티비티, 서비스, 브로드캐스트 수신자, 내용 제공자) 중 하나! → 시스템에서 관리하기 때문에 액티비티처럼 서비스도 Manifest 파일에 꼭 등록해야 함! 서비스의 실행 원리와 역할 [역할] 단말이 항상 실행되어 있는 상태로 다른 단말과 데이터를 주고 받거나 필요한 기능을 백그라운드에서 실행 → 실행된 상태를 계속 유지하기 위해 서비스가 비정상적으로 종료되더라도 시스템이 자동으로 재실행함! 👆 서비스를 시작하기 위해 액티비티에서 startServcie() 메서드를 호출 sta.. 2021. 6. 9. [Android] 탭(Tab)과 바텀 내비게이션(Bottom Navigation) 모든 내용은 Do it! 안드로이드 앱 프로그래밍을 바탕으로 정리한 것입니다. 일반적으로 모바일 단말은 화면 크기가 작기 때문에 하나의 화면에 너무 많은 구성 요소를 넣으면 성능이나 사용성 면에서 좋지 않음. 안드로이드의 경우에도 하나의 액티비티를 최대한 많이 분리시켜서 하나의 화면에 보이는 뷰의 개수를 줄이는 것이 좋음! 👆 BUT, 하나의 화면에 여러 가지 구성 요소를 넣어두고 필요할 때 전환하여 보여주는 것이 좋을 때도 있음 탭(Tab) : 몇 개의 버튼을 두고 그중 하나의 버튼을 눌러 서브 화면을 전환하는 방식 내비게이션(Navigation) 위젯 상단 탭과 하단 탭(Bottom Navigation)으로 구분할 수 있음 상단 탭은 액션바에 탭 기능을 넣어 보여주는 방법으로 제공됨 하단 탭은 별도의.. 2021. 6. 8. [Android] 프래그먼트(Fragment) 모든 내용은 Do it! 안드로이드 앱 프로그래밍을 바탕으로 정리한 것입니다. 프래그먼트(Fragment) 🤷♀️ 리니어 레이아웃 안에 다른 레이아웃을 추가하거나 각각의 레이아웃 안에 필요한 뷰를 넣어 화면을 구성하는 방법은? 😩 여러 개의 레이아웃을 넣어 중첩시킨 후 가시성 속성으로 필요한 레이아웃만 보이게 하는 방식으로 구현.. 각각의 레이아웃이 동시에 보이는 상태인지 아닌지에 대한 정보 등 코드가 많이 복잡해짐 🙋♀️ 하나의 액티비티에 여러 개의 부분 화면을 올려주는 방법? 🤨 Activity 클래스와 ActivityGroup 클래스를 사용하면 구현이 가능함. 하지만 액티비티는 하나의 화면을 독립적으로 구성할 때 필요한 여러 가지 속성들을 사용하게 되고, 안드로이드 시스템에서 관리하는 앱 구성 .. 2021. 5. 31. 이전 1 2 3 4 5 6 다음 반응형