300x250

메일 본문 중 일부

 

게시 상태: 
거부됨검토 후 앱이 거부되고 정책 위반으로 인해 게시되지 않았습니다. 업데이트를 제출한 경우 이전 버전의 앱은 Google Play에서 계속 사용할 수 있습니다. 그러나 아래에 설명된 문제를 해결하지 않으면 이전 버전의 앱이 제거될 수 있습니다.

 

가족 정책 요구 사항 정보어린이에게 호소하는 요소가 포함된 앱은 모든 가족 정책 요구 사항을 준수해야 합니다. 앱에서 다음과 같은 문제를 발견했습니다.

버전 들자격 문제앱 번들:9광고 콘텐츠

앱의 광고 콘텐츠에 문제가 발견되었습니다.

  • 앱의 광고 콘텐츠는 앱의 콘텐츠 등급과 일치하지 않습니다. 이 문제를 해결하려면 앱의 등급과 일치하지 않는 콘텐츠를 삭제하거나 콘텐츠 등급 설문지를다시 작성하십시오. 앱으로 수익을 창출하는 경우 중요한 카테고리에서 광고를 제외했는지 확인하십시오. 자세한 내용은 가족 정책 요구 사항의 "광고" 섹션(#3)을 참조할 수 있습니다.

다음 단계: 다른 검토를 위해 앱 제출1.가족 정책 요구 사항(및 해당되는 경우 가족 프로그램 요구 사항을 확인)을읽고 앱을 적절하게 변경합니다.2.변경 내용을 저장하기 전에 앱이 다른 모든 개발자 프로그램 정책을 준수하는지 다시 확인합니다.연락처 지원정책을 검토하고 당사의 결정이 잘못되었다고 생각되면 정책 지원 팀에문의하십시오. 영업일 2일 이내에 다시 연락드리겠습니다.이 두 가지 질문 설문 조사를완료하여 개발자 경험을 개선할 수 있도록 도와주세요.

 

 

구글로 부터 기존에 올려놓은 앱이 가족정책에 위반되었다고 메일이 왔다.

일단 급처방으로

전체 사용가능에서  18세 이상만 사용 가능하도록 변경 해놨다.

 

안그래도 사용자 유입이 적은데 더 악화 될 것같다.

 

추후 출시할 앱에서도

사용자 유입에 영향이 끼칠테이니

해당 정책에 대해서 자세히 보고 대응이 급선무로 판단된다.

반응형
300x250

설치


Android Studio > File > Settings > Plugins > "JSON To Kotlin" 검색 > Install

 

 

생성 및 사용 ( JSON을 Kotlin data class로 변환 )


프로젝트 탐색기 > 생성할 패키지 공간 > 마우스 우 클릭 > New > "Kotlin data class file from JSON" > JSON데이터 붙혀 넣기 

 

반응형
300x250

자세한건 공식홈 참조

해당 글은 이곳저곳 볼 필요 없이 후다닥 적용시키기 위함

선행 작업


- 해당 안드로이드 Package에 대한 Firebase 프로젝트 생성

- Project 수준 gradle : 

buildscript{

....

dependencies{

...

classpath 'com.google.firebase:firebase-crashlytics-gradle:2.4.1'

...

}

}

 

- App 수준 gradle :

plugins {

...

id 'com.google.firebase.crashlytics'

...

}

 

dependencies{

// Import the Firebase BoM
implementation platform('com.google.firebase:firebase-bom:25.12.0')


// Declare the dependencies for the Crashlytics and Analytics libraries
// When using the BoM, you don't specify versions in Firebase library dependencies
implementation 'com.google.firebase:firebase-crashlytics-ktx'
implementation 'com.google.firebase:firebase-analytics-ktx'

}

적용


Android Studio > Tools > Firebase > Assistant 탭 활성화 됨 > Crashlytics 선택 > Get Started with Firebase Crashlytics > Guide 참조 ( 요약 sdk적용, 강제 예외 발생, Firebase Console에서 로깅 되는지 확인 ) 

 

반응형
300x250

자세한 내용


안드로이드 공식 홈페이지

https://developer.android.com/studio/build/shrink-code?hl=ko

목적 


 - 코드 난독화 -> 디컴파일 등 코드 노출 or 앱 해킹에 대한 방어책 중 하나

이외 리소스 용량 절감 등 


적용 예 ( release에만 적용 ) 


App수준 Gradle ( build.gradle : Module )

> android { 

...

buildTypes{

...

release {

minifyEnabled true //code 축소
shrinkResources true //resource 축소
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'),
'proguard-rules.pro', 'gson.pro', 'glide.pro','aws.pro','retrofit2.pro' // ㅇ

// 추가 규칙 : 예외 적용 -> retrofit2, glide등 라이브러리에 대한 예외처리 필수

}

}

}


주의사항


두 모드 ( release와 debug) 에 대한 옵션을 상이하게 적용한 경우,

동작 확인 필수

예) debug 모드에서 정상적으로 동작, 

스토어에 release 모드로 배포된 앱 런타임중에 예외 발생 가능성 굉장히 높음.



추가사항 


2020-11-17

1. Firebase Crashlytics 읽을 수 있는 오류 보고서 

- Firebase Crashlytics를 사용할 경우, 읽을 수 있는 오류 보고서가 업로드 되려면 꼭 아래 옵션 적용

관련 링크 :
https://firebase.google.com/docs/crashlytics/get-deobfuscated-reports?platform=android


-keepattributes SourceFile,LineNumberTable        # Keep file names and line numbers.
-keep public class * extends java.lang.Exception  # Optional: Keep custom exceptions.


- debug 버전엔 위 옵션을 적용안해도 판단된다면 아래 구문 삽입.
이 또한 위 링크에 자세히 설명되어있다.

buildTypes {
    debug
{
     ....

      firebaseCrashlytics
{
        mappingFileUploadEnabled
false
      }

    }
 
}



확인 필요 사항 


실제로 Proguard를 적용한 앱을 디컴파일 했을 때, 

보안키와 같은 중요한 정보 난독화 여부



반응형

+ Recent posts