이 영역을 누르면 첫 페이지로 이동
CodeJUN 블로그의 첫 페이지로 이동

CodeJUN

페이지 맨 위로 올라가기

CodeJUN

심심해서 하는 블로그

Android

  • CodeJUN
AndroidX 사용하기

AndroidX 사용하기

2018.10.05
Google I/O 2018 에서 새로운 JetPack 라이브러리가 발표된지 어느덧 오랜 시간이 지났다. JetPack은 Android앱 개발에 있어서 필수 구성 요소로 꼽히고 있다. 오늘은 JetPack팀에서 새로 출시한 AndroidX에 대해 알아보려 한다. AndroidX가 무엇이냐?우선, androidx가 뭔가하면, JetPack팀에서 만들어낸 일종의 통합 라이브러리와 같다. 기존의 'com.android.support.*' 라이브러리들을 하나로 합친 것이라고 보면 편하다. 빌드툴 28.0.0 이상 버전에서부터 사용할 수 있으며, 최근 새롭게 출시된 Android Studio 3.2버전 이상에서 Androidx로 쉽게 변환할 수 있는 기능을 제공하고 있다.위와 같이 Refactor를 누르면, 아래..
'Android resource compilation failed' 에러 해결

'Android resource compilation failed' 에러 해결

2018.09.30
사건의 발단Android Studio 3.2가 공식 릴리즈 되었다 하여, 업데이트를 진행하였다.IDE가 업데이트 되면서 Gradle도 새 버전으로 따라 업데이트를 했다.그리고 Sync를 하는데... 아니나 다를까 무수히 많은 에러들이 주루룩,, 뜨기 시작했다. 해결을 위한 삽질GDG Korea 그룹에 질문도 해보고, 구글링을 통해 Stack Overflow던 뭐던 가리지 않고 온갖 커뮤니티를 돌아다녔다.내게 맞는 해결법은 하나도 없었다. (...) 그냥 짜증이 막 났다.. 그러던 중! 에러로그에서 공통된 항목들을 찾을 수 있었다.바로 'AAPT' 라는 것이었다. 이는, Android Asset Packaging Tool의 줄임말인데, 자세한건 아래 링크에 한꺼번에 첨부하도록 하겠다.아무튼, 이놈에 대해 ..
18:9 이상 화면비 지원하기

18:9 이상 화면비 지원하기

2018.08.02
최근들어 노치가 탑재되고, 화면비가 길어지면서 18:9 화면비 지원에 대한 사항이 거의 필수적으로 된 상황입니다. 지원을 하지 않게 되면 상단과 하단 부분에 레터박스가 생기게 되고 유저 경험에 영향을 끼치게 됩니다. 방법은 간단하니 얼른 적용해 보시기 바랍니다. 지원 방법간단합니다. 매니패스트에 meta-data만 추가하면 됩니다. 앱이 지원할 수 있는 최대 화면비는 '긴 화면 길이 / 짧은 화면 길이' 값으로 나타낼 수 있습니다.위와 같이 메타데이터를 추가하게 되면 18.5:9 의 화면비 까지 지원할 수 있습니다. 만일 이 값을 지정해 주지 않은 상태라면 최대 1.86으로 지정됩니다. (=16:9) 자세한 정보자세한 정보는 Google에서도 지원하고 있습니다. 여기를 클릭하여 자세한 정보를 알아보시기 ..
Google Play Service Check(확인)하기

Google Play Service Check(확인)하기

2018.07.25
Firebase나 GoogleMAP 등 개발 시 수많은 구글의API들을 사용합니다. 이때 대부분 Google Service API를 사용하게 되는데요, 이놈에게 문제가 생기면 전반적인 앱 구동에 많은 문제가 생기기 때문에 꼭 기기에서 Google Play Service 버전, 존재여부 등을 확인해 준 후 조치를 취해야 합니다. 기본으로 제공하는 메소드 사용하기구글에서는 기본적으로 메소드를 제공하고 그에따른 결과를 확인할 수 있는 메소드도 제공하고 있습니다. 바로 GoogleApiAvailabilityLight 라는 놈입니다.private void isGooglePlayServicesAvailable() { GoogleApiAvailabilityLight googleApiAvailability = Goog..
인터넷 연결 상태 확인하기

인터넷 연결 상태 확인하기

2018.07.23
해당 포스팅에 참고한 내용은 이곳에도 자세하게 나와있습니다. 간단하다.ConnectivityManager를 통해 간단하게 인터넷에 연결이 되어있는지, 와이파이나 모바일 데이터를 사용하고 있는지 간단하게 구별이 가능하다. 필자는 유형에 상관없이 네트워크에 대한 연결 여부만 판단하면 되기에 아래와 같이 코딩했다.public boolean checkNetwork() { ConnectivityManager cm = (ConnectivityManager)getContext().getSystemService(Context.CONNECTIVITY_SERVICE); assert cm != null; NetworkInfo activeNetwork = cm.getActiveNetworkInfo(); return activ..
BottomNavigationView 애니메이션 제거하기

BottomNavigationView 애니메이션 제거하기

2018.07.22
우연히 앱을 개발하다가 BottomNavigationView를 쓸 일이 왔다. 막상 적용하고 나니 애니메이션이 너무 크게 일어나기에 보기가 싫었다.(...) 이를 없애기 위해 구글링을 한 결과, 따로 메서드는 없는 것 같고 새로 클래스를 생성해서 없애주는 방법은 있었다. 해당 애니메이션은 ShiftingMode라고 불리우는것 같은데 이를 없애줄 수 있다. public class BottomNavigationViewHelper { @SuppressLint("RestrictedApi") public static void disableShiftMode(BottomNavigationView view) { BottomNavigationMenuView menuView = (BottomNavigationMenuVie..
Magellan(마젤란) 사용하기

Magellan(마젤란) 사용하기

2018.07.19
친구들과 프로젝트를 진행하면서 요즘 BottomNavigationView라는 것을 정말 많이 쓰고있는데요, 이 뷰는 아래에 Toolbar와 비슷한 bar가 하나 놓여져 있고 그 안에 아이템들이 자리하고, 아이템 클릭 시 위에있는 Fragment가 교체되는 뷰 입니다. 대표적으로 Youtube가 해당 뷰를 사용하고 있죠. Fragment는 생명주기 관리가 매우 까다로워서 많은 개발자들의 두려움의 존재(?) 이기도 하죠.그런데, 이 두려움을 떨쳐낼 라이브러리가 있습니다. 같이 하던 친구의 추천으로 처음 알게 된 라이브러리 입니다.MVVM뷰패턴을 구현하기에 딱인 것 같습니다. 마젤란! 무작정 써보자.Github링크를 우선 첨부해 드리도록 하겠습니다.바로가기(클릭)코틀린은 여기를 눌러주세요. 사실 말로 표현하면..
RecyclerView에서 원하는 항목 item 제거하기

RecyclerView에서 원하는 항목 item 제거하기

2018.07.17
사건의 발단외주를 하면서 Youtube의 재생목록을 파싱하던 중 Playlist도 같이 파싱이 되어서 리스트 결과에 영상을 확인할 수 있는 VideoID가 null값으로 리턴되는 것을 확인하였다.이는 클릭 후 VideoID를 넘겨 영상을 재생하는 기능에서 파라미터 문제가 생겼고, 재생에 문제가 생기게 된다. 생각한 해결 방안파싱이 끝나면 지정한 ArrayList에서 지정 Data Class로 넘길 때 getVideoID에서 값이 null인 것만 .remove(position)으로 제거해줄 생각이었다.그런데 이렇게 되면 각 position값 들이 하나씩 밀리게 되며 추후 관리에도 귀찮아질 것 같아서(...) 안 했는데 시도해 봐도 결과는 강제종료.. 구글링?각종 키워드로 구글링을 시도하였다. recycle..
Google I/O Extended Seoul 참가 후기

Google I/O Extended Seoul 참가 후기

2018.06.12
매년 진행하는 Google I/O Extended Seoul에 늘 참석하고 싶었지만, 계속 미뤄오다가 올해야 참석하게 되었습니다. 사실 가장 결정적인 참석 이유는 새롭게 선보인 Android P에 대한 설명과 개발 툴, 머티리얼 디자인 그리고 구글 관련된 소식을 접하고 싶었기 때문입니다. 고삼 맞냐 이놈아! 체크인 하기저는 입장시간인 오전 11시의 10분 전인 10시 50분에 도착했지만 이미 많은 분들께서 미리 와 계셨습니다. 처음 가는 Google I/O라 많이 설렜습니다. 행사 예약 사이트에서 예약할 때 받았던 QR코드를 보여주면 방문증(?)과 함께 쿠폰을 줍니다. 이 쿠폰은 미국에서 부터 시작되어... 저 쿠폰은 나중에 기념품으로 교환하기 위해 꼭 필요하니 잃어버리지 않도록 합니다. 뒷면에는 이렇게..
Android Studio에서 Firebase Assistant 사용하기 (With. Dynamic Links)

Android Studio에서 Firebase Assistant 사용하기 (With. Dynamic Links)

2018.06.03
개요Android 앱을 제작하면서 Firebase 를 많이 사용하게 됐는데요, 매번 android 앱에 firebase를 추가할때 마다 콘솔에 접속하여 google-service.json 파일을 받고 넣고 하기가 매번 귀찮았는데, Android Studio 2.2 버전 이상에서는 Firebase Assistant가 추가되어 바로 앱과 연결할 수 있게 되었습니다. 사용해 보자Tools-Firebase를 클릭합니다. 그럼 아래 사진과 같이 Firebase의 여러 서비스들이 눈에 띕니다. 저는 동적 링크를 예로 등록해 보도록 하겠습니다.사실 모든 과정을 Assistant가 알려주기 때문에 이 강좌가 별로 도움이 될 진 모르겠습니다만,, 그냥 진행하겠습니다. ㅠㅠ 저는 동적 링크를 추가해 볼 것이기 때문에 Dy..
ML Kit 을 사용하여 간편하게 머신러닝 사용하기

ML Kit 을 사용하여 간편하게 머신러닝 사용하기

2018.05.25
2018 구글 I/O에서 발표한 제품들 중 하나가 바로 ML Kit 인데요, ML Kit은 Firebase에서 강력하면서도 사용하기 쉬운 패키지로 모바일 개발자에게 Google 머신러닝 전문 기술을 제공하는 새로운 SDK라고 소개하고 있습니다. 요즘들어 개발을 해 나가면서 점점 백엔드(BackEnd)가 필요없어지는 것 같다는 것을 새삼 느낍니다. 장점이라면?ML Kit의 최대 장점이라 함은, 바로 머신러닝을 손쉽게 사용할 수 있다는 겁니다. 경험이 많은 숙련된 개발자라도, 머신러닝을 직접 구현하기에는 많은 시간이 들 것입니다. 그러나 ML Kit은 Firebase에서 프로젝트를 추가하는 것 만으로도 간편하게 머신러닝을 경험해 볼 수 있습니다. 물론 요금제에 따라 지원 기술이 상이하지만 무료 플랜에서도 충..
Gradle용 Android 플러그인 업데이트

Gradle용 Android 플러그인 업데이트

2018.05.05
사건의 발단오랜만에 시험 끝나고 나서 Android Studio를 켜고 이전 프로젝트를 빌드해 보니 자꾸 주의 메세지가 뜨길래 자세히 좀 보았습니다. 기존의 app단 gradle에서 사용하던 compile이 이제 완전 implementaion과 api로 변경됩니다. 이전에 Android Studio 3.0 버전인가.. 아무튼 메이져 업데이트 때 저거 때문에 한 번 고생했던 기억이 나는데 이제 또 api까지 추가가 되었나 봅니다. 사용해볼까?뭐.. 하라고 하면 합니다. 바로 업그레이드 해볼게요. 네.. testImplementation 은 testApi로, implementation은 api로 변경해 보았습니다. Gradle Sync시 떴던 안내 문구가 사라졌네요. 위의 사진처럼 변경된다고 합니다. 아직 ..
  • 최신
    • 1
    • 2
    • 3
    • 4
  • 다음

정보

CodeJUN 블로그의 첫 페이지로 이동

CodeJUN

  • CodeJUN의 첫 페이지로 이동

검색

메뉴

  • 홈
  • 방명록

카테고리

  • 분류 전체보기 (54)
    • Android (38)
    • BlockChain (4)
    • React Native (4)
    • 아두이노 (2)
    • 프로젝트 (6)

공지사항

  • 공지 - 블로그를 시작하며

태그

  • 아두이노
  • 안드로이드
  • C
  • c++
  • Firebase
  • 강좌
  • Android
  • arduino

나의 외부 링크

  • Github

정보

CODE_JUN의 CodeJUN

CodeJUN

CODE_JUN

블로그 구독하기

  • 구독하기
  • RSS 피드

방문자

  • 전체 방문자
  • 오늘
  • 어제

티스토리

  • 티스토리 홈
  • 이 블로그 관리하기
  • 글쓰기
Powered by Tistory / Kakao. © CODE_JUN. Designed by Fraccino.

티스토리툴바