반응형

Development/Android 24

Android Notification 만들기

안녕하세요. 오늘은 Android Notification을 만들어보는 예제를 소개합니다. 안드로이드 서비스에서는 현재 서비스가 동작중임을 나타내는 Notification을 띄워야합니다. 안드로이드 오레오 이상부터는 포어그라운드서비스 동작중에 Notification을 무조건 띄워야합니다. * https://developer.android.com/about/versions/oreo/android-8.0-changes?hl=ko NotificationBuilder를 사용해서 Android Service에서 Notification을 생성할 수 있습니다. 다음과 같은 처리를 하고 있는 소스코드를 작성해보겠습니다. * 액티비티 혹은 프레그먼트에서 서비스 실행 (+ 안드로이드 오레오 이상 예외처리) * 서비스에서 N..

Development/Android 2022.01.13

Android에서 설치된 특정 패키지 검색하기

안녕하세요. 이번 포스팅은 안드로이드 개발중에 내 앱이 아닌 설치된 다른 앱의 존재여부를 검사하는 작업을 할때 사용하는 유틸클래스를 소개하고자 합니다. 많은곳에서 사용할 수 있으므로 공용 클래스로 작성하여 사용하면 됩니다. 사용하기전에 AndroidManifest.xml에 다음과 같이 작성해주셔야 됩니다. if (utils.isPackageInstalled("com.other.packgename", packageManager)) { Log.d(TAG, "checkPackgeName: return true") return true } } Log.w(TAG, "checkPackgeName: return false") return false } 감사합니다. 참고한 사이트 * https://stackoverfl..

Development/Android 2022.01.12

Material Design 3

https://m3.material.io/ Material Design Build beautiful, usable products faster. Material Design is an adaptable system—backed by open-source code—that helps teams build high quality digital experiences. m3.material.io Android12에서 사용하기 위한 Material Design3가 공개되었습니다. 기존 Android11에서 사용된 Material Design2 (https://material.io/)에서 보다 좀 더 이쁘게 업데이트되었는데요, 갤럭시 휴대폰 기준 Android12를 사용할때, Gmail이나 Google Play등에..

Development/Android 2021.12.03

안드로이드 액션바 제거하기

안드로이드 개발시에 AppCompatActivity를 상속받는 Activity를 MainActivity로 사용할경우 앱바(Appbar) 혹은 액션바(ActionBar)가 액티비티 상단에 기본적으로 나타나게 되어있다. 화면기획에 따라 ActionBar를 제거해야하는 일이 있는데 다음과 같은 방법으로 제거가 가능하다. 1. android:theme에서 제거하기 android:theme에서 제거하기위해서는 현재 manifest에서 application의 속성에 사용중인 theme를 확인한다. 위의 manifest.xml 파일에서 android:theme에 Theme.AndroidSettingsSample에 따라가보면 다음과 같이 resource xml 파일이 있다. 위의 xml 코드에서 style name 속..

Development/Android 2021.11.08

Android BottomNavigationView 텍스트 라벨처리

안드로이드 개발시 하단의 메뉴구성을 위해 자주 사용되는 BottomNavigationView를 처리할때 아이콘 아래의 텍스트 라벨을 기획에 맞게 변경하고자 합니다. 위의 그림에서 5번에 해당되는 Text Label이 변경하고자 하는 속성값입니다. 이때 BottomNavigationView가 구현되어 있는 XML에 가서 labelVisibilityMode의 속성값을 변경해주면 됩니다. 위의 XML에서 app:labelVisibilityMode는 다음과 같이 속성값을 제공합니다. auto 항목이 3개 이하일경우 labeled로 작동, 4개일경우 selected로 작동 labeled 텍스트라벨이 항상 보여진다. selected 텍스트라벨이 선택되었을떄만 보여진다. unlabeled 텍스트라벨이 보여지지 않는다..

Development/Android 2021.10.04

안드로이드 현재시간 가져오기 (DateUtils)

안드로이드 개발중에 현재시간을 뷰에 표시하는 기능을 구현하기로 했다. 뷰에 표시되는 형태는 "2021년 9월 15일"의 형태로 년, 월, 일을 한글과 함께 표시해야한다. Kotlin으로 개발중이고해서 최대한 Kotlin 스럽게(?) 구현해보고자 한다. OS의 현재시간을 불러와서 사용할것이고, 많은 부분에서 사용할것이라서 공용모듈로 구성하였다. 우선 정상적으로 작동하는지 보기 위해 JUnit을 활용하여 테스트코드를 작성하였다. val currentTime: Date = Calender.getInstance().time 이렇게만 구성할경우 현재시각은 얻어오지만 원하는 형태로 구성되지 않는다. 그리하여 몇가지 코드를 추가해주었다. fun getCurrentDate(): String { val currentDa..

Development/Android 2021.09.15

Android Studio 최근 프로젝트 삭제하기

안드로이드 프로젝트에서 최근에 열었던 목록을 삭제할 수 있습니다. 테스트를 위해 샘플프로젝트를 많이 열었을때 목록이 너무 길어져서 찾기 힘들때 Clear할 경우가 생깁니다. ※ 2021년 8월기준 안드로이드 버전 4.0.1 기준으로 작성된 글입니다. 안드로이드 스튜디오가 켜져있는 상태라면, File → Close Project를 선택합니다. 아래 그림의 빨간색 X버튼을 눌러 삭제합니다. 참고 URL https://stackoverflow.com/questions/17208322/how-to-clear-recent-projects-list-in-android-studio/43550689

Development/Android 2021.08.14

안드로이드 TextView에 HTML 태그 사용하기

HtmlCompat.fromHtml(getString(R.string.string_kakao_warning_message), HtmlCompat.FROM_HTML_MODE_LEGACY); 안드로이드 개발하면서 TextView에 HTML 태그를 사용 할 일이 생겼습니다. 정확히는 텍스트안에 특정 텍스트는 색을 넣어야하는 상황이고, TextView를 나눠서 사용하는것보단 TextView를 태그로 변환해서 HTML 태그를 사용하는 방향으로 진행하였습니다. 안드로이드에서 Html 태그를 사용하는 방법은 다음과 같습니다. Html.fromHtml(String, int) 메서드를 사용하고, API가 24이상 (Android 7.0 Nought)에서 androidx HtmlCompat의 fromHtml(String,..

Development/Android 2021.03.05

안드로이드 패키지명(PackageName)으로 설치여부 확인하는 방법

public static boolean getInstallPackage(final Context context, final String packageName) { try { PackageManager pm = context.getPackageManager(); PackageInfo pi = pm.getPackageInfo(packageName.trim(), PackageManager.GET_META_DATA); ApplicationInfo appInfo = pi.applicationInfo; // Exist Package. Log.d(TAG, "Enabled value = " + appInfo.enabled); return true; } catch (PackageManager.NameNotFoundExc..

Development/Android 2020.09.07

안드로이드 설치된 앱 버전 읽어오기

안드로이드에서 설치된 앱의 버전정보를 불러 올 일이 있었습니다. 그래서 다음과 같은 메서드를 만들어서 사용하였습니다. 버전정보(String)과 버전코드(Long)을 동시에 받기위해 Pair를 사용하였습니다. public static Pair getPackageVersionInfo(final Context context, final String packageName) { String version = "Unknown"; long versionCode = 0; PackageInfo packageInfo; if (context == null) { return null; } try { packageInfo = context.getApplicationContext() .getPackageManager() .get..

Development/Android 2020.09.07
반응형