iamport / iamport_flutter

Flutter App에서 아임포트 결제서비스 연동을 위한 모듈입니다.
MIT License
68 stars 37 forks source link

안드로이드12에서 최신 버전( 0.10.1+2)을 사용해도 결제화면 웹뷰 키보드가 뜨지 않습니다. #75

Closed A2athoth closed 2 years ago

A2athoth commented 2 years ago

Galaxy Z flip3 5G, SM-F711N 기종입니다.

다름이 아니라 v0.10.0-dev.2를 이용해 개발을 계속 해오다가, 안드로이드 기종에서 웹뷰에서 text input이 접근이 안되고(막 클릭시 블럭은 되도 잘라내기, 붙여넣기도 안됩니다.) 키보드가 뜨지 않습니다.

그래서 버전 로그를 보고 최신 버전인 0.10.1+2를 설치해봐도 마찬가지로 동작되지 않습니다.

테스트해본 PG method는 토스페이먼츠(method 이름 'uplus') 일반카드 결제였고, 현대카드를 눌러 이메일을 변경해보려고 한 상황입니다. 그리고 나서 보니 다른 웹뷰(ex. 페이팔)에서도 키보드가 뜨지 않고, text input에 접근이 되지 않습니다.

안드로이드10인 갤럭시s9(SM-G960N)에서는 잘 접근이 됩니다.

kjh5833 commented 2 years ago

안녕하세요. 아임포트 기술지원팀입니다.

0.10.1+2버전에서 iamport_flutter example 앱을 동일 환경에서 실행시 이슈가 재현 되는지 확인이 가능하실까요?

내부적으로는 안드로이드 12에서 정상 테스트된 기록이 있어서 먼저 확인이 필요합니다.

추가적으로 이슈가 발생하는 재현영상도 같이 주시면 상황파악에 도움이 될 것 같습니다.

A2athoth commented 2 years ago

안녕하세요. 아임포트 기술지원팀입니다.

0.10.1+2버전에서 iamport_flutter example 앱을 동일 환경에서 실행시 이슈가 재현 되는지 확인이 가능하실까요?

내부적으로는 안드로이드 12에서 정상 테스트된 기록이 있어서 먼저 확인이 필요합니다.

추가적으로 이슈가 발생하는 재현영상도 같이 주시면 상황파악에 도움이 될 것 같습니다.

최신 소스 기준으로 example 앱을 클론해서 빌드해보니 정상적으로 작동합니다... 혹시 몰라 현재 프로젝트를 flutter clean도 해보고 재빌드 해봤지만 안되는군요. 버전이 달라지면서 아마 예제 코드 혹은 기타 환경세팅에서 차이가 발생한 것이 아닐까 의심되니 일단 그쪽으로 한번 접근해보겠습니다.

답변 감사합니다.

anymate98 commented 2 years ago

@A2athoth 안녕하세요. 혹시 문제가 해결되었나요? 만약 해결하셨다면 기존에 문제가 발생한 부분에서 어떠한 점을 고치셨는지 여쭤봐도 될까요?

A2athoth commented 2 years ago

@A2athoth 안녕하세요. 혹시 문제가 해결되었나요? 만약 해결하셨다면 기존에 문제가 발생한 부분에서 어떠한 점을 고치셨는지 여쭤봐도 될까요?

아직 해결하진 않았습니다. 패키지 버전만 올렸을때 해결이 되면 빠르게 처리하려고 했는데, 코드 수정이나 확인이 필요한것으로 판단되 현재 프로젝트 개발 스케쥴상 미뤄둔 상태입니다. 진행시 가급적 이쪽에도 한번 피드백을 남겨보도록 하겠습니다. 그리고 혹시 뭔가 더 알려주실 내용이 있다면 경청하겠습니다.

A2athoth commented 2 years ago

@A2athoth 안녕하세요. 혹시 문제가 해결되었나요? 만약 해결하셨다면 기존에 문제가 발생한 부분에서 어떠한 점을 고치셨는지 여쭤봐도 될까요?

미뤄졌다는 답변드린지 몇 시간도 안돼서 말을 다시 꺼내게 되어 송구합니다만, 원인을 찾아 해결했습니다. 요약하면, 예상하던 바와 같이 패키지 버전만 올린 것이 문제였습니다.

이전에 개발에 사용중이었던 v0.10.0-dev.2 버전 이후로 예제 소스가 많이 변경되지는 않아서 한번 몇 가지 변화 내역을 반영해보다가 iamport_webview.dart 파일을 최신 소스로 적용하니 정상적으로 잘 작동 합니다.(기존에 일반결제 외에도 페이팔도 테스트해보았습니다.)

이슈해결에 영향을 주진 않았지만, 그 외 수정한 사항은 android/gradle.properties의 org.gradle.jvmargs=-Xmx1024M, android/app/build.gradle의 targetSdkVersion 31 과 이로 인한 android/app/src/main/AndroidManifest.xml의 android:exported 속성 추가 정도 입니다.

anymate98 commented 2 years ago

피드백 감사합니다! 저 값들은 안드로이드12 관련 대응할 때 예제에서 같이 바꿔준 값들인데(메모리값의 경우 ide 빌드 오류 때문에 수정했습니다.) 저 부분들을 개발하고 계신 앱에도 동일하게 적용하니 문제가 해결이 되었다는 말씀이시죠?

A2athoth commented 2 years ago

피드백 감사합니다! 저 값들은 안드로이드12 관련 대응할 때 예제에서 같이 바꿔준 값들인데(메모리값의 경우 ide 빌드 오류 때문에 수정했습니다.) 저 부분들을 개발하고 계신 앱에도 동일하게 적용하니 문제가 해결이 되었다는 말씀이시죠?

아래 3가지 수정사항은 이슈해결에 직접적인 도움을 주진 않았습니다. 저 3가지를 변경한 후에도 웹뷰 키보드가 노출이 되지 않았죠. 그 이후 다른 수정내역들을 확인하다 iamport_webview.dart 커밋을 보고, 이 파일을 최신 코드로 교체하니 비로소 이슈가 해결되었습니다. 아직 flutter에 익숙치가 않아서 정확하게 어떤 점이 문제였는지는 확인이 어려운점 양해 부탁드립니다. (기존에 있던 iamport_webview.dart파일은 v0.10.0-dev.2 개발시 풀받았던 iamport_webview.dart였습니다.)

anymate98 commented 2 years ago

넵 두 파일 확인해보겠습니다.

kjh5833 commented 2 years ago

아임포트 기술지원팀입니다. iamport_webview.dart 를 최신파일로 반영하셨다고 하셨는데, 어떻게 반영하신 건지 알 수 있을까요? 직접 git pull 땡기셔서 file 을 반영하신걸까요?

저희는 iamport_flutter 플러그인의 설치를 아래와 같은 방법으로 권장 드리고 있는데요. https://github.com/iamport/iamport_flutter#%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0

이 방식으로 반영하신게 아니라면, 추후 유지보수 및 버전업에 따른 정상동작을 보장할 수 없어서 해당 방식으로 반영해보시고 테스트 해보시기 바랍니다.

A2athoth commented 2 years ago

아임포트 기술지원팀입니다. iamport_webview.dart 를 최신파일로 반영하셨다고 하셨는데, 어떻게 반영하신 건지 알 수 있을까요? 직접 git pull 땡기셔서 file 을 반영하신걸까요?

저희는 iamport_flutter 플러그인의 설치를 아래와 같은 방법으로 권장 드리고 있는데요. https://github.com/iamport/iamport_flutter#%EC%84%A4%EC%B9%98%ED%95%98%EA%B8%B0

이 방식으로 반영하신게 아니라면, 추후 유지보수 및 버전업에 따른 정상동작을 보장할 수 없어서 해당 방식으로 반영해보시고 테스트 해보시기 바랍니다.

아 얼추 이해가 되는거 같습니다. 제가 이번 프로젝트로 flutter를 처음 접하여 패키지 사용에 대해서 뭔가 잘못 알고 있었습니다. 예제형태가 아닌 이 iamport_flutter 코드를 전부 받아 그걸 lib에 두고 사용하고 있었습니다. 구조를 이해하지 못했었네요. 예제에는 iamport_webview.dart 파일이 없었군요. 전 그걸 로컬에 넣고 참조하고 있었군요.

올바른 설치방법으로 다시 적용해보겠습니다. 설명 감사합니다.