1. 파이어스토어 수정
=> Hertest 컬렉션 삭제
=> 실시간 통역
- 컬렉션 : Live_translate
- 문서 : (랜덤키로 생성)
- 필드 : tts / stt / user_token / hub_MAC
=> 생활 소리 알림
- 컬렉션 : Living_Sound
- 문서 : (센서 MAC 주소)
- 필드 : sensor_name / mac_address / sound / usage / led_checker / user_token
2. 깃허브 수정
=> Hermes_Hub -> develop 브랜치 생성 (서버버전구현)
3. 애플리케이션 수정
=> token키 전역변수에 저장
=> 랜덤키 생성(영문 3자리, 숫자 3자리)
=> 앱에서 컬렉션에 문서 생성 구현
4. 허브 수정
=> 파이썬 pyqt 팝업화면
=> 랜덤키 입력 구현 (키보드와 함께 실행)
=> 파이어 스토어와 연동
=> 파이어 스토어내 컬렉션 내 랜덤키와 동일한 문서 유무 확인
1. 허브 수정
=> 파이썬 pyqt 팝업화면 <랜덤키 입력 구현 (키보드와 함께 실행)>
=> 파이어 스토어와 연동 (hub_MAC은 test로 변동)
(파이어 스토어의 컬렉션 내 랜덤키와 동일한 문서 유무 확인) -> try except 이용
=> mp3 재생소리 조정
2. 앱 수정
=> 블루투스로 센서를 등록하면 DB에 센서 맥주소로 문서 등록
android/app/src/main/assets 폴더생성
react-native bundle --platform android --dev false --entry-file index.js --bundle-output android/app/src/main/assets/index.android.bundle --assets-dest android/app/src/main/res
cd android
./gradlew clean
./gradlew bundleRelease
./gradlew app:assembleRelease
최종파일 위치
android/app/build/outputs/apk/
참고
https://ppost.tistory.com/entry/ReactNative-apk-%EC%83%9D%EC%84%B1%ED%95%98%EB%8A%94-%EB%B0%A9%EB%B2%95
flow 관련 오류 해결 명령어
npm install flow-bin@0.27
리액트 네이티브 캐시삭제
C:\\Users\\사용자\\.gradle\\cache 내부의 폴더 삭제
리액트 네이티브 오류 발생 해결
watchman 설치 후 환경변수 path에 등록
watchman watch-del-all
props 등 이상한문법오류 발생시
파일> 환경 설정> 설정> 검색
"typescript.validate.enable": false,
"javascript.validate.enable": false,
필요한 라이브러리 설치
npm install react-native
npm install -g yarn
npm install expo
expo install react-native-safe-area-view react-native-safe-area-context
expo install @react-native-community/masked-view
npm install --save @react-navigation/native
npm install --save @react-navigation/drawer
npm install --save @react-navigation/stack
npm install --save react-native-reanimated react-native-gesture-handler react-native-screens react-native-safe-area-context @react-native-community/masked-view
npm install react-native-bluetooth-serial-next@1.0
블루투스 권한
AndroidManifest.xml in android/app/src/main
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
android/app/src/main/java/[...]/MainActivity.java or MainApplication.java에
import com.nuttawutmalee.RCTBluetoothSerial.*; 추가
getPackages() 메소드에서 반환하는 리스트에 new RCTBluetoothSerialPackage() add
=> packages.add(new RCTBluetoothSerialPackage()); 이건 안댐
android/settings.gradle에
include ':react-native-bluetooth-serial-next'
project(':react-native-bluetooth-serial-next').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-bluetooth-serial-next/android')
추가
android/app/build.gradle의 dependencies함수에
compile project(':react-native-bluetooth-serial-next') 추가
아나콘다에 가상환경 컴파일러 설치
1. 아나콘다 프롬프트 실행
2. conda update -n bvase -c defaults conda
3. 최신버전이 아닐 경우 proceed(y/n)이 출력되며 y를 누른다
4. 최신버전일 경우 넘어간다
5. conda -create -n 가상환경이름 python=버전
6. proceed(y/n)=y
7. activate 가상환경이름
8. pip install tensorflow=1.8
안드로이드 블루투스 장치검색 및 장치목록 참조
: https://blog.naver.com/awesomedev/220679754787
안드로이드 스튜디오 개발 (블루투스 챗 예제 등 수록)
: https://m.blog.naver.com/PostView.nhn?blogId=sseyoung513&logNo=221069723321&proxyReferer=https:%2F%2Fwww.google.com%2F
리액트 네이티브 블루투스 세팅
: https://kentakang.com/140
1. 안드로이드 블루투스 통신에 대해 구글링
2. 리액트네이티브 앱 블루통신 구글링
3. 안드로이드
구현할 것
1. 블루투스 연결기기 화면
2. 허브 자동연결 (hostname 실시간 통역화면 B 버튼)
3. 전송실패 경고창 출력
4. 실시간 통역화면 완성(한글Ver)
5. 실시간 통역화면 완성(지문자Ver)
npm install --save react-native-ble-plx
라이브러리 설치 및 추가
npm install react-native-bluetooth-serial-next@1.0
react-native link react-native-bluetooth-serial-next
npm cache clean --force
npm install
npm start -- --reset-cache
npx react-native run-android
AndroidManifest.xml in android/app/src/main
<uses-permission android:name="android.permission.BLUETOOTH" />
<uses-permission android:name="android.permission.BLUETOOTH_ADMIN" />
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
android/app/src/main/java/[...]/MainActivity.java or MainApplication.java에
import com.nuttawutmalee.RCTBluetoothSerial.*; 추가
getPackages() 메소드에서 반환하는 리스트에 new RCTBluetoothSerialPackage() add
=> packages.add(new RCTBluetoothSerialPackage());
android/settings.gradle에
include ':react-native-bluetooth-serial-next'
project(':react-native-bluetooth-serial-next').projectDir = new File(rootProject.projectDir, '../node_modules/react-native-bluetooth-serial-next/android');
추가
android/app/build.gradle의 dependencies함수에
compile project(':react-native-bluetooth-serial-next') 추가
테스트
git clone https://github.com/nuttawutmalee/react-native-bluetooth-serial-next.git
cd react-native-bluetooth-serial-next/example
npm install && npm link ../
npm start
react-native run-android
npm install --save-dev jetifier
npx jetify
npm run android
'Development > Project' 카테고리의 다른 글
모해묵지 프로젝트 Readme (0) | 2021.11.28 |
---|---|
Hermes - flutter / dart 정리 (0) | 2021.10.20 |
Hermes_ 개발 중 공부 정리 본 (0) | 2021.10.20 |
211011~15 모해묵지 개발일지 (0) | 2021.10.19 |
210929~05 모해묵지 개발일지 (0) | 2021.10.19 |