안드로이드 (34) 썸네일형 리스트형 [안드로이드] 안드로이드 실행환경에 대한 간단한 설명 안드로이드의 실행환경 구성 Linux Kernel Library(Android Runtime 포함) Application Framework Application 1. Linux Kernel 안드로이드는 리눅스 위에서 돌아간다. 그리고 리눅스 커널을 사용하여 다양한 하드웨어(Bluetooth, Wi-Fi, GPS, Camera 등), 메모리 관리 등의 작업을 수행한다. 2. Library 스마트폰은 손안에 들어갈 정도로 작은 휴대기기이다. 그렇다면 이러한 휴대기기를 상대적으로 적은 용량을 이용하여 동작시켜야 하기 때문에 libc 혹은 libm와 같은 메모리 소비가 적은 라이브러리가 적합하다. 이 계층에서는 Surface Manager는 Window Manager의 화면 접근에 대한 처리, Media Fra.. [안드로이드] 2021-04-26 Kotlin In Action 정리 1. 함수와 변수 - Kotlin은 함수를 정의할 때 fun 키워드를 사용한다. fun makeFunc(name : String){ return "무야호!" } - 굳이 함수를 클래스 안에 넣을 필요 없이, 최상위 수준에서 정의할 수 있다. lateinit var temp:String fun makeTopLevelFunc(){ } class MainActivity : AppCompatActivity() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) } } - 코틀린에서 함수의 구조는 아래와 같다. fun 함수이름 ( 파라미.. [안드로이드] 객체 지향 프로그래밍(OOP)에 대해 알아보자 Java를 처음 공부한 대학교 2학년 때 처음 들었던 객체지향을 한 번쯤 정리해보고 싶었다. 그러다 문득 오늘 아침에 정리를 하고싶어서 글을 쓰는데 어떻게 써야할지 대략적으로 난감하다. 뻘소리지만 한 번쯤 읽어주고, 아니다 싶으면 과감하고 휘향찬란하게 저를 가르쳐주세요.... kgo0748@gmail.com로 메일주세요 훟힣훟헿 OOP가 뭐지.... 뭘까.... 뭐라고 말하면 좋을까.... 분야를 막론하고 공부를 할 때 항상 예시를 통하여 그 개념을 이해하려는 습관이 있다. 그래서 처음 OOP를 배울때 들었던 정의보다 이해하기 위해 생각한 예시를 들어보겠다. 우리가 흔히 사용하는 리모콘과 TV로 예시로 들겠다. 그리고 그 리모콘을 하나의 객체라고 생각해보자. 그 리모콘에는 TV의 전원을 On/Off 할 .. [안드로이드] Databinding(데이터 바인딩) 이전에 LiveData에 대해 정리하면서 나중에 dataBinding과 MVVM, Room 등을 정리한다고 했었다. 그래서 이번에는 dataBinding에 대해 포스팅을 할 것이다. dataBinding은 무엇인가 안드로이드 개발 문서에 따르면 데이터 바인딩은 레이아웃의 UI 구성요소를 앱의 데이터 소스와 결합할 수 있도록 지원하는 라이브러리라고 나와있다. 내가 봐도 조금 어려운 문장들이어서 쉽게 풀어서 설명해보겠다. 안드로이드 개발을 할 때 xml 파일로 view를 만들어주고 java나 kotlin으로 Activity를 만들어준다. 그리고 Activity와 view를 연결해주는 작업을 하게 된다. 아래와 같이 말이다. val _btnLogin : Button = findViewById(R.id.main.. [안드로이드] Youtube Data 사용하기 1. Google Cloud Platform에서 API 사용 설정하기 앱에 내가 원하는 채널이 있다면, 해당 채널에 대한 Data가 당연히 필요하다. 그리고 이 Data를 받아오기 위해서는 Google API에서 제공하는 Youtube Data API v3를 사용해야 한다. 그럼 먼저 Google API에 들어가보자 구글 클라우드 플랫폼 바로가기 Google Cloud Platform 하나의 계정으로 모든 Google 서비스를 Google Cloud Platform을 사용하려면 로그인하세요. accounts.google.com 위 링크를 클릭하면 아래 그림과 같은 화면이 나오게 된다. 아래 화면에서 우리가 들어가야할 곳은 왼쪽 메뉴바에 있는 '라이브러리' 섹션이다. 해당 섹션에 들어가면 무수히 많은 AP.. [안드로이드] HttpURLConnection을 써보자 Intro 안드로이드 어플리케이션이 서버와 통신하기 위한 방법에는 HTTP통신과 Socket 통신 2가지가 있다. 그 중 정리한 내용은 HTTP통신으로서 URL 접속을 통해 데이터를 읽어오는 방법이다. 또한 이 정리에서는 HTTPURLConnection를 다룬다. Basis 안드로이드에서 HTTP통신으로 서버와 통신을 할 때 AsyncTask(비동기)로 통신을 해야한다. 왜냐하면 안드로이드의 메인쓰레드는 전부 UI 관련 처리를 위해 사용되기 때문이다. 따라서 비동기 방식을 사용하지 않고 개발자가 임의로 HTTPURLConnection을 하게되면 Runtime Exception, android.os.NetworkOnMainThreadException이 뜨고 ANR(Android Not Responding).. [안드로이드] Setting Preference 사용하기 (Java) SettingPreference *** Basis 오늘은 안드로이드 앱을 만들 때 자주 접하게 될 settingPreference에 대하여 정리했다. settingPreference는 Activity외에 다른 xml로 setting에 대한 메뉴를 먼저 정의해준다. 그 정의를 fragment로 불러들여와서 표현하는 형식이 바로 settingPreference다. deprecated 내가 쓰던 Preference는 deprecated되었다. API level 29에서 버려졌다. 마음이 아프다. 그래도 Use the AndroiX Preference Library라고 명시해주며, 대안책을 내놓았다. 갓글 이미지출처 : PreferenceScreen Android reference, 내 노트북 안드로이드 스튜디.. [안드로이드] Glide 사용하기 (Java) Glide Example 1. dependencies 추가하기 (앱 수준) * implementation 'com.github.bumptech.glide:glide:4.9.0' * annotationProcessor 'com.github.bumptech.glide:compiler:4.9.0' 두 문장을 build.gradle (Module:app)의 dependencies에 추가한다! 2. AndroidManifest.xml에 INTERNET 사용권한 추가하기 Glide를 사용할 때 기기 내부의 리소스를 불러오는 경우도 있지만 이미지 URL을 로드해서 보여주고자 하는 경우도 있다. URL 로드해서 이미지를 보여주는 경우를 위해 앱에 인터넷 사용 권한을 추가해준다. 아래 문장을 manifests->Andr.. 이전 1 2 3 4 5 다음