WebRTC Test (With Flutter)

|

Server

WebRTC Build 및 Android 예제를 받아서 테스트하려고 하였으나 appr.tc가 접속되지 않아 별도로 생성이 필요함.

 

서버는 빌드에 사용한 VM을 사용하기로 하였음.

 

Ubuntu를 기준으로 작성.

 

brew는 root 계정으로는 동작이 안될 수 있기 때문에 다른계정을 사용.

 

필수 설치

* ruby  

* brew

 

진행 방법

git clone https://github.com/flutter-webrtc/flutter-webrtc-server.git

cd flutter-webrtc-server

brew update

mkcert -key-file key.pem -cert-file cert.pem  localhost 127.0.0.1 ::1 0.0.0.0

brew install golang

go run cmd/server/main.go  (root 계정으로 진행함.)

 

도메인이 없어서 로그 보니 SSL 관련 이슈가 발생함.

 

다른 테스트 서버나 무료 도메인을 알아봐 적용해야할 것 같음.

 

도메인이랑 SSL은 무료로 발급 받음.

 

VMware, Window, 공유기의 8086포트를 포트포워딩 해 준뒤 테스트한 결과 정상 동작 확인함.

 

Android App

진행 방법

프로젝트 다운로드 : https://github.com/flutter-webrtc/flutter-webrtc

flutter 설치 : https://docs.flutter.dev/get-started/install/windows

Path 설정

{flutter}/bin

 

설정 된 것 확인

where flutter dart

flutter doctor

 

***** 에러 발생시

[!] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
    X cmdline-tools component is missing
      Run `path/to/sdkmanager --install "cmdline-tools;latest"`
      See https://developer.android.com/studio/command-line for more details.
    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.

 

Android sdkmanager not found. Update to the latest Android SDK and ensure that the cmdline-tools are installed to
resolve this.

 

위와 같은 에러 발생시 Android Studio 에서 Tools > Android SDK Manager > SDK Tools > Android SDK Command-line Tools (latest) 체크하여 설치

 

flutter doctor --android-licenses

*****

 

Android Studio로 android 프로젝트 연뒤 실행하면 끝.

 

** issue 사항

android.enableR8=true 관련 warning 또는 에러 발생시

gradle.properties 아래와 같이 수정

 

#android.enableR8=true
android.enableD8=true

 

flutter sdk를 못찾아 이슈가 발생할 경우

local.properties 를 아래와 같이 추가

flutter.sdk={flutter Path}

 

빌드중 Caused by: org.gradle.process.internal.ExecException: Process 'command 'D:\src\flutter\bin\flutter.bat'' finished with non-zero exit value 1  에러가 발생할때

cmd로 flutter-webrtc-demo-master로 이동

flutter clean

flutter pub get

 

 

**** 서버부분 8086 포트를 사용하지 못할 경우 내부 설정 및 js 수정

flutter-webrtc-server/web/main.dart.js

flutter-webrtc-server/configs/config.ini

flutter-webrtc-server/cmd/server/main.go

 

수정 후 안될경우 크롬 기준으로 강력 새로고침(캐시삭제) 후 정상 동작 확인함

 

 

 

 

 

참조 : https://github.com/flutter-webrtc/flutter-webrtc-server

'Android > etc' 카테고리의 다른 글

외부 웹서버와 로컬 웹서버의 연계  (0) 2022.08.03
WebRTC 정리.  (0) 2022.05.30
WebRTC Build  (0) 2022.05.23
안드로이드 앱 런칭용 이미지 및 기타 사이트  (0) 2020.02.19
구글 마테리얼 디자인  (0) 2020.01.08
And