- Today
- Yesterday
- Total
목록Technology/Android - Android Studio (8)
메이쁘
안녕하세요. 최근 안드로이드에서 SQLite 사용에 도움되는 Room DB 라이브러리에 대해 알아봅시다. *** Coroutine에 대해 짚고 넘어가고 싶다? https://maivve.tistory.com/154 [Kotlin] 코틀린의 Coroutine 이란 무엇일까 ? 안녕하세요. Coroutine 은 코루틴이라고 불리며 코틀린의 주요 기능 중 하나입니다. 코루틴은 2018년 10월 29일 Kotlin 1.3에서 정식 릴리즈되면서 추가된 기능 중 하나라고 합니다. 그럼 시작하겠습니�� maivve.tistory.com Room DB(Database) 란 ? - AAC(Android Architecture Component) 중 하나. - SQLite DB 를 보다 더 쉽게 사용할 수 있도록 하는 라..
안녕하세요. Android KeyStore 시스템을 사용하는 이유 및 방법에 대해 포스팅하려 합니다. 여기서 말하는 KeyStore 는 APK 추출 시 필요한 jks 키 가 아니라 java.security.KeyStore 라는 내장 라이브러리를 뜻합니다. 이 자체 KeyStore를 사용하여 데이터를 더욱 견고하게 암호화할 수 있어 보안성이 높아지는데요. 우선, 어디서 사용하는지, 어떻게 사용하는지 부터 알아가보겠습니다. Android KeyStore를 왜 사용하려 하는가? 서버 DB에 저장하기에는 그렇게 가끔 쓰이는 것도 아닐 뿐더러 규모도 크지 않고, 그렇다고 자주 변경되는 건 아닌데 앱 내에서 자주 사용되는 데이터. 또한, ROOM DB나 Sqlite 같은 앱 내장 DB는 배보다 배꼽이 큰 느낌이 듭..
안녕하세요. Splash 화면을 가진 앱이 없을정도로 Splash를 사용합니다. 혹시 Splash 화면을 사용하는 이유는 아십니까? 크게 두 가지가 있습니다. 첫 번째는 이 앱의 로고나 이름을 이펙트있게 그림으로 담아 짧은 시간(1초 ~ 2초 내) 에 보여주면서 사용자에게 앱 서비스의 이해도와 기대감을 높여주는 용도 두 번째는 단지 짧은 시간 동안 보여주기만 하는 의도가 아니라 Splash 화면을 보여주면서 뒤에서는 앱 초기 설정이나 서비스 작동을 진행하여 화면 출력 준비를 마칠 경우 Splash 화면을 종료합니다. 그래서 사용자가 앱 화면 로딩을 기다리는 데 지루함과 기다림을 느끼지 않도록 하는 용도 입니다. 그렇기 때문에, 거의 모든 앱에 존재합니다. 그럼, 위와 같이 Splash 화면을 만들기 위해..
안녕하세요. 안드로이드의 Dialog 종류 중 BottomSheetDialog 에 대해 알아보겠습니다. Dialog 하면 흔히 기억하시는게 가운데에서 확인 버튼 누르는 알람 창을 떠올리실텐데요(AlertDialog) 또는, 날짜를 선택하는 다이얼로그 도 있구요. 하지만 순위권에 있는 여러 앱들을 보면 종종 아래에서 올라오는 알림 창(또는 선택 창) 들이 있습니다. SnackBar와 Toast 와는 다르게 Dialog 처럼 버튼과 내용이 존재하기도 하고, 이미지도 들어가있습니다. 즉, 하단에서 Modal을 들어올리는 Dialog 입니다. (파일 공유같은) 이를 BottomSheetDialog 라고 합니다. 우선, 개발자 문서 링크입니다. https://developer.android.com/referenc..
위 스크린샷처럼 Resource xml을 사용하여 string 태그를 만든 후 이 태그를 java(또는 kotlin)에서 사용하고자 하려면 1) ~.java String str = getString(R.string.serverUrl); 2) ~.kt var str : String = ApplicationContext.getString(R.string.serverUrl) 또는 var str : String = getString(R.string.serverUrl) (Activity 안에 들어가있으면) getString() 과 R.string.~ 을 사용하면 끝! *** R은 해당 프로젝트를 가리켜야 한다. 감사합니다.
Simple하게 이 코드를 적용시켜보자. - Kotlin // Fragment 새로고침 fun refreshFragment(fragment: Fragment, fragmentManager: FragmentManager) { var ft: FragmentTransaction = fragmentManager.beginTransaction() ft.detach(fragment).attach(fragment).commit() } // Fragment 클래스에서 사용 시 refreshFragment(this, getFragmentManager()) - JAVA FragmentTransaction ft = getFragmentManager().beginTransaction(); ft.detach(this).atta..
간단합니다. TimeZone이란 클래스를 사용해서 표준시를 변경할 수 있습니다. Date 또는 Calendar 클래스를 통해 날짜 및 시간을 얻습니다. 이를 더 예쁘고 보기 좋게 출력하기 위해서 여러 Format을 사용하죠. 간단한 포맷으로 변경이 가능한 (말 그대로 Simple) SimpleDateFormat 클래스를 추천드립니다. 말이 길었습니다. TimeZone tz; // 객체 생성 DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm", Locale.KOREAN); tz = TimeZone.getTimeZone("Asia/Seoul"); // TimeZone에 표준시 설정 dateFormat.setTimeZone(tz); //DateFo..
1. Internet을 사용해야 하기 때문에 manifests에서 인터넷 퍼미션 추가 2. values/styles.xml 파일에서 AppTheme(앱테마) 변경 -> 이 때, NoActionBar와 screenOrientation 설정을 portrait으로 변경 -> 액티비티 화면 상단의 타이틀바를 제거하고, 가로/세로 변경 불가능하다고 설정하기. 3. activity layout xml 파일 수정 -> WebView 객체 생성 4. 액티비티 코드 추가 -> 웹 뷰에 웹 띄우기, 오류 발생 시 오류 코드 설명 토스트메세지 출력 -> 웹 뷰 기타 필요한 설정 package com.example.myapplication import androidx.appcompat.app.AppCompatActivity ..