일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- C++
- Android
- C
- Flutter TextField
- Django REST
- Android P
- 안드로이드
- FLUTTER
- livedata
- kodility
- NDK
- Django REST Android
- 코틀린
- Kotlin
- Django REST framework
- UWP
- C/C++
- RxJava
- 안드로이드 구글맵
- flutter firestore
- 알고리즘
- Python
- android push
- 프로그래머스
- dart
- Rxjava2
- RxAndroid
- Java
- android architecture component
- mfc
- Today
- Total
목록Java,Android (120)
개발하는 두더지
Cold ObservableObservable 객체 사용구독 시 데이터 발행lazy 접근법웹 요청, 데이터베이스 쿼리등이 사용되며 내가 요청할 때 결과를 받음 Hot ObservableConnectableObservable 객체 사용구독 여부와 상관없이 데이터 발행구독 시점으로 데이터를 받음마우스 이벤트, 키보드 이벤트, 시스템 이벤트, 센서 이벤트, 주식 가격 이벤트 등에 사용
Java8 LambdaJava8에서 Lambda 표현식을 지원합니다.이전 버전에서는 익명 클래스로 구현해야했습니다. build.gradle 설정compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } 예를들어 버튼에 클릭리스너를 달아준다고 했을 때 보통 아래처럼 사용합니다.btn.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { } }); Lambda를 쓴다면?btn.setOnClickListener( v -> { } );btn.setOnClickListener( (..
android.app.Application cannot be cast to xxxx 에러가 발생한다면 ? Custom Application 클래스를 사용한다면 AndroidManifest.xml 에 반드시 name을 설정해줘야 한다.AppApplication.java 파일을 만들고 Application 을 상속받았다.
DI란?Dependency Injection 의존성 주입구성요소간의 의존 관계가 소스코드 내부가 아닌 외부 설정 파일등을 통해 정의되게하는 디자인 패턴중 하나이다.예를들면, 카페에서 커피를 만드는데 커피 머신이 어떤 부품으로 구성되어있는지 바리스타는 알필요가 없다는 개념으로 보면 될 것 같다.이렇게 분리시켜 놓으면 객체의 생성과 사용을 분리시킬 수 있고, 재사용이 유연해진다. Dagger란?DI를 도와주는 Framework으로 의존성 주입 관계를 annotation을 이용해 표현한다.Dagger1은 Square에서 처음 만들었고 Dagger2는 Google이 관리 @Module + @Provides => 의존성 제공@Inject => 의존성 요청@Component => Module과 Inject 사이의 ..
Drawer Navigation 이란?Hambuger, Sandwich 라고 불리는 보통 왼쪽 상단에 위치하는 메뉴버튼을 클릭하거나 손가락으로 화면 왼쪽을 스와이프하여 나오는 뷰를 말합니다.모바일 디바이스는 화면이 작아서 모든 UI를 담을 수 없습니다. Toolbar, Fragment와 같이 앱의 Depth (Activity 이동 최소화) 를 줄일 수 있는 뷰를 제공하게 되었습니다. 아래에서 Drawer Navigation을 적용하는 방법을 알아보겠습니다. 실행 결과 소스 코드 build.gradle 아래 2개를 추가해줘야 사용 가능합니다.dependencies { ... // DrawerLayout compile 'com.android.support:support-v4:26.1.0' // Navigat..
포스팅 이유서비스 앱 개발이나 토이 프로젝트를 진행하면서 빠르게 초기 스켈레톤 구조를 구성하기 위해 포스팅을 합니다.저는 아래와 같은 상황일 때 코드를 줄이기 위해 사용합니다.1. ActionBar 대신 Toolbar를 사용할 때2. Toolbar를 xml, activity 마다 정의해서 코드가 중복될 때 프로젝트 시작시 자주 쓰는 스켈레톤 구조 style.xmlCustom Toolbar를 사용하기 위해 기본 AppTheme을 NoActionBar로 적용 BaseActivity.javaBaseActivity를 상속받은 Activity들은 toolbar 이름, 뒤로가기 버튼이 활성화된다.abstract public class BaseActivity extends AppCompatActivity { priv..
Dalvik , ART 란 ? Dalvik, ART 를 알아보기전 배경을 먼저 알아보자. 일반적인 컴파일 언어는 CPU의 아키텍쳐와 플랫폼의 환경에 맞추어 기계어로 번역된다. 한마디로 사람이 작성한 언어를 CPU가 알아 볼 수 있는 언어로 번역하는 것이다. 하지만 자바의 경우, 한가지 CPU의 아키텍쳐나 환경에 맞추는 것이 아닌 바이트코드라는 것으로 컴파일 되며, 이를 실행하기 위해 자바 가상 머신이 필요하다. 자바는 바이트코드만으로 여러가지 아키텍쳐나 플랫폼에서 작동할 수 있도록 하는 것이 목표이기 때문이다. 자바 가상 머신인 JVM을 사용할 수 있지만 라이선스 문제로 구글에서 Dalvik VM을 따로 개발해서 안드로이드에 넣었다. Dalvik VM32비트만 지원JIT 컴파일러 사용 ( Just In ..
ADB ( Android Debug Bridge ) 란 ? 간단하게 설명하자면 에뮬레이터나 단말기에 연결해주는 명령줄 도구입니다.설치된 App 리스트를 볼 수 있고, Shell 명령어를 직접 입력할 수 있습니다. adb 도구 경로는 android_sdk/platform-tools 에 위치합니다. WINDOWS의 경우 Users\사용자명\Appdata\Local\Android\sdk\platform-tools MAC의 경우 (확인중) 자세한 내용은 아래 링크 참조 https://developer.android.com/studio/command-line/adb.html?hl=ko#directingcommands 자주 쓰일만한 목록 명령어 기능 adb devices 어떤 에뮬레이터/기기가 연결되어 있는지 출력..