욘돈
욘돈2y ago

err_unknown_url_scheme

안드로이드 개발자인데 토스 결제를 추가했는데 위의 오류가 나서 토스 개발자 페이지를 보고 수정을 해서 오류가 안떠서 안심을 했는데 토스가 깔려 있지 않은 상태에서 테스트를 했는데 토스 설치 안내 페이지까지 뜨는데 그 페이지에서 다음 버튼을 누르면 다시 err_unKnown_url_scheme 에러가나요.
54 Replies
토스페이먼츠 BOT
⏳ 잠시만 기다려주세요! 곧 답변드리겠습니다
오류 문의일 경우 아래 정보를 미리 전달해주시면, 빠른 답변에 도움이 됩니다.
- 주문번호(orderId) : - 문의 내용 :
(img를 함께 첨부해주시면 도움이됩니다)
* 계약관련 내용은 1544-7772로 문의주세요. * 주말/공휴일에는 답변이 늦을 수 있어요.
욘돈
욘돈OP2y ago
토스가 깔려 있지 않을 경우 "토스페이로 결제하려면 다음을 눌려주세요."라는 문구가 있는 페이지가 나오는데 거기에서 다음을 눌렀더니 err_unknown_url_scheme 오류가 났어요
엄청난 마법사
결제창은 웹뷰로 띄우고 계실까요??
욘돈
욘돈OP2y ago
네 웹뷰요
이실장
이실장2y ago
설치가 안되있으면, market:// 으로 시작하는 Url로 이동하는데 웹뷰에서 해당 헤더를 읽지 못해서 그렇습니다. 해당 오류코드로 구글 검색해보시면 여러 해결책을 확인하실 수 있습니다.
욘돈
욘돈OP2y ago
켭쳐 사진을 보여드릴까요?
욘돈
욘돈OP2y ago
No description
Ayaan이안
Ayaan이안2y ago
아뇨 설치가 되어 있지 않다면 마켓으로 이동됩니다
욘돈
욘돈OP2y ago
저기에는 마켓으로 인한 오류라고 안떠서
이실장
이실장2y ago
웹뷰(WebView)에서 외부 앱 열기 | 토스페이먼츠 개발자센터
브라우저가 아닌 모바일 웹뷰로 결제창을 띄울 때 카드사별 결제수단을 인증하려면 외부 앱(3rd-party 앱)을 연동해야 합니다. 연동에 필요한 외부 앱 스킴(App URL Scheme)목록과 추가 로직을 살펴보세요.
욘돈
욘돈OP2y ago
오류만 그렇게 표시되는거에ㅛㅇ?
이실장
이실장2y ago
여기 확인해보셨나요?
Ayaan이안
Ayaan이안2y ago
저 오류는 토스를 설정에 추가하지 않으신 것 같습니다. 이사원님 보내주신 링크를 참고해서 설정에 추가 해 주시기 바랍니다.
이실장
이실장2y ago
마켓이동도 직접 구현안하면 안넘어가요~
욘돈
욘돈OP2y ago
Ayaan이안
Ayaan이안2y ago
네 근데 오류는 토스로 호출을 못하는 오류네요~
욘돈
욘돈OP2y ago
저 원래 토스 결제 연동되어있엇고 최근에 저 오류가 나서
Ayaan이안
Ayaan이안2y ago
마켓으로 안넘어 간거면 market:// 에 대해서 오류가 나있어야 하는데..
욘돈
욘돈OP2y ago
알려주신 링크로 가서 수정했어요 잘되는데 토스 없을때만 저렇게 오류나서
이실장
이실장2y ago
저거 외부 브라우저로 이동하는거죠? if (!packageName.isNullOrBlank()) { startActivity( Intent( Intent.ACTION_VIEW, Uri.parse("market://details?id=$packageName") ) ) 이거 추가해주시면 될것 같아요 토스앱없어서 외부 브라우저로 이동하면서, 브라우저가 읽지 못하는 사이트라서 그렇습니다.
Ayaan이안
Ayaan이안2y ago
이게 어떤 브라우저 일까요? 브라우저에서 저렇게 웹뷰의 네이티브 오류를 띄우진 않는데..
욘돈
욘돈OP2y ago
웹뷰에요 앱에 들어잇는 웹뷰요
Ayaan이안
Ayaan이안2y ago
아니요 열린 앱이 웹뷰가 아니라 브라우저이신데요.
욘돈
욘돈OP2y ago
웹뷰로 만든 앱내에 구현되어있는 브라우저에요
Ayaan이안
Ayaan이안2y ago
웹뷰 안에 브라우저를 구현하신건가요? 그렇군요..
욘돈
욘돈OP2y ago
저 주소창도 제가 만든거고요
Ayaan이안
Ayaan이안2y ago
기존 코드의 startSchemeIntent 부분에 이 부분이 존재하는지 확인 부탁드릴게요.
No description
욘돈
욘돈OP2y ago
잠시만요
Ayaan이안
Ayaan이안2y ago
혹시 어떤 언어로 개발중이실까요. 위에 보내드린 코드는 코틀린입니다.
Ayaan이안
Ayaan이안2y ago
자바의 경우 startSchemeIntent 함수 안에 아래 코드가 존재하는지 확인이 필요합니다.
No description
욘돈
욘돈OP2y ago
있어요 있어요
Ayaan이안
Ayaan이안2y ago
자바이신가요?
욘돈
욘돈OP2y ago
네 자바입니다 그리고 제가 앱을 두개를 관리하는데 한개는 다 잘되는데 하나만 실패시에만 저 에러가 나요
Ayaan이안
Ayaan이안2y ago
앱 코드가 다를 수 있어서 그 부분은 상관이 없을 것 같습니다.
욘돈
욘돈OP2y ago
그런데 둘다 baseweb이라고 기본적인것만 적용한 클래스를 같이써요
Ayaan이안
Ayaan이안2y ago
둘 다 결제처리하는 클래스가 같은가요? 클래스에 코드가 같은가요?*
욘돈
욘돈OP2y ago
웹에서 결제하고 그걸 앱에서 shouldover.. 이 함수에 받는 이 부분이 같아요
Ayaan이안
Ayaan이안2y ago
이상하네요.
욘돈
욘돈OP2y ago
질문이 있는데요. 보통 토스가 깔려 있으면 바로 토스로 가고 토스가 없을때는 웹페이지가 뜨잖아요
Ayaan이안
Ayaan이안2y ago
아니에요..
욘돈
욘돈OP2y ago
그래요?
Ayaan이안
Ayaan이안2y ago
토스가 설치되어있든 말든 토스 결제페이지가 뜨게 됩니다. pay.toss.im/~~~ 거기서 결제하기 버튼을 클릭해야 호출이 됩니다.
욘돈
욘돈OP2y ago
안되는것만 계속봐서 착각햇나봐요
Ayaan이안
Ayaan이안2y ago
원인은 알거 같습니다 인텐트가 일단 스킴으로 잘 변환은 된거 같아 보이구요 스킴에서 호출하는데 지금 실패하고 계신건데.. (앱이 없어서)
욘돈
욘돈OP2y ago
Ayaan이안
Ayaan이안2y ago
문제점은 스킴 호출에 오류가 나면 자동으로 마켓스킴 으로 바뀌게 코드를 드렸습니다. 근데 해당 try catch문이 작동하지 않는것 같네요.
욘돈
욘돈OP2y ago
네 그럼 다시 그부분을 확인해볼게요
Ayaan이안
Ayaan이안2y ago
이런 상황인 것 같습니다. startActivity(schemeIntent)가 앱 미설치 사유로 ActivityNotFoundException을 throw하게 되고 그걸 catch하여 앱이 만약에 없다면 startActivity로 마켓을 호출하게 되는데 여기가 작동하지 않았습니다. 제가 추측할 수 있는 것은 catch문으로 넘어가질 않았거나, TextUtils.isEmpty에서 이상하게도 false가 나와 if문을 빠져나와버려 함수가 실행되지 않고 끊긴 경우입니다.
욘돈
욘돈OP2y ago
private static boolean doFallback(WebView view, Intent parsedIntent, Activity activity) 제가 안드로이드를 기초부터 배운게 아니라 중간에 회사에서 급해서 안드로이드를 수정하게 되었는데요 혹시 이 함수가 웹뷰에 기본 함수 일까요?
Ayaan이안
Ayaan이안2y ago
아니요 private로 되어있는것은 귀사에서 선언한 함수입니다. 표준 함수를 커스텀하시는 경우 앞에 @Override가 붙어있을겁니다.
욘돈
욘돈OP2y ago
네 말씀하신데로 그부분을 확인해볼게요 감사합니다
Ayaan이안
Ayaan이안2y ago
약간 추가정보를 드리자면 디버거 기능으로 해당 try catch가 걸리고 있는지 걸리고 있다면 if문에서 제대로 넘어가는지 확인 부탁드릴게요
욘돈
욘돈OP2y ago
넵 제 실수 였네요;;; 두개의 앱을 관리하고 있는데 잘못된 코드임에도 하나는 잘되고 하나는 안되서 헛갈렸어요 두개 다 안되었으면 더 쉽게 답을 찾을 수 있었을텐데 감사합니다
토스페이먼츠 BOT
❤️ 기술문의 경험이 어떠셨나요?!
간단히 코멘트 남겨주세요! 제품 발전에 큰 힘이 됩니다.

Did you find this page helpful?