에러

플레이 스토어 앱 등록 거부/ 유튜브 백그라운드 실행

changha. 2021. 3. 2. 14:08

며칠 전 플레이 스토어에 앱을 등록하고

검토 중에 있었다. 

 

그런데 오늘

위 사진과 같은 이메일이 왔다. 

 

구글링을 해보니 아마 웹뷰에서 유튜브를 틀었을 때 

백그라운드에서 유튜브가 재생되는 부분이 문제 인 듯 하다.

 

유튜브 프리미엄, 유튜브 광고, 애드몹 여러 가지 수익모델을 이용하여

악용하는 것을 철저히 구글에서 검토하고 있다. 

 

내 경우는 webView 부분을 고쳐봤다. 

 

먼저 <AndroidManifest.xml> 파일에

 

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>

 

코드를 추가 하고 

 

webView 가 있는 소스코드에 아래를 추가한다.

@Override
    public void onPause() {
        super.onPause();
         try {
                Class.forName("android.webkit.WebView")
                        .getMethod("onPause", (Class[]) null)
                        .invoke(webView, (Object[]) null);
            } catch(Exception e) {
                e.printStackTrace();
            }
    }

 

 @Override
    public void onResume() {
        super.onResume();
        try {
            Class.forName("android.webkit.WebView")
                    .getMethod("onResume", (Class[]) null)
                    .invoke(webView, (Object[]) null);
        } catch(Exception e) {
            e.printStackTrace();
        }

그러면 webView를 보다가 앱을 화면에서 껐을 때 

webView도 일시정지 되므로 그 안에서 재생 중이던 유튜브도 정지 된다.

그리고 다시 들어가면 onResume 메서드에 의해 정상적으로 작동한다.