본문 바로가기

안드로이드/자바

(39)
[AOS] 인앱 결제 라이브러리 4 적용 및 AIDL 마이그레이션 ( + 광고 제거 기능 구현 ) ※신규앱의 경우 8월부터, 업데이트의 경우 11월부터 Billing Library 버전 3 이상을 사용해야 업로드 가능합니다. 마이그레이션 하시는 분들중 뭘 지워야할지 헷갈리신다면 기존에 추가한 모든걸 삭제해도 무방합니다. 간혹 저처럼 어떤걸 추가 했는지 헷갈리시는 분들을 위해 간략하게 기술하겠지만 그래도 헷갈리신다면 제가 작성한 기존 포스팅을 참고해주세요. 신규 적용 이신분은 스크롤을 조금만 내리셔서 '신규 라이브러리 적용'부터 참고해주세요 ! | 구버전 소스 제거 aidl 소스 파일 제거 기존에 사용중인 결제 관련 코드를 제거합니다. ( ex. labHelper..등등 ) 저의 경우 아래 사진에 있는 파일들이 AIDL ( 구 버전) 관련 파일들인데 모두 삭제하겠습니다 ( aidl 폴더와 util 폴더..
[Android] 외국인 대상 광고 플랫폼 - MoPub 배너 다국어 출시하면서 외국 사용자들에게 적합한 광고 sdk를 찾다가 추가하게 됐습니다. 효율에대한 내용은 추후에 올리도록 하겠습니다. 그리고 모펍은 minSdk 19 이상인 앱에만 추가할 수 있으니 참고해주세요. >> 앱 추가 먼저 모펍 광고를 추가하려면 구글스토어에 출시된 상태여야 합니다. 공식 사이트에서 회원가입 후 진행해주세요, 회원 가입 이후 상단 우측에 'New APP' 버튼을 클릭하세요 마켓에 출시되어 있는 앱의 주소를 적으세요 광고 유닛 추가 저는 포맷으로 배너를 선택했습니다. 그리고 이름외 다른 옵션들은 디폴트 값으로 두었습니다. 생성 후 unit id값등 정보들이 나오는데 아래 문구 중 'MoPub Integration suite' > 'ASSISTANT' 를 클릭 해, 적용할 광고 옵션들을..
Remote Config를 사용해서 서버 없이 업데이트 버전을 체크하자 : 안드로이드 많은 개발자들이 취미겸 1인 개발을 진행하는데 비용 부담이 큰 서버를 운영하기엔 어렵습니다. 그래서 구현을 포기해야 하는 기능들도 많이 있는데 뒷북 수준이지만 Firebase 에서 제공중인 Remote Config를 사용하면 일부 기능들은 구현이 가능합니다. 간단한 예로는 신규 기능이 출시되서 이전 버전을 사용하는 유저들에게 새로운 버전을 안내하고 싶은 경우 Remote Config를 사용하면 됩니다. Remote Config는 무료로 제공되지만 값을 가져오는 간격은 12시간을 권장합니다(기본값) 기본적인 구조는 키/값 구조이지만 임의의 유저들에게만 값을 전달할 수 있고 json 구조로 복잡한 구조의 데이터 전달도 가능합니다. 이를 활용해서 업데이트 버전 체크 뿐만 아니라 다양한 기능을 무료로 구현할 수..
[안드로이드/Android] 카카오톡 이모티콘 선택 뷰 만들기 카카오톡에서 이모티콘을 보낼 때 키보드 위로 덮이는 뷰를 팝업 윈도우를 사용해서 개발했습니다. 분석 이모티콘 선택할 때 키보드가 나타는 것과 동일하게 채팅 입력창 아래로 나타나며, 키보드가 있는 상태에서는 overlay 되는 구조입니다. 키보드와 같은 높이를 갖고 있어 자연스럽게 show/hide 합니다. 키보드 높이는 키보드가 나타나기 전에는 알 수 없어 default로 비슷한 값인 350dp로 설정하고, 키보드가 나타났을 때 그 높이를 측정해 사용합니다. 구현 Init View popupView = getLayoutInflater().inflate(R.layout.view_keyboard, null); PopupWindow popupWindow = new PopupWindow(popupView, Li..
[안드로이드/Android] 64bit 대응 최초 작성 : 19.07.19 최종 수정 : 19.07.30 수정 이력 카카오 지도 64비트 지원 업데이트 ( 19.07.30 ) 안녕하세요, 그동안 앱을 업데이트할 때마다 뜨던 경고 메세지 중 하나로, 나중에 해야지 하다가 코앞에 닥쳐서야 대응하면서 포스팅을 남깁니다. 19년 8월 1일부터 앱 업데이트 및 신규 출시 시 64비트를 지원해야 업로드가 가능하기 때문에 필히 대응하셔야 합니다. 먼저 현재 앱이 64비트를 지원하는지 확인할 수 있습니다. Build -> Analye APK 선택하셔서 스토어에 업로드한 apk를 선택해 확인할 수 있습니다. lib 폴더 안에 arm64-v8a or x86_64 폴더가 없다면 추가해서 업데이트해야 합니다. 아래 사진은 카카오 지도를 사용 중인 앱을 분석했을 때 결과..
[안드로이드/Android] 카카오 지도 연동하기 최초작성 : 19.05.17 최종수정 : 19.07.23 수정이력 realm 라이브러리와 함께 사용시 에러 처리 (19.07.12) TargetSDK 28 대응 (19.07.23) 이번 포스팅은 카카오지도 연동가이드 입니다. 카카오에서 제공하는 가이드가 있긴하지만 최신화가 이루어지고 있지 않아 작성했습니다. 네이티브 앱 키 발급 및 해시키 등록 카카오에서 제공하는 서비스는 대부분 네이티브 앱 키를 발급받아야 이용 가능합니다. -카카오 개발자 페이지에 접속하여 개발자 등록 및 앱을 생성합니다. -생성한 앱을 선택해 (설정 > 일반 > 플랫폼추가) 안드로이드를 추가합니다. -해시키를 등록합니다. ※위 과정 및 해시키 등록에 관하여, 제 포스팅중 카카오 로그인연동을 참고해주세요 [안드로이드/Android] 카..
[안드로이드/Android] QR코드 리더기 만들기 ZXing 라이브러리를 사용하면 손쉽게 QRCode Reader를 구현할 수 있습니다. 이번 포스팅은 기본적인 라이브러리 사용 방법과 뷰 커스텀을 중점적으로 다루겠습니다. 설정 프로젝트의 타겟 버전에 따라 조금 차이가 있습니다. build.gradle ( App 레벨 ) 설정 - SDK 19+ zxing-android-embedded는 QRCode와 관련된 내용들을 사용하기 위해 추가하며, appcompat은 최소 23이상이 필수 입니다.dependencies { implementation 'com.android.support:appcompat-v7:27.1.1' implementation 'com.journeyapps:zxing-android-embedded:3.6.0' }※buildToolsVersi..
[안드로이드/Android] 프레임 애니메이션 구현 이번 포스팅의 주제는 '프레임 애니메이션'입니다.일반적으로 애니메이션은 위젯의 크기나 위치등을 조정하는 애니메이션을 많이 사용하지만, 프레임 애니메이션은 이미지뷰의 위젯을활용해 여러 이미지를 교차하여 보여주는 애니메이션을 말합니다. 1. 교차해서 보여줄 이미지들을 drawable폴더에 넣습니다. 2. drawable폴더에 새로운 resource file을 생성합니다. ( root element는 animation-list ) resource fileanimation-list의 oneshot은 리소스 파일의 리스트를 한번만 실행할지 정하는 값으로 'ture'일 경우 애니메이션은 한번만 재생됩니다.각 아이템의 duraion은 이미지를 얼만큼 보여줄지 시작을 설정하는 것으로 단위는 밀리세컨드 입니다. 3. 애..