강의

멘토링

커뮤니티

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

HiroDaegu님의 프로필 이미지
HiroDaegu

작성한 질문수

배달앱 클론코딩 [with React Native]

실제기기에서 테스트 과정에서

작성

·

355

0

안녕하세요, 강좌의 내용대로 학습하고 테스트하는 과정에서 문제가 있어 질문 남깁니다.

 

가상 기기에서는 서버에 토큰도 잘 나오고, 회원가입 및 이후 단계 모두 정상적으로 작동하나

 

실제 기기(LG 스타일러스, android 7)를 연결하고, ip 변경 및 실제 연결 확인(adb devices)도 정상이고,

 

metro에서는 기기의 토큰도 잘 나오는 것을 확인했으나, 서버에서는 가상기기처럼 기기의 토큰 정보가 나오지 않아

 

회원가입도 안되는 걸로 확인됩니다.

어떤 부분을 확인해야 이 문제를 해결할 수 있을지 도움 받고 싶습니다

 

감사합니다. 

답변 1

0

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

제가 잘 이해가 안 되는 것이, 회원가입은 토큰이 필요없는데 토큰 정보가 없다는 말씀이 무슨 뜻인가요?

서버에 아예 요청이 안 가는 거라면 콘솔에

adb reverse tcp:8081 tcp:8081 입력해보세요

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

빠른 답변 감사합니다. 제가 여러 개의 내용을 한꺼번에 적어서 혼란을 일으킨 것 같습니다. 

(첫번째 사진: 가상 기기 / 두번째 사진: 실제 기기) 입니다. 

가상기기의 경우 실행을 하면 그 기기의 토큰이 바로 나오는데, 실제 기기를 연결하면 토큰이 나오지 않아 이를 해결하기 위한 방법을 듣고 싶어 질문했습니다.

말씀주신 adb reverse tcp:8081 tcp:8081를 콘솔에 입력하고 실행을 해봤으나 결과는 아래 두번째 사진과 같았습니다 

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

실제 기기에서 백엔드 서버 주소 뭘로 하셨나요?

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

말씀 주신 백엔드 서버 주소라는게 .env 파일을 말씀하시는 걸까요??

이게 맞다면, 현재 사용중인 인터넷의 ip를 입력했습니다.

(작업 환경은 Mac M1입니다)

 

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

실제 기기에서 그 ip에 접속할 수 있는게 맞나요? 공유기나 같은 네트워크에 연결되어있나요?

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

작성한 ip는 와이파이 공유기이며, 실제 기기에서 해당 와이파이를 연결해서 인터넷 사용에 아무 문제가 없습니다. 작업중인 맥북의 와이파이와 실제기기의 와이파이는 동일합니다! (API_URL=http://와이파이:3105)

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

http://와이파이:3105

이것도 핸드폰에서 접속이 되시는 상태인거죠?

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

ios/프로젝트명 폴더의 info.plist에

 <key>NSAppTransportSecurity</key>
    <dict>
        <key>NSAllowsArbitraryLoads</key>
        <true/>
    </dict>

있나요?

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

자꾸 번거롭게 하는 것 같아 죄송합니다ㅠㅠ

와이파이:3105로 핸드폰에서 접속이 잘되고, 

 

ios/project폴더명 안에 말씀 주신 코드는 없었기에 넣고 진행을 해도 서버에서는 실제 기기의 토큰을 불러오지 못하고 있습니다... 

 

(사용중인 실제 기기의 안드로이드 운영 체제가 너무 낮아서 호환이 안된다거나, adb reverser ~ 이 코드를 프로젝트가 있는 경로에서 진행을 한 것인데 다른 곳에서 진행을 한 게 맞을까요 ㅜㅜ)

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

아, 순간적으로 아이폰으로 착각했네요.

일단 아까부터 계속 토큰을 불러오지 못한다고 하시는데, 토큰은 불러왔는데 서버로 요청(refreshToken, phoneToken)이 안 간다가 정확한 표현입니다. 안드로이드라면 제가 강좌에서 언급한대로 다음 것 확인해보세요.

android에서 http 요청이 안 보내지면

  • android/app/src/main/AndroidManifest.xml 에서 태그에 android:usesCleartextTraffic="true" 추가
HiroDaegu님의 프로필 이미지
HiroDaegu
질문자

현재 상황에 대해 잘못 말씀드려 죄송합니다. 

언급주신 부분도 이상없이 잘 작성되어 있습니다. 

 

 

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

android 7이 문제인 것 같기도 합니다. sdk 버전이 30 이상으로 앱을 만들고 있는데 7이면 누가라서 27인가 28정도일 것 같거든요.

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

네, 알겠습니다!

말씀 감사합니다! 

제로초(조현영)님의 프로필 이미지
제로초(조현영)
지식공유자

플리퍼나 RN디버거 연결되어있으면 네트워크 요청이 안 간다는 이슈도 본 기억이 납니다.

HiroDaegu님의 프로필 이미지
HiroDaegu

작성한 질문수

질문하기