본문 바로가기

기타/개발일지

[2022-06-29] 개발일지

반응형


 

1. Project

TourApp Project ( Backend - DRF / Frontend - Android Studio)


2. Process

Backend: Social Sign in / Sign up (Social Login) 기능
Frontend: User info / Login window implement


3. Issue

1) 모바일 로그인을 위한 WebView 구현
2) WebView에서 로그인 후 JSON 응답을 앱으로 받는 방법


4. Today Study Contents

1)  모바일 로그인을 위한 WebView 구현

어쩌면 조금 더 빨리 해결할 수도 있었을 거 같다. 단순히 IP 설정만 바꿔주면 되는 문제였기 때문이다. 그런데도 이렇게 오래 걸린 이유는 Naver Login에 대한 이해가 부족했기 때문이다. 이게 테스트 환경이라서 이렇게 되는 거 같다.

일단 네이버 개발자센터에서 어플리케이션 서비스 환경에 모바일 웹을 추가하고 거기에 안드로이드에서 요청을 보내는 IP 주소를 추가해준다. 그리고 DRF 에서 domain 을 안드로이드 요청 IP로 변경한다. 다만 마지막 요청 부분에서는 다시 PC domain으로 요청을 보내야 한다. 이유는 자세히 모르겠으나 모바일 웹에서 보내고 확인하는 과정이 결국 서버 IP로 가야하기 떄문인 거 같다. 이전까지는 Naver와 통신을 하다가 이 부분에서는 다시 서버와 통신하기 때문인듯..

이렇게 하면 아래와 같은 응답을 받을 수 있다. 이에 대한 자세한 내용은 추후 네이버 로그인 기능을 프로젝트로 블로그에 작성하도록 하겠다.

어제 발생한 오류

2) WebView에서 로그인 후 JSON 응답을 앱으로 받는 방법

막혀있던 로그인 부분이 끝나고 이제 다시 한번 막힌 부분.. 언제 끝날 수 있을지....ㅠㅠ 독학은 참 힘들다..

이번에는 아래와 같이 Callback 함수가 정상적으로 작동하고 "access_token", "refresh_token"이 정상적으로 반환되어 왔다.

문제는.. 어떻게 WebView를 종료시키고 해당 access_token 과 refresh_token을 preference에 저장하느냐이다..

휴.. 하나도 쉬운게 없다.. 로그인 부분만 어떻게 넘어가면 다음 부분부터는 그래도 괜찮지 않을까...? 하고 희망을 갖고 있는데... 제발...ㅠㅠ


5. Reference

-


6. Plan Study for Tomorrow

1) WebView에서 로그인 후 JSON 응답을 앱으로 받는 방법

(1) WebView에서 응답을 제대로 받으면 Token을 저장하고 WebView를 종료한다.
(2) Main Page로 이동한다.

방금 읽은 글인데.. 아래 링크를 보면 로그인 API 를 제공하는 기업들은 안드로이드로 로그인 할 경우 REST API 방식이 아닌 네이티브 방식을 권장한다고 한다...... 지금까지 열심히 달려왔지만 다 엎고 네이티브 방식으로 가야할 수도 있는 상황.. 허허...

https://devtalk.kakao.com/t/rest-api/61979

 

모바일 앱 개발 rest api를 이용하여 카카오 로그인 처리

안녕하세요. 저는 자마린이라는 플랫폼에서 어플을 개발중입니다. 카카오 로그인를 하기 위해서 멀티 플랫폼으로 개발중이라 안드로이드/ios를 따로 사용하지 않고 REST API를 사용중인데 카카오

devtalk.kakao.com

어떻게 할지는 내일 고민해봐야겠다.

일단 지금까지 했던 DRF 의 소셜로그인 방식을 블로그로 써놓고... 해결이 안된 WebView로 모바일 웹 로그인 방식도 적어놓고 네이티브로 진행해보아야겠다...

지금까지 한 것들이 헛수고가 되는 기분..ㅠㅠ......

다시 시도해보아야겠다..


 

반응형

'기타 > 개발일지' 카테고리의 다른 글

IT 관련 용어 정리노트  (0) 2022.12.28
[맥OS] Mac OS 단축키 및 Xcode 단축키  (0) 2022.11.01
[2022-06-28] 개발일지  (0) 2022.06.28
[2022-06-23] 개발일지  (0) 2022.06.27
[2022-06-22] 개발일지  (0) 2022.06.23