목록전체 글 (192)
안드로이드 개발자의 창고

출처 : 안드로이드 앱스쿨 2기 윤재성 강사님 수업 PPT 📖 Location GPS : Global Positioning System 단말기와 네트워크 망, 위성 등을 모두 연결해 현재 위치를 측정할 수 있는 시스템 안드로이드는 단말기 내부에서 가용한 위치 측정 수단을 모두 동원해 위치를 측정하고 있다. 애플리케이션에 측정된 위치 값을 가져다 사용할 수 있다. Porovider 안드로이드는 위치 측정을 위해 위치 정보 제공자를 선택해서 사용하며 가급적이면 모든 위치 정보 제공자를 사용하는 것이 좋다. GPS Provider : GPS 위성과 통신하여 3각 측량 방법을 이용해 위치 정보를 습득한다. 위성과의 전파 송수신이 방해가 되는 요인(방해전파, 실내, 건물내, 계곡 등)이 있으면 정확한 위치를 측정..

출처 : 안드로이드 앱스쿨 2기 윤재성 강사님 수업 PPT 📖 Sensor 스마트폰에는 수십가지의 센서가 장착되어 있으며 이를 통해 사용자에 대한 정보를 수집할 수 있다. 스마트폰이 부팅되면 단말기에 장착되어 있는 모든 센서들이 동작하기 시작하고 애플리케이션에서는 이 값을 받아와 사용할 수 있다. 예제 코드 단말기 센서 목록 출력 class MainActivity : AppCompatActivity() { lateinit var activityMainBinding: ActivityMainBinding override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) activityMainBinding = Activ..
서론 Android 스튜디오 프로젝트 설정 | Android용 Maps SDK | Google for Developers 의견 보내기 Android 스튜디오 프로젝트 설정 컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요. 이 페이지에서는 빠른 시작에 자세히 설명되어 있는 Google 지도 developers.google.com GoogleMap API 키를 local.properties에 저장해서 관리하라는 구글 공식 문서를 이용해서 키 값을 따로 저장하고 있었다. 그러다가 코드 내부에 불러올 일이 생겨서 구현하다가 unresolved reference : BuildConfig이 발생했다. 해결 방법 unresolved reference : BuildConfig in Kotl..

출처 : 안드로이드 앱스쿨 2기 윤재성 강사님 수업 PPT 📖 Device Information 안드로이드 애플리케이션에서 단말기의 정보가 필요할 경우 정보를 가져다 사용할 수 있다. 안드로이드 8.0 부터 단말기 일련번호, 유심 일련번호 등 단말기의 고유한 정보는 사용할 수 없다. TelephonyManager 전화 기능과 관련된 정보를 가져올 수 있다. 정보 코드 전화번호 line1Number SIM 국가 코드 simCountryIso 모바일 국가코드 + 모바일 네트워크 코드 simOperator 서비스 이름 simOperatorName SIM 상태(통신 가능 여부, PIN LOCK 여부) simState 음성 메일 번호 voiceMailNumber 예제 코드 class MainActivity : A..

출처 : 안드로이드 앱스쿨 2기 윤재성 강사님 수업 PPT 📖 Screen Rotation layout 폴더에 수식어를 추가하면 회전에 따른 화면을 따로 적용할 수 있다. layout-port : 세로 화면 layout-land : 가로 화면 View 복원하기 안드로이드에서 화면 회전이 발생하면 화면을 새롭게 만들게 되는데 일부 UI 요소들은 초기 값으로 설정되기 때문에 복원하는 작업을 해야 한다. onSaveInstanceState 메서드에서 복원 시 필요한 값을 저장한다. onCreate 메서드에서 복원 작업을 해준다. 화면 회전 막기 화면이 회전되는 것을 막고자 한다면 AndroidManifest.xml의 Activity 태그에 screenOrientation 속성으로 설정하면 된다. 예제 코드 l..

출처 : 안드로이드 앱스쿨 2기 윤재성 강사님 수업 PPT 📖 Density 안드로이드는 단말기의 해상도에 따라 이미지를 선택할 수 있다. 고해상도 단말기에서 선명한 이미지를 보여주는 목적으로 사용한다. 같은 이미지를 해상도 별로 나눠 준비해놓으면 해상도에 맞는 이미지를 자동으로 사용해준다. 관리가 힘들다는 단점이 있다. 해상도에 따른 분류 dpi 배율 ldpi ~ 120 0.75 mdpi ~ 160 1.0 hdpi ~ 240 1.5 xhdpi ~ 320 2.0 xxhdpi ~ 480 3.0 xxxhdpi ~ 640 4.0 drawable 이미지 적용 단말기 해상도에 해당하는 디렉토리에 이미지가 있을 경우 원본 크기 그대로 그린다. 해상도에 해당하는 디렉토리에 이미지가 없을 경우 인접한 해상도 디렉토리의..

출처 : 안드로이드 앱스쿨 2기 윤재성 강사님 수업 PPT 📖 Localization(지역화) 하나의 애플리케이션으로 다양한 언어 및 국가를 지원하기 위한 개념 안드로이드는 res 폴더에 있는 리소스 폴더에 국가 코드를 추가하여 지역화를 할 수 있다. res 폴더 내의 폴더에 수식을 설정해주면 수식어와 일치하는 단말기에 대해 이미지, 문자열 등을 선택해서 사용할 수 있도록 제공할 수 있다. 예제 코드 Localization Flie 파일 생성 시 Locale을 추가하여 나라를 설정한다. Localization을 할 파일 이름을 동일하게 하는 것이 중요하다. activity_main.xml MainActivity.kt class MainActivity : AppCompatActivity() { latein..

출처 : 안드로이드 앱스쿨 2기 윤재성 강사님 수업 PPT 📖 9Patch Image View의 배경으로 이미지를 지정할 때 이미지의 길이보다 View의 길이가 더 길면 이미지가 늘어나게 된다. 9 patch 이미지는 이미지의 늘어날 부분을 설정한 이미지이다. 늘어나는 영역으로 설정된 부분만 늘어나고 그렇지 않는 부분은 늘어나지 않기 때문에 이미지가 늘어나더라도 이상하게 나타나지 않게 할 수 있다. 예제 코드 drawable/bubble2.9.png 좌측 & 상단 부분 : 이미지가 확대 되는 영역 우측 & 하단 부분 : 이미지 안의 컨텐츠(내용) 부분이 확대 되는 영역 Image VS 9Patch Image 비교

출처 : 안드로이드 앱스쿨 2기 윤재성 강사님 수업 PPT 📖 Image Resource 안드로이드는 drawable 폴더에 이미지를 넣어서 이미지를 사용할 수 있으며 xml 통해 이미지를 새롭게 구성하여 사용할 수 있다. 여러 이미지를 겹쳐 하나의 이미지를 만들 때 패턴 이미지를 만들 때 상태에 따른 이미지를 만들 때 등등 drawable vs mipmap drawable mipmap 넣는 이미지 애플리케이션 내에서 사용할 이미지 아이콘으로 사용할 이미지 관리하는 이미지 종류 Bitmap을 포함하여 xml 파일을 통해 만든 이미지, 코드를 통해 만든 이미지, 안드로이드에서 화면이 그릴 수 있는 요소들을 모두 포함 jpg, png, gif 파일로 부터 읽어온 이미지 데이터를 관리 예제 코드 drawabl..

출처 : 안드로이드 앱스쿨 2기 윤재성 강사님 수업 PPT 📖 BasicResource 리소스 파일 : 애플리케이션에서 사용하는 다양한 미디어 파일, 데이터 파일 등등 안드로이드는 리소스 파일들을 res 폴더를 통해 관리한다. 안드로이드는 이미지와 xml 파일을 리소스로 관리하고, xml 파일을 안드로이드에서 정의한 데이터들을 관리하는 용도로 사용한다. xml 파일로 관리되는 데이터들은 언어, 크기 등에 따라 단말기에 대응할 수 있도록 처리할 수도 있다. 문자열 관리 문자열, 문자열 배열을 xml에 등록해서 사용할 수 있다. 다국어 지원을 위해 사용한다. 색상 관리 안드로이드는 단말기 제조사가 자신의 단말기에 안드로이드 OS를 넣게 된다. 이 때, 단말기마다 지원하는 색상, 처리 방식 등이 달라 원하는 ..