Android 7

파일 엑세스

## 앱별 저장소=> 앱을 제거하면 파일이 삭제된다. 사용자가 앱과는 별개로 유지할 것으로 예상하는 항목을 저장해서는 않된다.- 내부 저장소 디렉터리 : 영구 파일 저장 위치와 캐시 데이터 저장하는 위치가 있다. 앱 자체에서만 액세스 할 수 있는 민감정보 저장에 적합. 영구 파일 엑세스파일 가져오기 :val file = File(filesDir, filename) // filesDidr = /data/user/0/com.example.myapplication/files파일 저장 및 읽기 val file = File(filesDir, "fileWriteTest") val fileContent = "hello world" openFileOutput(file.name, M..

Android 2025.07.05

[Android][JetPack]

JetPack이란 공식문서에서 다음과 같이 정의하고 있다.개발자가 중요한 코드에 집중할 수 있도록 권장사항 준수, 상용구 코드 감소, 여러 Android 버전과 기기에서 일관되게 작동하는 코드 작성을 돕는 라이브러리 묶음입니다. JetPack은 androidx.* 의 패키지에서 제공된다.AndroidX란 JetPack과 함께 도입된 오픈소스 프로젝트이고 기존의 com.android.support.* 라이브러리를 하나로 통합한 것이다. JetPack에 대한 안드로이드 블로그 내용 [https://android-developers.googleblog.com/2018/05/use-android-jetpack-to-accelerate-your.html]  Android9.0(API 수준 28) 부터 Androi..

Android 2024.09.25

[Android] Pending Intent

FLAG_IMMUTABLE 또는 FLAG_MUTABLE은 Android 12(API 레벨 31) 이상에서 반드시 지정해야된다. PendingIntent의 역할PendingIntent는 일반 Intent와는 다르게, 시스템이나 다른 앱이 특정 시점에 지정된 작업을 실행할 수 있도록 권한을 "위임"하는 역할을 합니다. 이때, PendingIntent는 원래 애플리케이션의 권한을 유지합니다. 즉, 당신의 앱이 특정 작업을 미리 설정해두고, 나중에 시스템이나 다른 앱이 해당 작업을 당신의 앱의 권한으로 수행할 수 있도록 하는 것입니다.FLAG_IMMUTABLE의 역할FLAG_IMMUTABLE을 설정하면, PendingIntent는 변경 불가능(Immutable) 상태로 고정됩니다. 즉, PendingIntent..

Android 2024.08.27

[Android] retrofit Socket timeout

retrofit 사용 중 다음 에러 발생java.net.SocketTimeoutException: timeout아래 참조를 보면 server의 keep-alive timeout이 client 보다 작기 때문이라 함. 다음 코드를 추가해 해결..addHeader("Connection", "close")HTTP header 정리글https://www.geeksforgeeks.org/http-headers-connection/ 참조 :https://github.com/square/okhttp/issues/2738  OkHttp3 - IOException: unexpected end of stream on okhttp3.Address@9d7c59b5 · Issue #2738 · square/okhttpThe e..

Android 2024.07.24

[Android]ArrayAdapter시 notifyDataSetChanged

ArrayAdapter 사용시 notifyDataSetChanged를 호출하지 않아도 된다. Google에서 제공하는 Android Code Search에서 ArrayAdapter를 확인해보자.https://cs.android.com/android/platform/superproject/+/master:frameworks/base/core/java/android/widget/ArrayAdapter.java https://cs.android.com/android/platform/superproject/+/master:frameworks/base/core/java/android/widget/ArrayAdapter.java cs.android.com addAll 함수를 보면```public void addAl..

Android 2024.04.15