본문 바로가기
반응형

Android4

Android/Kotlin - 내부저장 Shared Preferences vs Data Store vs Room 작성이유 디바이스에 영구저장 되어야 하는 데이터를 관리하기 위한 방법을 찾은 과정을 기록 왜 Shared Preferences를 사용 안 하고? : 현재 안드로이드에서 Data store의 사용을 적극 권장 (개발자 문서에서도 SharedPreferences 사용 가이드를 뺌) 실제 xml 파일 I/O 작업을 하는 것으로 UI Thread에서 작업할 경우 안전하지 않다. Runtime Exception으로부터 안전하지 않다. 비동기 API를 제공하지만 리스너를 통해서만 값을 읽을 수 있다. Type-Safety를 제공하지 않는다. 값 변경 시 리스너를 통해서만 비동기식 액세스를 제공 데이터 타입을 변경하면서 생기는 런타임에러, ANR Data Store? SharedPreferences를 대체하기 위해 .. 2022. 8. 9.
Protocol Buffer - 프로토콜 버퍼 프로토콜 버퍼란? 구글에서 개발하고 오픈소스로 공개한 직렬화 데이터 구조(Serialized Data Structure) 직렬화란? 데이터를 파일로 저장하거나 네트워크로 전송하기 위하여 바이너리 스트림 형태로 저장하는 행위 바이너리? 두 조각을 의미 / 이진법 / 이진 파일 / 텍스트 형태가 아닌 이진형태로 인코딩된 파일 / Binary Digits → bits 스트림형태? 흐름 → 열거되어 있다 → 배열이나 리스트같은 구조라고 이해함 구조적데이터(XML과 같은)를 직렬화하기 위한 메커니즘 구글에서 검색 색인 작업에 사용하려고 만들었다고 한다. C++,C#, Go, Java, Python, Object C, Javascript, Ruby 등 다양한 언어를 지원 하나의 파일에 최대 64M까지 지원할 수 있.. 2022. 8. 9.
[Android/Java] 다중이미지 미리보기 구현 다중이미지 미리보기를 구현해봤습니다. 카메라, 갤러리 권한을 ted permission을 사용하여 허용시켜줍니다. build gradle implementation "gun0912.ted:tedpermission:2.1.0" Image_activity.class @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_user_mypage_fields_add); ted(); } void ted() { //파일 읽기 권한 PermissionListener permissionListener = new PermissionListene.. 2022. 1. 18.
[Java] 하나의 RecyclerView에 서로 다른 뷰 넣기 ( TCP 채팅 예제 - 카카오톡 채팅화면) 카카오톡 채팅화면처럼 내가 입력하는 내용들과 상대방이 입력하는 내용들이 서로 다른 뷰에 보여야 할 때 유용합니다. 저는 TCP 채팅을 구현하는 중 사용했으므로 예제도 그에 관련된 예제입니다. 1. 상대방이 입력한 채팅 내용을 담을 뷰 세팅 - left_chat.xml 2. 내가 입력한 채팅 내용을 담을 뷰 세팅 3. 두 뷰를 담을 화면 및 RecyclerView - activity_chat 4. 상대방이 보낸 내용인지 내가 보낸 내용인지 확인할 ViewType 및 아이템 클래스 public class ViewType { public static final int LEFT_CHAT = 1; public static final int RIGHT_CHAT = 2; } public class ChatItem {.. 2022. 1. 12.
반응형