일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- LOG
- itemAnimator
- ActivityResultContracts
- circlecrop
- onReceivedSslError
- application
- onResume
- navigation component
- webview
- notification bar
- Git
- Plugins
- ExifInterface
- 이미지 gps
- notification
- Blinking
- ChromeCustomTab
- shotcut
- kdoc-generator
- App Startup
- BottomSheetDialog
- Android
- requestPermission
- jsontokotlinclass
- 403 Error
- prettyJson
- skipcollapsed
- room
- notification setting
- datastore
- Today
- Total
목록분류 전체보기 (38)
Debbi Story
안녕하세요. Jetpack 라이브러리에 있는 App Startup을 알아보려합니다. 기존에는 Application 클래스에서 외부라이브러 등을 초기화를 했었습니다. class MyApplication : Application() { override fun onCreate() { super.onCreate() // initialize component } } 앱 시작 라이브러리는 애플리케이션 시작시 구성 요소를 초기화하는 간단하고 효율적인 방법을 제공합니다. 라이브러리 개발자와 앱 개발자는 모두 앱 시작을 사용하여 시작 시퀀스를 간소화하고 초기화 순서를 명시 적으로 설정할 수 있습니다. 초기화해야하는 각 구성 요소에 대해 별도의 콘텐츠 공급자를 정의하는 대신 앱 시작을 사용하면 단일 콘텐츠 공급자를 공유하..
안녕하세요. 안드로이드 SharedPreferences를 찾아보다 로컬 저장소에 값을 저장하는 방법을 정리 해보려합니다. 1. SharedPreferences https://developer.android.com/training/data-storage/shared-preferences?hl=ko 키-값 데이터 저장 | Android 개발자 | Android Developers 저장하려는 키-값 컬렉션이 비교적 작은 경우 SharedPreferences API를 사용해야 합니다. SharedPreferences 객체는 키-값 쌍이 포함된 파일을 가리키며 키-값 쌍을 읽고 쓸 수 있는 간단한 메서드를 제공합 developer.android.com 2. EncryptedSharedPreferences http..
CentOS 7 Tesseract-OCR 5.0.0 설치 에러 발생시 ImportError: libGL.so.1 on CentOS yum install mesa-libGL “make” command not found 시 yum groupinstall "Development Tools" tesseract configure시 에러 아래 .bashrc에 추가 vi ~/.bashrc export PKG_CONFIG_PATH=/usr/local/leptonica-1.79.0/lib/pkgconfig source ~/.bashrc leptonica , tesseract 모두 설치 후 .bashrc에 추가 export PATH=$PATH:/usr/local/tesseract-5.0/bin export LD_LIBRA..
windows 환경에서 했을때 오류, Linux 환경에서 해야함 참고. https://medium.com/swlh/distributing-python-packages-protected-with-cython-40fc29d84caf anaconda 환경일 경우 conda install cython 소스폴더와 같은 위치에 setup.py 생성 소스의 진입점 main.py 생성 ├── app | ├── __init__.py | ├── core.py │ └── main └── setup.py python setup.py build_ext --inplace python setup.py bdist_wheel unzip dist/app-0.1.0-cp36-cp36m-linux_x86_64.whl -d dist/app ..
문제 지민이는 자신의 저택에서 MN개의 단위 정사각형으로 나누어져 있는 M*N 크기의 보드를 찾았다. 어떤 정사각형은 검은색으로 칠해져 있고, 나머지는 흰색으로 칠해져 있다. 지민이는 이 보드를 잘라서 8*8 크기의 체스판으로 만들려고 한다. 체스판은 검은색과 흰색이 번갈아서 칠해져 있어야 한다. 구체적으로, 각 칸이 검은색과 흰색 중 하나로 색칠되어 있고, 변을 공유하는 두 개의 사각형은 다른 색으로 칠해져 있어야 한다. 따라서 이 정의를 따르면 체스판을 색칠하는 경우는 두 가지뿐이다. 하나는 맨 왼쪽 위 칸이 흰색인 경우, 하나는 검은색인 경우이다. 보드가 체스판처럼 칠해져 있다는 보장이 없어서, 지민이는 8*8 크기의 체스판으로 잘라낸 후에 몇 개의 정사각형을 다시 칠해야겠다고 생각했다. 당연히 8..
https://developer.android.com/guide/navigation/navigation-pass-data#supported_argument_types 위에 공식 문서에서 data를 전달 할 수 있는 타입을 확인하시고 이런식으로 data를 전달 받을 fragment에 argument 태그로 추가해줍니다. 사용자정의 타입도 전달 할 수 있고 Array타입으로도 넘길 수 있습니다. @Parcelize data class UserInfo( val name: String, val age: Int ): Parcelable 사용자정의 타입을 사용할 경우 Parcelable나 Serializable를 구현해야 합니다. 이전에는 Parcelable를 구현하려면 코드가길어지고 복잡했지만 @Parcelize..
일반적인 notification은 swipe시 사라지지만 swipe해도 사라지지 않고 계속 고정으로 떠있는 커스텀 notification은 만들어 보겠습니다. val contentIntent = Intent(context, MainActivity::class.java) contentIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP or Intent.FLAG_ACTIVITY_NEW_TASK) val contentPendingIntent = PendingIntent.getActivity( context, 123, contentIntent, PendingIntent.FLAG_UPDATE_CURRENT ) val refreshIntent = Intent(context, Noti..
developer.android.com/training/data-storage/room/accessing-data?hl=ko Room DAO를 사용하여 데이터 액세스 | Android 개발자 | Android Developers Room 라이브러리의 일부인 DAO(데이터 액세스 개체)를 사용하여 데이터베이스 테이블을 수정하는 방법 알아보기 developer.android.com Room 데이터베이스에 Insert 했을때 rowId를 반환 받을 수 있는데요. @Insert(onConflict = OnConflictStrategy.REPLACE) suspend fun insertTask(task: TodoEntity): Long return값을 Long 타입으로 해주시면 됩니다. 참고로 onConflict는..