카카오페이 intent 가 실행되지 않습니다

카카오페이 연동중인데요
웹상에서는 정상적으로 결제완료까지 테스트가 끝나서 안드로이드앱에 해당기능을 포팅중에 문제가 생겼습니다
목업페이지에서 카카오페이 intent호출하는 url이 호출되었을때 아래와 같은 url 이 호출되는데
intent://kakaopay/pg?url=https://mockup-pg-web.kakao.com/v1/e12c1cb597fbc73fbdc2dc0654163ba805b768a5ae5568e22a6fd693741b6019/order/#Intent;scheme=kakaotalk;package=com.kakao.talk;end

이때shouldOverrideUrlLoading()에서
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse(url));
startActivity(intent);
이렇게 인텐트를 실행하면 아래와 같은 익셉션이 발생합니다

android.content.ActivityNotFoundException: No Activity found to handle Intent { act=android.intent.action.VIEW dat=intent://kakaopay/pg?url=https://mockup-pg-web.kakao.com/v1/e12c1cb597fbc73fbdc2dc0654163ba805b768a5ae5568e22a6fd693741b6019/order/ }

해결되었습니다
인텐트를 이렇게 실행하니까 되네요
Intent intent = Intent.parseUri(url, Intent.URI_INTENT_SCHEME);
Intent existPackage = getPackageManager().getLaunchIntentForPackage(intent.getPackage());
if (existPackage != null)
startActivity(intent);
틀린 예제 포스팅하는 사람들이 왜케 많은지 ㅋ
카카오측에서 개발 플랫폼별로 공식 예제 하나씩은 올려주셨으면 좋겠어요
앱에 연동할 경우 intent 호출하는 부분도 있고… 문서에 나와있는 rest api 설명만으로는 조금 부족하지 않나 싶습니다

2개의 좋아요

감사합니다
덕분에 해결했습니다.

선생님 존나 사랑합니다. ~^^
6 시간 동안 개고생 하던거 해결했습니다 ~

RN 쓰신다면

  1. 안드로이드 네이티브 파일에 직접 메소드 작성
  2. react-native-send-intent 사용하여 SendIntentAndroid.openChromeIntent(intent~~).then(() => {}); 사용하셔도 됩니다~
1개의 좋아요