본문 바로가기

개발/안드로이드271

안드로이드 화면 크기 고정으로 설정하기 Configuration configuration = getResources().getConfiguration(); configuration.fontScale = (float) 1; //0.85 small size, 1 normal size, 1,15 big etc DisplayMetrics metrics = new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics(metrics); metrics.scaledDensity = configuration.fontScale * metrics.density; configuration.densityDpi = (int) getResources().getDisplayMetrics().xdpi; g.. 2019. 3. 13.
안드로이드 앱 종료 방법 출처 - https://blog.asamaru.net/2015/12/15/android-app-finish/ 안드로이드에서 앱의 종료는 보통 Root Activity에서 finish()를 사용한다. 그런데 앱의 종료는 이외에도 여러가지 방법이 있고 각각이 다른 상황을 만들어 낸다. 당연히 구글에서는 finish()를 권장한다고 한다. 하지만 상황적으로 프로세스를 완전히 종료해야 하는 경우가 있을 수 있다. 아래에 설명하고자 하는 것들은 안정적으로 사용할 수 있는 방법이라고 장담하지는 못한다. 충분히 테스트된 코드가 아니라 인터넷 상에서 소개되는 방법들을 정리한 것이다. 물론 기본적인 테스트는 했다. 우선 Activity만 종료하는 방법부터 알아보자. finishAffinity()를 사용하는 방법 Root.. 2019. 3. 7.
EditText Filter (한글, 영어, 숫자만 입력, 특수문자 체크) 출처 - http://blog.naver.com/PostView.nhn?blogId=thesims1004&logNo=50182572762 // 영문만 허용 protected InputFilter filterAlpha = new InputFilter() { public CharSequence filter(CharSequence source, int start, int end, Spanned dest, int dstart, int dend) { Pattern ps = Pattern.compile("^[a-zA-Z]+$"); if (!ps.matcher(source).matches()) { return ""; } return null; } }; // 영문만 허용 (숫자 포함) protected InputFil.. 2019. 2. 20.
Android Adaptive Icon 출처 - https://codechacha.com/ko/android-adaptive-icon/ Android Adaptive Icon 소개 Android O에서 소개된 Adaptive Icon에 대해서 소개합니다. Oreo 이전에 개발자가 아이콘에 대해 처리할 것은 DPI 사이즈별로 아이콘을 폴더에 넣어두는 것 뿐이었습니다. 그러면 런처앱들은 LauncherApps 또는 PackageManager를 통해서 아이콘을 가져와서 사용자에게 보여주게 됩니다. 문제는 앱들의 아이콘들이 모두 다양하기 때문에 폰을 만드는 제조사의 입장에서 예쁘지 않다고 생각한다는 것입니다. 갤럭시S를 예로 들면, 다양한 앱의 아이콘들을 Rounded square 형태로 변경하여 보여줍니다. 이런 방식은 일관성은 있지만, 아이콘의 .. 2018. 11. 28.
[Android] Ripple Effect 란? 출처 - http://duzi077.tistory.com/179 Ripple Effect Ripple Effect 는 Android 5.0 (API level 21) 머터리얼 디자인에 소개되었습니다. 예를들어 버튼을 클릭했을 때 물결이 퍼지듯이 효과가 나오는 기능입니다. 5.0 미만에는 색상만 변경되고, 이상은 RippleDrawable까지 적용됩니다. 적용하는 방법에는 크게 2가지가 있습니다. 이미 정의되어있는 Style 사용android:background="?android:attr/selectableItemBackground" minSdkVersion 21 이상인 경우 위와 같이 테마에서 직접 물결을 적용할 색을 지정 할 수 있습니다. 테마 스타일을 변경하게 되면 colorControlHighlig.. 2018. 11. 22.
FragmentStatePagerAdapter와의 모험 http://eyeahs.github.io/blog/2016/12/06/fragmentstatepageradapter/ [번역]FragmentStatePagerAdapter와의 모험 06 Dec 2016 원본 : Adventures with FragmentStatePagerAdapter 많은 안드로이드 개발자들은 FragmentPagerAdapter와 FramgentStatePagerAdapter를 헛갈리거나 심지어 둘 사이의 차이를 모른다. 또한 종종 notifyDatasetChanged()를 동작시키면 실망하기도 한다. 이 adapter들을 사용하면 메모리 누수가 쉽게 일어날 수 있다. 나는 기초부터 시작해서 구현 세부 사항을 자세히 설명하고 잘 알려지지 않은 점들을 지적할 것이다 (FragmentP.. 2018. 7. 27.
안드로이드 apk 디컴파일 및 리패키징 출처 - http://programist.tistory.com/entry/Apktool%EC%9D%84-%EC%9D%B4%EC%9A%A9%ED%95%9C-%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C-apk-%ED%8C%8C%EC%9D%BC-%EB%94%94%EC%BB%B4%ED%8C%8C%EC%9D%BC-%EB%B0%8F-%EB%A6%AC%ED%8C%A8%ED%82%A4%EC%A7%95 Android의 앱은 apk이라는 파일로 되어 있으며 이것은 압축형태로 되어 있다. apk를 압축 프로그램으로 열어보면 크게 AndroidManifest.xml, resources.arsc, classes.dex의 정보에 의해 앱이 실행되며, 때에 따라서는 Asset, lib 폴더도 .. 2017. 9. 14.
안드로이드 웹뷰 CookieSyncManager 정확한 사용법 출처 - http://blog.naver.com/PostView.nhn?blogId=puresprout77&logNo=220842005470&parentCategoryNo=&categoryNo=2&viewDate=&isShowPopularPosts=true&from=search 안드로이드의 웹뷰를 사용함에 있어 쿠키 동기화가 잘 안 된다던가 인증이 지꾸 풀린다던가 하는 경험이 한번쯤은 있을 것이다. 인터넷을 찾아보면 CookieSyncManager로 동기화를 하면 된다고는 하지만, 건헐적으로 동작하지 않을 때가 있다. 어떻게 하면 정확하게 할수 있는지 알아보도록 하자. 먼저, 안드로이드에서 CookieManager는 두 개의 다른 클래스가 있다. java.net.CookieManager android.w.. 2017. 9. 5.