일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- 어떻게 나답게 살 것인가
- 끝말잇기
- 슬기로운 온라인 게임
- 좌식테이블
- 소프시스 밤부 좌식 엑슬 테이블
- 한달어스
- 아비투스
- 지지않는다는말
- 한단어의힘
- 목적 중심 리더십
- 소프시스
- 면접
- 테트리스
- 재택근무
- 한달브런치북만들기
- 함수형 프로그래밍
- 프래그먼트
- 자취필수템
- 한달독서
- 커스텀린트
- 캐치마인드
- 1일1커밋
- 베드테이블
- 안드로이드
- 북한살둘레길
- 리얼하다
- T자형인재
- 브런치작가되기
- 목적중심리더십
- 베드트레이
- Today
- Total
목록안드로이드 (164)
정상에서 IT를 외치다
안드로이드에는 4가지 컴포넌트가 있습니다. 1. 엑티비티(Activity)2. 서비스(Service)3. 방송수신자(Broadcast Receiver)4. 콘텐트 제공자(Content provider) 3번 방송수신자에서 BroadcastReceiver 사용법에 대해 알아보겠습니다. * Global Broadcast - 일반적으로 이야기하는 Broadcast 이다. 프로세스 간의 경계를 무시하고 안드로이드 시스템 상에 등록된 모든 Receiver 들에게 전달된다. * Local Broadcast- 현재 프로세스 안에만 유효한 Broadcast 이다. 엑티비티 내부 객체간의 상호 의존성을 낮추어 깔끔한 프로그램 구조를 만들 수 있고 우리 앱의 정보를 밖으로 유출 하지 않는다. BroadcastReceive..
안드로이드에는 4가지 컴포넌트가 있습니다. 1. 엑티비티(Activity)2. 서비스(Service)3. 방송수신자(Broadcast Receiver)4. 콘텐트 제공자(Content provider) 3번 방송수신자에서 LocalBroadcastManager 사용법에 대해 알아보겠습니다. * Global Broadcast - 일반적으로 이야기하는 Broadcast 이다. 프로세스 간의 경계를 무시하고 안드로이드 시스템 상에 등록된 모든 Receiver 들에게 전달된다. * Local Broadcast- 현재 프로세스 안에만 유효한 Broadcast 이다. 엑티비티 내부 객체간의 상호 의존성을 낮추어 깔끔한 프로그램 구조를 만들 수 있고 우리 앱의 정보를 밖으로 유출 하지 않는다. LocalBroadca..
SimpleDataFromat 사용법과 JodaTime 에 대해 포스팅 하겠습니다. 날짜와 시간을 가져올 때 SimpleDataFormat 을 주로 사용했습니다.Date data = new Date(); SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy년 MM월 dd일 a hh시 mm분 ss초"); String today = simpleDateFormat.format(data); 실행법은 위와 같이 간단합니다.(Data 는 java.util.date 를 import 해야 합니다.)(SimpleDataFormat 에서 'a' 는 오전/오후 를 나타냅니다.) 하지만 SimpleDataFormat 은 Thread-Safe 하지 못하기 때문에 쓰레드..
안드로이드 스튜디오 터미널에 아래 값을 입력하면 SHA1 인증서를 가져 올 수 있습니다. keytool -list -v -keystore ~/.android/debug.keystore -alias androiddebugkey -storepass android -keypass android
안드로이드 마시멜로우 이상 부터는 권한 설정 동의가 필요합니다. TedPermission 이라는 권한설정 라이브러리를 많이 사용하는데요. 이는 아래링크를 확인하시면 친절하게 설명 되어 있습니다 http://gun0912.tistory.com/61 안드로이드 오레오 버전 에서 TedPermission 사용시 java.lang.IllegalStateException: Only fullscreen opaque activities can request orientation 에러가 발생합니다. 이는 제가 포스팅한 오레오에서 발생하는 풀 스크린 설정 에러 와 동일하게 TedPermissionActivity 에서 발생하는데요. 현재 포스팅 하고 있는 시점의 TedPermission 버전은 2.1.0 입니다. 추후 T..
처음 앱 시작 시 블루투스를 설정을 해주기 위한 코드 입니다. 1. 블루투스 어댑터와 매니저 변수를 선언 해줍니다.private static int REQUEST_ENABLE_BT = 1001; public static BluetoothManager bluetoothManager; public BluetoothAdapter mBluetoothAdapter; 2. 블루투스 어댑터와 매니저를 초기화 해줍니다.// LE bluetoothManager = (BluetoothManager) getSystemService(Context.BLUETOOTH_SERVICE); mBluetoothAdapter = bluetoothManager.getAdapter(); 3. 블루투스 어댑터가 없거나 사용 가능이 아닐 경우 ..
모바일 데이터 베이스 Realm 을 이용한 하루 가계부 앱을 만들어 보았습니다. 하루 쓸 금액을 입력 후 소비한 금액을 적습니다. 그러면 하루 금액에서 소비한 금액만큼을 보여주는 앱입니다. 또한 달력을 통해 하루 금액보다 조금 사용했는지 많이 사용했는지를 색으로 구분하여 보여줍니다. 시연 영상은 위와 같습니다. 코드는 모두 코틀린으로 만들었습니다. Realm 에 대한 설명http://black-jin0427.tistory.com/7?category=727620 중요 코드만 설명하겠습니다. 위 그림이 MainActivity 입니다. 하루동안 살 금액 입력 버튼과 오른쪽 아래 지출 추가 버튼은 모두 AddMoneyActivity 로 이동합니다. 이 때 type 을 인자로 넘겨 AddMoneyActivity ..
안드로이드 API 26 (오레오) 버전 부터는 기존의 Notification 방식이 적용되지 않습니다. Notification Channel 을 필수로 설정해 주어야 합니다. 기존에는 다음과 같은 방식으로 Notification 을 실행했습니다.Intent mMyIntent = new Intent(this, MyActivity.class); PendingIntent mPendingIntent = PendingIntent.getActivity( this, 1, mMyIntent, PendingIntent.FLAG_UPDATE_CURRENT); NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(this) .setSmallIcon(and..
이번에는 달력을 커스텀 해서 만들어 보겠습니다. 아래 링크에서 가져온 예제를 커스텀 해봤습니다. https://www.toptal.com/android/android-customization-how-to-build-a-ui-component-that-does-what-you-want Calendar 관련 함수를 모르시는 분은 http://black-jin0427.tistory.com/18 링크를 보고 와주세요 색깔도 오렌지 하게 ~ 오늘 날짜의 레이아웃도 오렌지 하게 바꾸어 보았습니다. 중요 소스만 설명하겠습니다. public void updateCalendar(HashSet events) { ArrayList cells = new ArrayList(); Calendar calendar = (Calend..
java.util 에 있는 Calendar, Date 에 대해 알아보겠습니다. Dlog.d("Date : " + Date()) val currentDate = Calendar.getInstance() Dlog.d("YEAR : " + currentDate.get(Calendar.YEAR)) //현재 년도 Dlog.d("MONTH : " + currentDate.get(Calendar.MONTH)) // 현재 월(1월 -> 0) Dlog.d("DATE : " + currentDate.get(Calendar.DATE)) // 현재 월의 날짜 Dlog.d("WEEK_OF_YEAR : " + currentDate.get(Calendar.WEEK_OF_YEAR)) // 현재 년도의 몇째 주 Dlog.d("WEEK..