반응형
안드로이드에서 카카오페이 단건결재 API 연동 시
웹뷰를 이용해야하고, 결제 준비를 통해 Response 값을 받았을 경우에 해당함
Response 를 통해 받은 next_redirect_app_url 를 웹뷰에서 통해 호출해야함
public boolean shouldOverrideUrlLoading 에 아래 코드를 추가하면 됨
//// 카카오페이
if (url.startsWith("intent://kakaopay/pg")) {
Intent intent = null;
try {
intent = Intent.parseUri(url, Intent.URI_INTENT_SCHEME);
Uri uri = Uri.parse(intent.getDataString());
startActivity(new Intent(Intent.ACTION_VIEW, uri));
return true;
} catch (URISyntaxException ex) {
return false;
} catch (ActivityNotFoundException e) {
if (intent == null) return false;
//// 앱이 설치되어 있지 않으면 구글 플레이스토어로 연결함
String package_name = intent.getPackage(); //// intent.getPackage() 대신 해당 패키지명을 추가하면 됨
if (package_name != null) {
startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse("market://details?id=" + package_name)));
return true;
}
return false;
}
}
비슷한 예제는 많은데, 제대로 실행된 경우는 이 소스밖에 없었음
몇시간을 검색하고 테스트해서 찾아낸 결과임
반응형
'프로그래밍 관련 유용한 자료 > 안드로이드' 카테고리의 다른 글
안드로이드 웹뷰에 javascript 로 html 추가하기 (0) | 2022.06.22 |
---|---|
소수점을 정수로 변환 (float to int) (0) | 2021.06.09 |