목록Android (18)
개발일지
1. implementation : 항상 적용. 2. debugImplementation : 디버그 빌드 시에만 적용. 3. releaseImplementation : 릴리즈 빌드 시에만 적용. 4. testImplementation : 테스트 코드를 수행할 때만 적용
try { val url = URL(URL) // 1. URL 객체 생성 val postconn = url!!.openConnection() as HttpURLConnection // 2. URL 연결 postconn.requestMethod = "POST" // 3. 요청방식 설정 postconn.setRequestProperty("Content-type", "application/json") // 4. 서버 Response Data 를 json 형식의 타입으로 요청 postconn.doOutput = true // 5. OutputStream 으로 POST 데이터를 넘겨주겠다는 옵션 var os: OutputStream = postconn.outputStream os.write(body.toStrin..
########This class was deprecated in API level 30.######### [AsyncTask] Params : doInBackground 파라미터 타입이며 execute 메소드 인자값 Progress: doInBackground 작업시 진행단위의 타입으로 onProgressUpdate 의 파라미터 타입 Result: doInBackground의 리턴값으로 onPostExecute 파라미터 타입 [사용법 4단계] 1. onPreExecute() : task 실행하기 전 UI thread 를 발생시키고 싶을 때 사용합니다. doInBackground() 실행되기 전에 호출되기때문에 보통 프로그레스바나 다이얼로그띄우는 코드를 넣습니다. 2. doInBackground(Para..

1. Glide 란? : 안드로이드에서 이미지를 빠르고 효율적으로 불러올 수 있게 도와주는 라이브러리 이미지, GIF, 비디오스틸의 로딩과 디코딩, 캐싱 등의 다양한 API 를 사용할 수 있다. 어떠한 종류의 이미지더라도 빠르고 부드럽게 스크롤하는 것을 목적으로 한다. 2. 사용방법 1) gradle dependencies 추가 (외부통신을 통해 이미지를 가져와야 한다면 인터넷 권한 manifest 에 추가) 2) 뷰에 이미지 로드하기 with() : View, Fragment, Activity 로 부터 Context 를 가져온다. load(): 이미지 로드. into() : 이미지를 보여줄 view 를 지정한다. 위에 함수들은 Glide 의 뼈대가 되는 기능들. Glide 는 단순히 로딩만 도와주는 것..
RecyclerView → 단지 recyclerview 항목 재활용하고 보여주는 역할 → adapter 와 소통 (adapter 에게 ViewHolder 받음) Adapter (실제 data 가지고 있음) → 필요한 ViewHolder 객체 생성하고 데이터를 ViewHolder 객체와 결합 ViewHolder (화면에 표시되는 아이템 뷰 저장 ) → 하나의 view 만들고 보관하는 일 // 재사용을 위해 목록에서 사라지는 뷰 임시저장 ~onCreateViewHolder : ViewHolder 생성되는 함수 (ViewHolder 객체 만들어주면 됨) ~onBindViewHolder : 생성된 ViewHolder 에 data binding 해주는 함수 getItemCount() 로 총 Item 갯수 몇개인지..

→ Android App Bundle은 앱의 모든 컴파일된 코드 및 리소스를 포함하며 APK 생성 및 서명을 Google Play에 맡기는 게시 형식입니다. 사용자가 앱을 다운 받을 시 앱의 다운로드 크기와 디스크 할당 크기 감소 사용자에게 필요한 기능 및 설정을 설치 중이 아닌 사용자가 요청할 때 제공 여러 개의 APK를 빌드하고 게시할 필요가 없어 효율적인 빌드 및 출시 관리 사용자의 기기 대신 APK 에 저장되는 압축되지 않은 기본 라이브러리를 사용하여 (Android 6.0 이상) 다운로드 크기, 디스크 할당 크기, 설치 시간 감소 → 각 사용자의 디바이스에 맞는 리소스와 구성품으로 구성된 APK 를 만들어 배포함으로써 사용자에게 다운로드의 시간을 줄여줌[ AAB 파일 생성 방법 ] 1. 안드로이..

→ 각각의 컴포넌트들 간에 메시지를 전달할 수 있는 방법을 제공해줌 정적으로 리시버 구현하기 → 리시버를 고정해서 등록해 놓고 원하는 intent에 반응하는 리시버 BroadCastReceiver 를 상속받아 onReceive()메서드를 오버라이딩 onReceive()메서드는 intent-filter을 통해 걸러진 intent를 받아들이는 곳 → 원하는 액션을 작성하면 됨 PendingIntent → 사용자가 notification 을 통해 특정한 동작을 할 때 실행되는 인텐트를 생성함 사용자가 앱위젯을 통해 특정한 동작을 할 때 실행되는 인텐트를 생성함 가지고 있는 Intent를 보류하고 특정 시점에 작업을 요청하도록 하는 특징이 있음 (미래의 특정 시점에 실행되는 인텐트를 선언함) getActivit..
lock 기능을 갖는 변수 public boolean block(long timeout) - 변수 상태가 open 될 때 까지 또는 time out 될 때 까지 현재 스레드는 block 한다. time out 으로 인해 대기가 해제되었을 때 false 반환하고 다른 스레드에 의해 conditionvariable 가 오픈되었을 경우 true 를 반환한다. public void close() - conditionvariable 를 닫은 상태로 만든다. 닫힌 상태에서 block() 메소드를 호출한 모든 스레드는 모두 대기상태로 유지된다. public void open() - conditionvariable 을 오픈상태로 만든다. 닫힌 상태에서 block() 메소드를 호출한 모든 스레드는 conditionvar..
gradle Gradle 스크립트는 groovy를 사용해서 만든 DSL이다. 모든 Gradle 스크립트는 두가지 개념으로 구성되어 있는데 projects와 tasks 이다.모든 Gradle 빌드는 하나 이상의 projects로 구성된다. 그리고 각 project는 하나 이상의 task들로 구성되어 있다. 이 task는 어떤 클래스를 컴파일하거나 JAR를 생성하거나 javadoc을 만드는 작업들을 의미한다 의존성이나 플러그인 설정 등을 위한 스크립트 파일이다. gradlew 유닉스용 실행 스크립트다. Gradle로 컴파일이나 빌드 등을 할때, 아래와 같이 하면 로컬에 설치된 gradle을 사용한다 gradlew.bat 원도우용 실행 배치 스크립트다. 원도우에서 실행 가능하다는 점만 제외하면 gradlew와..

람다식을 이용해서 호출하면 일시적인 범위 생김 → 그 범위 안에서 전달된 객체에 대해 it 또는 this 라는 Context Object 통해 접근 Context Object 를 참조하는 방법 (this, it) Return value 1) Context Object : this , it → Scope Function 람다식 내에서 Context Object 는 실제 객체명 대신 it, this 로 접근 ***this*** -run, with, apply 는 Context Object 를 this 로 참조 → 따라서 람다식 안에는 일반 클래스 멤버처럼 사용할 수 있음 (this 는 생략할 수 있지만 동일한 이름의 멤버가 있는 경우 구별할 수 없으니 가급적 Context Object에 대해서는 this 를..