1. 문제설명

문자열 s를 숫자로 변환한 결과를 반환하는 함수, solution을 완성하세요.

 

2. 제한조건 

- s의 길이는 1 이상 5이하입니다.

- s의 맨앞에는 부호(+,-)가 올 수 있습니다.

- s는 부호와 숫자로만 이루어져있습니다.

- s는 "0"으로 시작하지 않습니다.

 

3. 입출력 예

- 예를들어 str이 "1234"이면 1234를 반환하고, "-1234"이면 -1234를 반환하면 됩니다.

str은 부호(+,-)와 숫자로만 구성되어 있고, 잘못된 값이 입력되는 경우는 없습니다.

 

func solution(_ s:String) -> Int {
return Int(s)!
}

CodeWithChris에서 YoutubeApp 만들기 강의를 듣던 도중 오류가 발생하였다. 정확한 오류는 Like and Subscribe 좋아요 및 구독을 연동하는 것에서 오류가 발생했다. 이 오류를 해결하기 위해서 계속해서 잘못 입력 된 코드가 없는지 확인하였으나 아무런 이상이 없었다. 그리고 material file을 그냥 통째로 다운로드 받아서 실행했더니 그건 또 실행이 되었다. 그래서 다시 한 번 코드를 분석해보았으나 오타나 잘 못 입력된 코드는 없었다. 정말 맨붕이었다. 이걸로 시간을 좀 많이 소모했고, 그 다음 진도로 진행을 하지 못 했다. 콘솔창에는 "Youtube data api call failed with errorResponse status code was unacceptable: 400." 라는 오류 메세지뿐이었다. CodeWithChris 커뮤니티에 도움 글을 올렸지만 답변을 받지 못했다..ㅜㅜㅜ 

빨간 네모박스안에 YoutubeRequest 유튜브에 요청이 실패할시에 콘솔창에 Youtube data api call failed with errorResponse status code was unacceptable: 400 라는 메세지가 발생하도록 만들었다는 것을 확인하고, 이와 관련 된 코드를 다시 확인해봤었다. 하지만 문제해결은 아주 간단한 곳에서 해결되었다.(항상 문제는 아주 사소하고 미쳐 생각지도 못한 가벼운 실수를 해서 발생하는 듯 하다.) 

해결책은 API_KEY였다. YoutubeApp은 애초에 YoutubeAPI를 이용해서 사용하는 앱이다. 그런데 처음에 제대로 받았다고 생각한 API_KEY가 그렇지 않다는 것을 찾았고 GoogleCloudPlatform에서 API를 다시 받으니깐 작동이 잘 된다.... 정말 머리가 아팠고 문제점이 뭔지 헤매었고, 오랜 시간이 걸렸지만, 막상 또 문제를 해결하고 나니 기분이 정말 뿌듯하다. 

이제 내가 만든 유튜브 앱에서 구독을 누루면 실제 유튜브와 연동되어 구독 및 좋아요 정보도 반영 되게 되었다!!!

* 그리고 구글 아이디에 다른 앱이 내 정보를 사용할 권리에 대한 권한 부여를 해야만 구독 및 좋아요 기능을 공유할 수 있다.

 

유튜브 앱이 잘 작동하는 모습.

교훈

1. 실수는 아주 사소하고 미쳐 생각지도 못한 가벼운 실수에서 발생하는 듯 하다.

2. API를 사용하여 App을 만드는 경우에는 API_KEY 및 Constants 기본 상수로 설정한 외부 키와 링크를 잘 확인할 것.

3. 이번 디버깅은 정말 어려웠다....Lesson07에서 발생한 오류인데 더 이전 레슨에서 잘 못 설정되어 발생한 오류였으니깐... 그래도 혼자 스스로 찾아낸 나... 아주 대견하다.

'Tech Blog > Debugging Note' 카테고리의 다른 글

Debugging Note - 자동매매봇  (0) 2021.05.07
DebuggingNote - Swift, Learning App Error  (0) 2021.04.21

 

videoHostUrl을 올바르게 적용한 모습

Learning App, ios App을 만드는 프로젝트를 하였습니다. 해당 프로젝트는 교육과 관련 된 앱을 만드는 것으로, 강의 동영상 및 강의 퀴즈를 구현하는 것이 목표입니다. 앱을 만드는 도중에 동영상이 재생이 안되는 오류가 발생하였습니다. 일시적인 오류로 생각하여 코드를 계속 작성하였으나 나중에도 동영상 재생이 되지 않았습니다. 저는 github에 중요한 작업이 끝난 뒤에 저장을 해놓아서, 처음 동영상 재생이 안되었던 branch로 이동하여 에러가 생긴 사항에 대해서 구글링해보고 커뮤니티를 찾아보고 동영상 재생 코드와 관련 된 모든 코드들을 다시 되짚어봤습니다. 그리고 결국에는 vidieoHostUrl이 잘 못 설정 되었다는 것을 인식하게 되었고,  올바른 url을 설정하여 동영상을 재생시켰습니다. 작은 오류를 간과하고 코드를 진행한 결과, 더욱 더 복잡해지고 실수를 찾기가 여러워 진다는 것을 배웠습니다.

 

 

videoHostUrl 고친 후 정상적으로 작동하는 Learning App

교훈 

1. github로 항상 커밋(commit)하고 푸쉬(push)하여 저장해놓자. 코드가 잘 못 작성될 경우 되감아서 다시 복구 가능하다.

2. 외부링크를 항상 유심히 보자. 외부링크를 참조하여 url을 걸 때 실수가 많이 나온다.

3. 작은 오류를 간과하고 계속해서 코드를 작성하면 더 복잡해질 가능성이 있다. 

 

'Tech Blog > Debugging Note' 카테고리의 다른 글

Debugging Note - 자동매매봇  (0) 2021.05.07
Debugging Note - Swift, YoutubeApp  (0) 2021.04.21

+ Recent posts