본문 바로가기

나의 플랫폼/안드로이드

[Android] Java로 새로운 프로젝트를 만드는 것 이제 그만.... (번역) 왜 새 Android 프로젝트를 Java로 만들면 안되는가...원문 : https://medium.com/snapp-mobile/why-starting-a-new-android-project-with-java-is-a-bad-idea-359bffe0bbd6 나는 프로그래밍 언어에 회의적인 사람이다. 나는 새로운 언어로 뛰어 넘지 않았고, 매년 5개 새로운 언어를 배우고자 노력 한다. 새로운 것을 찾으면 꾸준히 해왔다. 20년 동안 내 프로그래밍 경력은 Java만 사용 했다. 나는 지난해 멋진 사람들이 Kotlin으로 넘어 갈 때 나는 하지 않았다. 난 그이유를 설명 했다. Why and how I switched to Kotlin I’m one of the very few (judging from my .. 더보기
[Android] 확장 파일에 temp가?? 확장 파일을 하다가 혹시 이런 경우가 있지는 않으셨나요?? [ 파일 관리자 앱으로 봤을 경우] [ USB로 연결 하여 확인했을 경우] 위 그림과 같이 USB 로 보면 앞에 'temp.' 라는 파일명에 붙어 있고,앱에서 보면 붙어 있지 않다.. 파일명이 다른데 문제 없는 걸까?? 결론은 문제가 없는 것이다. StackOverFlow에 올라온 글 내용을 보면 버그성 형태를 취한 것 같다고 한다.파일명이 다르더라도 기존 temp 가 없는 형태로 문제 없이 호출 된다. 그러니 혹시나 파일명이 다르다고 억지로 바꿀려고 하시거나이것 때문에 혹시 확장 파일이 안불러 와지는 거 아니냐는 의문이 생기시는 분들은그런 생각 접어 두시고 다른 원인을 찾아보는 게 맞을 것이다^^ I think my expansion file .. 더보기
[Android] Expansion file 이용하기 - 2 이전 포스트에서 간단하게 확장 파일을 저장해서 테스트 해보는 것 까지 작성 해보았다. http://gogorchg.tistory.com/entry/Android-Expansion-file-%EC%9D%B4%EC%9A%A9%ED%95%98%EA%B8%B0-1 이번 포스트에선 직접 google play console에 APK와 확장 파일을 올려보고앱을 설치하여 결과를 확인 하는 것 까지 해보겠다. 우선 확장 파일 다운로드를 위한 Service와 Receiver를 Sample에서 가지고 오겠습니다. android-sdk/extras/google/market_apk_expansion/downloader_sample/src/com/example/expansion/downloader 에 있는SampleAlarmRe.. 더보기
[Android] Expansion file 이용하기 - 1 구글에서 APK 제한을 두고 있습니다. 앱에 100MB 이상의 메모리가 필요한 경우 확장 파일을 사용해 APK 애셋을 더 저장할 수 있습니다. 앱당 확장 파일 2개를 저장할 수 있으며 각 확장 파일의 크기는 최대 2GB까지 가능합니다.APK 파일의 최대 파일 크기는 APK에서 지원하는 Android 버전에 따라 다릅니다.100MB - Android 2.3 이상을 대상으로 하는 APK(API 레벨 9~10 및 14 이상)50MB - Android 2.2 이하를 대상으로 하는 APK(API 레벨 8 이하)도움말: 사용자가 100MB APK를 설치하려면 Play 스토어 버전 5.2 이상을 실행해야 합니다.확장 파일은 추가 비용 없이 호스팅됩니다. 가능한 경우 Google Play는 앱을 설치하거나 업데이트할 .. 더보기
[Android] 기본 카메라 앱 실행 시키기 12345678910111213141516private void callCamera() { Intent i = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); try { PackageManager pm = getPackageManager(); final ResolveInfo mInfo = pm.resolveActivity(i, 0); Intent intent = new Intent(); intent.setComponent(new ComponentName(mInfo.activityInfo.packageName, mInfo.activityInfo.name)); intent.setAction(Intent.ACTION_MAIN); intent.add.. 더보기
[Android] finishAffinity 어플리케이션을 종료 하는 방법을 몇가지 블로그에 적어 놓은게 있다. http://gogorchg.tistory.com/entry/Android-%EC%96%B4%ED%94%8C%EB%A6%AC%EC%BC%80%EC%9D%B4%EC%85%98-%EA%BA%A0%EB%81%97%ED%95%98%EA%B2%8C-%EC%A2%85%EB%A3%8C%ED%95%98%EB%8A%94-%EB%B2%95 http://gogorchg.tistory.com/entry/Android-%EC%96%B4%ED%94%8C%EB%A6%AC%EC%BC%80%EC%9D%B4%EC%85%98-%EC%A2%85%EB%A3%8C System.exit 를 호출하여 종료 시키는 분들도 있으실 듯하다. 하지만, 이럴 경우 Android 내부에서 .. 더보기
[Android] 스케줄링 작업 고려 할때 ## Intelligent Job-Scheduling원본 : https://developer.android.com/topic/performance/scheduling.html#fjd번역 : http://blog.unsignedusb.com/2017/03/androd-intelligent-job-scheduling.html 특정 시간에 특정 업무를 할 경우 참고할 사항을 공유 했다.이 글을 읽고 간단하게 표현 하면 아래와 같다. AlramManager : 특정 시간에 무언가 할 경우JobScheduler : 특정 상태에 무언가 할 경우 (충전 상태, 네트워크 상태등) , SDK 21 이상Firebase-JobDispatcher : JobScheduler를 쓰고 싶은데, SDK 21이하 까지 지원하고자 할 .. 더보기
[Android][CustomView] Button with TimePickerDialog Button을 클릭 하면 TimePickerDialog를 보여주고, 시간을 선택 하면 Button 텍스타가 바뀌는 Custom UI를 만들어 보았습니다. ## TimePickerButton.java123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102package com.ryuandjo.customviews.widgets; import android.app.TimePickerDialog;import andro.. 더보기