>

내 앱은 다음과 같습니다. 내 앱 화면

이것은 웹뷰를위한 나의 코드입니다 :

private String myPdfUrl = "https://drive.google.com/open?id=1rquwQNdXeds39Rlb32isX3bjYghHitCV";
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    init();
    webView.getSettings().setJavaScriptEnabled(true);
    webView.setWebViewClient(new WebViewClient() {
        @Override
        public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
            view.loadUrl(myPdfUrl);
            return true;
        }
    }
    );
    webView.loadUrl(myPdfUrl);
}

제 문제는 API 19,21로 Genymotion에서 실행할 때 작동합니다. 그러나 API 25에서는 WebView에 흰색 화면 만 표시됩니다.

내 앱 화면 2


  • 답변 # 1

    회전

    private String myPdfUrl = "https://drive.google.com/open?id=1rquwQNdXeds39Rlb32isX3bjYghHitCV";
    
    

    으로

    private String myPdfUrl = "https://drive.google.com/file/d/1rquwQNdXeds39Rlb32isX3bjYghHitCV/view";
    
    

    Google에서 다른 URL로 리디렉션 중이므로

    수정 :

    @SuppressLint("SetJavaScriptEnabled") 추가  당신의 onCreate()

    //...
    @SuppressLint("SetJavaScriptEnabled")
    @Override
    protected void onCreate(Bundle savedInstanceState) {
    //...
    
    

    Javascript 보안 문제를 억제해야합니다.)

관련 자료

  • 이전 php - 루프 오류, 값이 없음
  • 다음 Visual Studio 편집기에서 공간, 탭, CRLF 문자 표시