인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

인프런 커뮤니티 질문&답변

joshuabys님의 프로필 이미지

작성한 질문수

[코드팩토리] [초급] Flutter 3.0 앱 개발 - 10개의 프로젝트로 오늘 초보 탈출!

webview 사용해보기 에서 에러가 나요.

작성

·

4.3K

0

안녕하세요 강사님

3:23초에 에뮬레이터 재 시작하라고 해서 했는데 console에 보니까 에러가 나더라구요.

내용이 긴데요 밑에 이런식으로 나오고 화면은 흰색으로만 나옵니다.

무엇이 잘못 된 걸까요? 메인과 홈스크린은 맨 밑에다가 적어뒀습니다!

알려주세요!

Performing hot restart...

Syncing files to device Android SDK built for x86...

Restarted application in 865ms.

E/flutter ( 5452): [ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: PlatformException(channel-error, Unable to establish connection on channel., null, null)

E/flutter ( 5452): #0 WebStorageHostApi.create (package:webview_flutter_android/src/android_webview.pigeon.dart:2036:7)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452):

E/flutter ( 5452): [ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: PlatformException(channel-error, Unable to establish connection on channel., null, null)

E/flutter ( 5452): #0 WebViewHostApi.create (package:webview_flutter_android/src/android_webview.pigeon.dart:289:7)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452):

E/flutter ( 5452): [ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: PlatformException(channel-error, Unable to establish connection on channel., null, null)

E/flutter ( 5452): #0 WebSettingsHostApi.create (package:webview_flutter_android/src/android_webview.pigeon.dart:1013:7)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452):

E/flutter ( 5452): [ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: PlatformException(channel-error, Unable to establish connection on channel., null, null)

E/flutter ( 5452): #0 WebSettingsHostApi.setDomStorageEnabled (package:webview_flutter_android/src/android_webview.pigeon.dart:1061:7)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452):

E/flutter ( 5452): [ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: PlatformException(channel-error, Unable to establish connection on channel., null, null)

E/flutter ( 5452): #0 WebSettingsHostApi.setJavaScriptCanOpenWindowsAutomatically (package:webview_flutter_android/src/android_webview.pigeon.dart:1087:7)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452):

E/flutter ( 5452): [ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: PlatformException(channel-error, Unable to establish connection on channel., null, null)

E/flutter ( 5452): #0 WebSettingsHostApi.setSupportMultipleWindows (package:webview_flutter_android/src/android_webview.pigeon.dart:1113:7)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452):

E/flutter ( 5452): [ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: PlatformException(channel-error, Unable to establish connection on channel., null, null)

E/flutter ( 5452): #0 WebSettingsHostApi.setLoadWithOverviewMode (package:webview_flutter_android/src/android_webview.pigeon.dart:1239:7)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452):

E/flutter ( 5452): [ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: PlatformException(channel-error, Unable to establish connection on channel., null, null)

E/flutter ( 5452): #0 WebSettingsHostApi.setUseWideViewPort (package:webview_flutter_android/src/android_webview.pigeon.dart:1263:7)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452):

E/flutter ( 5452): [ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: PlatformException(channel-error, Unable to establish connection on channel., null, null)

E/flutter ( 5452): #0 WebSettingsHostApi.setDisplayZoomControls (package:webview_flutter_android/src/android_webview.pigeon.dart:1288:7)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452):

E/flutter ( 5452): [ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: PlatformException(channel-error, Unable to establish connection on channel., null, null)

E/flutter ( 5452): #0 WebSettingsHostApi.setBuiltInZoomControls (package:webview_flutter_android/src/android_webview.pigeon.dart:1313:7)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452):

E/flutter ( 5452): [ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: PlatformException(channel-error, Unable to establish connection on channel., null, null)

E/flutter ( 5452): #0 WebViewClientHostApi.create (package:webview_flutter_android/src/android_webview.pigeon.dart:1476:7)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452):

E/flutter ( 5452): [ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: PlatformException(channel-error, Unable to establish connection on channel., null, null)

E/flutter ( 5452): #0 WebSettingsHostApi.setUserAgentString (package:webview_flutter_android/src/android_webview.pigeon.dart:1163:7)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452): #1 Future.wait.<anonymous closure> (dart:async/future.dart:521:21)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452): #2 WebViewAndroidPlatformController.updateSettings (package:webview_flutter_android/webview_android_widget.dart:275:5)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452):

E/flutter ( 5452): [ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: PlatformException(channel-error, Unable to establish connection on channel., null, null)

E/flutter ( 5452): #0 WebSettingsHostApi.setMediaPlaybackRequiresUserGesture (package:webview_flutter_android/src/android_webview.pigeon.dart:1189:7)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452):

E/flutter ( 5452): [ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: PlatformException(channel-error, Unable to establish connection on channel., null, null)

E/flutter ( 5452): #0 DownloadListenerHostApi.create (package:webview_flutter_android/src/android_webview.pigeon.dart:1749:7)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452): #1 Future.wait.<anonymous closure> (dart:async/future.dart:521:21)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452): #2 WebView.setDownloadListener (package:webview_flutter_android/src/android_webview.dart:379:5)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452):

E/flutter ( 5452): [ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: PlatformException(channel-error, Unable to establish connection on channel., null, null)

E/flutter ( 5452): #0 WebChromeClientHostApi.create (package:webview_flutter_android/src/android_webview.pigeon.dart:1861:7)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452): #1 Future.wait.<anonymous closure> (dart:async/future.dart:521:21)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452): #2 WebView.setWebChromeClient (package:webview_flutter_android/src/android_webview.dart:399:5)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452):

E/flutter ( 5452): [ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: PlatformException(channel-error, Unable to establish connection on channel., null, null)

E/flutter ( 5452): #0 WebViewHostApi.loadUrl (package:webview_flutter_android/src/android_webview.pigeon.dart:401:7)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452):

E/flutter ( 5452): [ERROR:flutter/lib/ui/ui_dart_state.cc(198)] Unhandled Exception: PlatformException(error, java.lang.IllegalStateException: Trying to create a platform view of unregistered type: plugins.flutter.io/webview

E/flutter ( 5452): at io.flutter.plugin.platform.PlatformViewsController$1.createForTextureLayer(PlatformViewsController.java:189)

E/flutter ( 5452): at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.create(PlatformViewsChannel.java:122)

E/flutter ( 5452): at io.flutter.embedding.engine.systemchannels.PlatformViewsChannel$1.onMethodCall(PlatformViewsChannel.java:60)

E/flutter ( 5452): at io.flutter.plugin.common.MethodChannel$IncomingMethodCallHandler.onMessage(MethodChannel.java:262)

E/flutter ( 5452): at io.flutter.embedding.engine.dart.DartMessenger.invokeHandler(DartMessenger.java:295)

E/flutter ( 5452): at io.flutter.embedding.engine.dart.DartMessenger.lambdadispatchMessageToQueuedispatchMessageToQueue0$io-flutter-embedding-engine-dart-DartMessenger(DartMessenger.java:319)

E/flutter ( 5452): at io.flutter.embedding.engine.dart.DartMessengerExternalSyntheticLambda0.run(Unknown Source:12)

E/flutter ( 5452): at android.os.Handler.handleCallback(Handler.java:938)

E/flutter ( 5452): at android.os.Handler.dispatchMessage(Handler.java:99)

E/flutter ( 5452): at android.os.Looper.loop(Looper.java:223)

E/flutter ( 5452): at android.app.ActivityThread.main(ActivityThread.java:7656)

E/flutter ( 5452): at java.lang.reflect.Method.invoke(Native Method)

E/flutter ( 5452): at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)

E/flutter ( 5452): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)

E/flutter ( 5452): , null, null)

E/flutter ( 5452): #0 StandardMethodCodec.decodeEnvelope (package:flutter/src/services/message_codecs.dart:607:7)

E/flutter ( 5452): #1 MethodChannel._invokeMethod (package:flutter/src/services/platform_channel.dart:167:18)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452): #2 TextureAndroidViewController._sendCreateMessage (package:flutter/src/services/platform_views.dart:1134:18)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452): #3 AndroidViewController.create (package:flutter/src/services/platform_views.dart:762:5)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452): #4 TextureAndroidViewController.setSize (package:flutter/src/services/platform_views.dart:1062:7)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452): #5 RenderAndroidView._sizePlatformView (package:flutter/src/rendering/platform_view.dart:179:29)

E/flutter ( 5452): <asynchronous suspension>

E/flutter ( 5452):

 

메인은

import 'package:flutter/material.dart';
import 'package:untitled11/screen/home_screen.dart';

void main() {
  runApp(
    MaterialApp(
      home: HomeScreen(

      ),
    ),
  );
}

홈 스크린

import 'package:flutter/material.dart';
import 'package:webview_flutter/webview_flutter.dart';

class HomeScreen extends StatelessWidget {
  const HomeScreen({Key? key}) : super(key: key);

  @override
  Widget build(BuildContext context) {
    return Scaffold(
      body: WebView(
        initialUrl: 'https://blog.codefactory.ai',
      ),
    );
  }
}

답변 1

0

코드팩토리님의 프로필 이미지
코드팩토리
지식공유자

안녕하세요! 혹시 다음 영상에서 해결하셨나요!?

PlatformException이 나는겅우는 앱을 종료했다가 다시 실행하시면 됩니다!

혹시 여전히 안되시면 제 커뮤니티 아무곳이나 들어와서 원격 잡아주세요!

joshuabys님의 프로필 이미지
joshuabys
질문자

해결했어요 감사합니다!

joshuabys님의 프로필 이미지
joshuabys
질문자

그리고 저 다른 컴퓨터에 안드로이드 스튜디오 설치하는데 막혀서요..

[!] Android toolchain - develop for Android devices (Android SDK version 33.0.0)

X Android license status unknown.

Run flutter doctor --android-licenses to accept the SDK licenses.

See https://flutter.dev/docs/get-started/install/windows#android-setup for more details.

 

이부분이 왜 에러가 나는지 모르겠습니다.

 

C:\Users\수아>flutter doctor

'git rev-parse HEAD'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는

배치 파일이 아닙니다.

'DIR /B /O:D "C:\Users\수아\libraries\flutter\packages\flutter_tools\pubspec.yaml" "C:\Users\수아\libraries\flutter\packages\flutter_tools\pubspec.lock"'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는

배치 파일이 아닙니다.

Doctor summary (to see all details, run flutter doctor -v):

[√] Flutter (Channel stable, 3.3.2, on Microsoft Windows [Version 10.0.22000.978], locale ko-KR)

[!] Android toolchain - develop for Android devices (Android SDK version 33.0.0)

X Android license status unknown.

Run flutter doctor --android-licenses to accept the SDK licenses.

See https://flutter.dev/docs/get-started/install/windows#android-setup for more details.

[√] Chrome - develop for the web

[√] Visual Studio - develop for Windows (Visual Studio Community 2022 17.3.4)

[√] Android Studio (version 2021.3)

[√] Connected device (3 available)

[√] HTTP Host Availability

! Doctor found issues in 1 category.

C:\Users\수아>flutter doctor --android-licenses

'git rev-parse HEAD'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는

배치 파일이 아닙니다.

'DIR /B /O:D "C:\Users\수아\libraries\flutter\packages\flutter_tools\pubspec.yaml" "C:\Users\수아\libraries\flutter\packages\flutter_tools\pubspec.lock"'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는

배치 파일이 아닙니다.

Android sdkmanager tool was found, but failed to run

(C:\Users\수아\AppData\Local\Android\sdk\cmdline-tools\latest\bin\sdkmanager.bat): "ProcessException: 지정된 파일을 찾을 수 없습니다.

Command: C:\Users\수아\AppData\Local\Android\sdk\cmdline-tools\latest\bin\sdkmanager.bat --licenses".

Try re-installing or updating your Android SDK,

visit https://flutter.dev/docs/get-started/install/windows#android-setup for detailed instructions.

코드팩토리님의 프로필 이미지
코드팩토리
지식공유자

flutter doctor --android-licenses

이걸 실행하라는 의미입니다!

joshuabys님의 프로필 이미지
joshuabys
질문자

넣어서 해봤는데 이렇게 나오네요. ㅠ 안드로이드 스튜디오를 삭제하고 다시 깔아야할까요?

 

C:\Users\수아>flutter doctor --android-licenses

'git rev-parse HEAD'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는

배치 파일이 아닙니다.

'DIR /B /O:D "C:\Users\수아\libraries\flutter\packages\flutter_tools\pubspec.yaml" "C:\Users\수아\libraries\flutter\packages\flutter_tools\pubspec.lock"'은(는) 내부 또는 외부 명령, 실행할 수 있는 프로그램, 또는

배치 파일이 아닙니다.

Android sdkmanager tool was found, but failed to run

(C:\Users\수아\AppData\Local\Android\sdk\cmdline-tools\latest\bin\sdkmanager.bat): "ProcessException: 지정된 파일을 찾을 수 없습니다.

Command: C:\Users\수아\AppData\Local\Android\sdk\cmdline-tools\latest\bin\sdkmanager.bat --licenses".

Try re-installing or updating your Android SDK,

visit https://flutter.dev/docs/get-started/install/windows#android-setup for detailed instructions.

 

 

 

코드팩토리님의 프로필 이미지
코드팩토리
지식공유자

안녕하세요.

아무래도 SDK를 재대로 설치하지 않으신것같습니다.

제 설치영상을 그대로 따라하셨나요?

소프트웨어 환경설정은 하나도 빠짐없이 순서대로 따라해주셔야합니다.

환경설정 완전 제거 후 다시한번 진행해주시고 만약에 그래도 안되시면 다시한번 질문주세요!

원격으로 한번 봐드릴게요