티스토리

데브원영
검색하기

블로그 홈

데브원영

blog.voidmainvoid.net/m

life is short

구독자
35
방명록 방문하기
728x90
반응형

주요 글 목록

  • Android Q 부터 비 SDK 인터페이스 제한 하는 이유와 비 SDK 인터페이스 제한 확인하는 방법 android Q targetSdkVerison부터 공개된 SDK API만 사용가능하다. 이에 따라 android Q를 targetSdkVersion으로 하는 application은 공식 SDK인터페이스가 아닌 기능에는 접근하지 못하도록 제한한다.(공식홈페이지 참고) 왜 비 SDK를 제한하게 되었나? 안드로이드에서 @hide annotation으로 선언한 여러 sdk(android.xxx.xxx 같은 package)의 method들이 존재한다. @hide 구문을 사용하면 android내부에서만 접근 가능하고, 외부(application)은 접근하지 못하며 공식 패키지 색인에도 노출되지 않는다. 즉, 공식적으로 application단에서 사용이 불가하도록 선언해 놓은것이다. 그러나, 많은 전세계의 개발자들.. 공감수 0 댓글수 381 2019. 5. 10.
  • Pixel에 Android 이미지 설치할때 오류 fastboot too old; please download the latest version 해결하기 안드로이드 application개발에 대응하다 보면 android version upgrade에 민감하게 된다. 여러 api들이 생기고 사라지기 때문에 미리 android os를 접하고 무슨 에러가 나는지, 어떤 기능을 새로 사용가능한지 확인해야 한다. 이를 위해서 대부분의 android application 개발자들은 구글 공식 테스트용 단말로 사용가능한 pixel을 가지고 테스트하는데 미리 android 공홈에서 preview os image를 다운받아서 os를 단말기에 올릴 수 있다. Pixel용 Android Q 베타 시스템 이미지 다운로드 공식 홈페이지 Pixel용 다운로드 | Android Developers Instructions for downloading and installing pre.. 공감수 0 댓글수 365 2019. 5. 8.
  • 안드로이드에서 외부 jar file import하는 방법 이번포스팅에서는 Android studio에서 jar file을 import하는 방법에 대해 알아보겠습니다. #1 Android studio open #2 Android studio 우측에 있는 structure에서 Project 클릭 #3 libs folder 안에 추가하고자 하는 jar file copy&paste #4 붙여넣은 jar file을 우클릭하여 아래쪽에 있는 Add As Library 클릭 #5 library로 추가하고자 하는 module 선택 및 OK #6 cmd+; 단축키를 눌러 Project Structure을 확인하면 Library import 완료된 것을 확인 할 수 있다. 공감수 1 댓글수 251 2018. 12. 26.
  • Custom listview의 각 item에 animation 적용하기 개요안드로이드 custom listview를 사용하면서 parent item view에 각종 animation effect를 주고 싶을때 사용 제공 애니메이션# Alpha with translate animation : 좌측으로 이동 + 투명도가 변하면서 스르륵 나타나는 애니메이션# Alpha animation : 투명도가 변하면서 스르륵 나타나는 애니메이션# Scale animation : 점점 커지는 애니메이션 주요 코드ListViewAdapter.javacustom list view를 사용하기 위해 BaseAdapter를 상속받은 ListViewAdapter에서 parent view에 animation을 적용하면 각 item에 animation이 적용된다. @Override public View g.. 공감수 0 댓글수 364 2018. 12. 13.
  • app의 강제종료로 인해 FCM cloud messaging 푸시를 받지 못하는 이유? FCM cloud messaging을 사용하면 google의 푸시서버를 활용하여 각 기기에 push를 날릴 수 있다. 그런데 QA를 하던도중 흥미롭게도 push를 받지 못하는 단말이 생겼다. # 단말 재시작 후# 안드로이드 settings에서 force kill(강제종료) 흥미로운 사실은, 카카오톡이나 라인과 같은 App들은 단말기를 껐다 켜도, 그리고 강제종료 하더라도 잘 된다는 사실이다. 이를 해결하기 위해 FCM 공식문서를 찾아봤지만 뚜렷하게 나올만한 해결책이 없었고 stackoverflow에서 아래와 같은 정보를 얻게 되었다. 원본 글 : Android app not receiving Firebase Notification when app is stopped from multi-task tray .. 공감수 6 댓글수 964 2018. 9. 12.
  • [ConstraintLayout] 효과적인 ConstraintLayout 사용방법 [Android Knights 2018] 지금은 ConstraintLayout 시대 speaker. 안세원 - 카카오 모빌리티 안드로이드 개발자 최근 참여 앱 카카오 T 택시 기사용 카카오 T 카카오톡 Guide, Chain 등에서 부터 최신 업데이트된 기능까지! 혼자 알기 아까운 ConstraintLayout, 복잡한 구조도 한방에 멋지게! 복잡한 레이아웃을 단순한 계층구조를 이용해 표현할 수 있는 View Group Relative layout과 아주 비슷하지만 유연하고 다양한 기능을 제공함 ex. relative layout에서 4 depth이상 들어가야하는 것도 1 depth로 가능!!! ConstraintLayout 장점 Linear Layout을 써야만 했던 뷰 비율 조절도 간단히 가능(dep.. 공감수 2 댓글수 2,130 2018. 4. 22.
  • [Instance app]설치 없이 네이티브앱의 사용경험을 제공할 수 있는 방법 [Android Knights 2018]Best practice on Android Instance Appsspeaker. 김종식 - 원티드팀 안드로이드 개발자 만약 내가 개발한 앱이 설치없이 동작한다면? 설치 없이 네이티브앱의 사용 경험을 제공할 수 있는 인스턴트앱의 개발과정을 환경 설정 구성부터 배포까지 준비하였습니다. 이를 작업하면서 알게 된 많은 내용과 배포를 하면서 경험했던 유의사항, 인스턴트앱을 이용하여 시도했던 다양한 경험과 기존 프로젝트에 함께 적용하는 방법 등을 공유하려고 합니다. 일반적으로 웹에서 부터 딥링크방식을 많이 제공함 -> url에서 제공하는것을 네이티브로 연결(일반적임) but 설치가 되어있지 않다면 다시 play store로 이동해야하는 문제가 있다. 만약 설치가 없을 경우.. 공감수 0 댓글수 1,039 2018. 4. 22.
  • 구글 게임 플레이 서비스 디버깅 방법 구글 게임 플레이 서비스 디버깅Google Play Game Service(이하 GPGS)를 디버깅하다보면 나오는 무시무시한 에러가 있다. failed to sign in. please check your network connection and try again 만약 이 글을 읽는 개발자가 GPGS의 Document에 따라서 잘 개발했다면(혹은 GPGS sample app을 다운받아서 디버깅할때) 마지막 남은 관문을 넘지 못해서 나오는 오류인 것이다. GPGS는 디버깅시에 signed apk를 사용하여 디버깅해야만 한다. GPGS 디버깅 방법GPGS와 사용자의 google 계정 연결 혹은 업적과 같은 기능의 테스트를 위해서는 일반적인 Android studio의 RUN으로는 불가능하다. 해당 내용은 G.. 공감수 0 댓글수 0 2017. 9. 12.
  • 안드로이드 HandlerThread 스레드 사용법 Android HandlerThread android HandlerThread는 Thread class를 상속하고 내부에서 Looper.preapare()과 Looper.loop()를 실행하는 Looper 쓰레드이다. HandlerThread는 UI와 관련없지만 단일스레드에서 순차적인 작업이 필요할 때 사용한다. Example) 상기와 같이 인스타그램에 좋아요 버튼이 있다. 좋아요 버튼을 누르면 실시간으로 DB에 반영된다고 가정하자. 개발자는 UI를 블로킹하지 않도록 별도 쓰레드에서 DB에 반영하도록 할 것이다. 사용자가 좋아요를 마구마구 바꾸기도 한다. 만약 좋아요 상태가 바뀔 때 마다 스레드를 생성(new instance and start)하거나 스레드가 스레드(get instance and star.. 공감수 1 댓글수 1 2017. 7. 16.
  • android targetsdkversion & minsdkversion targetSdkVersion? minSdkVersion? maxSdkVersion?안드로이드에서 애플리케이션을 개발할 때 가장 기본적으로 설정해야 하는 manifest의 설정 인 uses-sdk에 대해 적어보고자 한다. 각각의 요소들의 값이 어떤 역할을 하는지 모르고 무작정 올리거나 내리는 경우가 많다.각 요소의 값에 따라 구동이 되는 단말의 개수가 현저하게 달라지므로, 이 요소들에 대해 자세히 알아보자. 구문123cs 포함된 위치 : android:minSdkVersion애플리케이션이 필요한 최소 API레벨을 지정하는 정수. Android 시스템이 시스템의 api레벨이 이 특성에 지정된 값보다 더 낮은 경우 사용자가 애플리케이션을 설치하는 것을 방지한다.(필수값) Example) 구분 애플리케이션 m.. 공감수 0 댓글수 0 2017. 7. 16.
    728x90
    문의안내
    • 티스토리
    • 로그인
    • 고객센터

    티스토리는 카카오에서 사랑을 담아 만듭니다.

    © Kakao Corp.