목록Android (39)
Wook No.1
인앱결제 예상 이슈 사항 1. 단일 상품만 결제 가능(복합결제 불가) 2. 제품 가격변경이 불가하여 포인트 사용 불가 3. 트렌젝션 처리 (플레이 스토어 결제 완료후 후처리 이슈 결제 구글 결제 취소 로직 처리 / Retry) 4. 지속적인 상품 추가에 대한 앱내 상품코드 정의 5. 구글 결제 취소 / 환불 별도 관리(플레이 스토어) 엔카 인앱 결제 Client, Server diagram 1. 주문정보 요청 / 발급 (결제 API, 전처리) 2. 선택한 ITEM 결제(인앱 API) 3. 결제 완료된 상품 소비(인앱 API) 4. 상품 지급 요청(주문 ID, 구매 Token) 5. 결제정보 검증(주문정보 / 구글결제 정보 검증) 6. 상품지급(후처리) 7. 결제 완료 페이지
1. 라이브러리 설정 app/build.gradle AndroidManifest.xml BillingClient 초기화 Google Play 결제 연결 구입가능 상품 표시 상품구매 구매처리 구매확인 Google Play 결제 라이브러리 버전 2.0부터는 앱에서 모든 구매를 소비하거나 확인해야 합니다. 3일 이내에 구매를 소비하거나 확인하지 않으면 Google에서 자동으로 구매를 취소하고 사용자에게 환불합니다. 자세한 내용은 구매 확인을 참조하세요. 서버API https://developers.google.com/android-publisher/api-ref/rest/v3/inappproducts
1. 라이선스 테스트 구글 플레이 콘솔 -> 설정 -> 라이선스 테스트 테스터 계정을 등록하여 해당 계정으로 결제시 청구되지 않음. 정기 구독권의 경우 1개월 -> 5분 주기로 변경 가능 2. 내부 테스트 설정 출시 > 테스트 > 내부 테스트 3. APK 업로드 수익 창출 > 인앱 상품 > 새 APK 업로드(인앱 결제가 구현된 APK) 4. 인앱 상품 등록 - 소비성 상품: 앱에서 여러번 구매하고 소비 할 수 있는 형태 - 비소비성 상품: 한 번 구매하면 영구히 적용되어서 중복 구매가 되지않는 형태 상품 만들기 저장 후 "활성화" 해야 앱에서 사용할 수 있는 상태가 된다.
Serializable 은 Java 만 아는 사람이라면 쉽게 알 수 있는 serialization 방법. 그냥 Serializable 을 implementation 만 해주면, serialize 가 필요한 순간에 알아서 serialze 해주는 편리한 marker interface. 그러나, mobile 시대가 강림하면서 등장한 유망한 어린이(?) 가 있으니 그는 바로 Parcelable 이 녀석은 IPC ( Inter Process Communication ) 에 최적화된 녀석으로 Serialize 보다 속도가 빠르다. 물론, 해야 하는 일은 Serialize 보다 훨씬 많다. (writeToParcel, describeContents, new Creator(), 생성자 Parcel read) 직접 se..
Activity 애플리케이션 구성 요소로서, 사용자가 전화 걸기, 사진 찍기, 이메일 보내기 또는 지도 보기 등의 일을 하기 위해 상호작용할 수 있는 화면을 제공합 니다. 액티비티마다 창이 하나씩 주어져 이곳에 사용자 인터페이스를 끌어올 수 있습니다. 이 창은 일반적으로 화면을 가득 채우지만, 작은 창으로 만들어 다른 창 위에 띄울 수도 있습니다. public class Activity extends ApplicationContext { protected void onCreate(Bundle savedInstanceState); protected void onStart(); protected void onRestart(); protected void onResume(); protected void onP..
Handler memory leak 경고 해결 1. Lint 경고 취급 하지 않기 @SuppressLint("HandlerLeak") 2. Handler Callback 전달
Android 5.0부터 WebView Security 부분이 강화되면서 Third party cookie 설정에 따라 webview 에서 block 시키는 게 기본이 되었다. 그래서 혼합된 컨텐츠와 타 사 쿠키를 허용하려면 setMixedContentMode()와 setAcceptThirdPartyCookies() 메서드를 사용해야 한다. WebSettings.MIXED_CONTENT_ALWAYS_ALLOW : 항상허용 WebSettings.MIXED_CONTENT_COMPATIBILITY_MODE : 호환성 모드 WebSettings.MIXED_CONTENT_NEVER_ALLOW : 허용안함