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 |