New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
안드로이드 / 결제사 앱 실행 오류 #24
Comments
안녕하세요 아임포트 기술지원팀입니다. 지금 보면 시뮬레이터(에뮬레이터)에서 테스트를 하고 계신 것 같은데 감사합니다. |
실 디바이스에서 캡쳐한거고 구글플레이에서 받아서 처리한거에요 |
안녕하세요 아임포트 기술지원팀입니다. 아, 그러시군요! 보내주신 첫번째 이미지에 아래와 같이 No devices available로 나오고
같은 버전(v0.9.14)으로 iamport_flutter가 내장하고 있는 example 앱으로 실 디바이스에서 테스트 해봤을때는 정상적으로 이동되는데
감사합니다. |
아아 이미 앱을 출시했었는데 어느 순간부턱 클릭해도 동작을 하지않더라구요 결제앱이 실해되어야하는데 이동이 안됩니다 로그는 따로 찍히는게
없었습니다
혹시 따로 설정해야하는게 있나요?
2021년 5월 10일 (월) 오전 8:46, Solee Choi ***@***.***>님이 작성:
… 안녕하세요 아임포트 기술지원팀입니다.
아, 그러시군요! 보내주신 첫번째 이미지에 아래와 같이 No devices available로 나와서 시뮬레이터라고 생각했습니다.
구글 플레이에서 받으셨다는 것은 어떤 것을 받으셨다는 말씀이실까요?
[!] Connected device
! No devices available
같은 버전(v0.9.14)으로 iamport_flutter가 내장하고 있는 example 앱
<https://github.com/iamport/iamport_flutter/tree/master/example>으로 실
디바이스에서 테스트 해봤을때는 정상적으로 이동되는데
혹시 안드로이드 스튜디오에서 찍히는 로그는 없으신가요?
감사합니다.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#24 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AHJGA3CTILB73JXST6NXKPLTM4ND7ANCNFSM44OR5T5Q>
.
|
안녕하세요 아임포트 기술지원팀입니다. 안드로이드를 위해 따로 설정해야할 것은 없습니다. 안드로이드 스튜디오에서 로그가 안 찍히시면 네이티브단 오류가 아니라는거고 정확한 확인을 위해서는
1번은 아무래도 쉽지 않을 것 같고 그나마 2번이 수월할 것 같습니다. 디바이스를 PC에 연결한 채로 iamport_flutter/java/kr.iamport.iamport_flutter/IamportFlutterPlugin.java 파일의 아래 2개 지점에 브레이크 포인트를 찍으신 채로 디버그 모드로 앱을 실행해보시면 외부 앱으로 이동하려고 할때 앱이 설치되어 있는 경우 63번째 줄이 트리거되고 앱이 설치되어 있지 않은 경우 72번째 줄이 트리거됩니다. 감사합니다. |
아래와 같은 오류가 발생하는군요 !
|
그리고 웹뷰 결제화면이 열릴때,
이런 로그가 찍히는데 문제가 없는건가요? iOS에서는 정상적으로 동작합니다. |
안녕하세요 아임포트 기술지원팀입니다. 디버깅 감사드립니다!! 혹시 귀하의 앱의 플러터 버전이 V2인가요? 만약 현재 귀하의 앱 플러터 버전이 V1이라면 한 번 더 디버깅 부탁드립니다. 감사합니다. |
v1을 쓰고 있습니다.
그리고 디버깅을 해봤는데 말씀하신 곳까지 도달을 못하는듯합니다.
#24
참고해주시기 바랍니다.
…On Mon, May 10, 2021 at 12:39 PM Solee Choi ***@***.***> wrote:
안녕하세요 아임포트 기술지원팀입니다.
디버깅 감사드립니다!!
네, IMP is not defined 로그는 무시하셔도 됩니다.
혹시 귀하의 앱의 플러터 버전이 V2인가요?
현재 iamport_flutter 패키지는 플러터 V1만 지원하고 있기 때문에 V2 앱에서 iamport_flutter 연동시 예상치
못한 이슈가 있을 수 있습니다.
현재 V2 지원을 위한 마이그레이션 작업을 진행중이며 iamport_flutter 모듈이 dependent한 외부 라이브러리도
변경해야하는 만큼(flutter_webview_plugin은 V1만 지원) 다소 시간이 소요될 것으로 예상됩니다.
만약 현재 귀하의 앱 플러터 버전이 V1이라면 한 번 더 디버깅 부탁드립니다.
앞서 안내드린 같은
파일(iamport_flutter/java/kr.iamport.iamport_flutter/IamportFlutterPlugin.java)에서
아래 3개 지점에 브레이크 포인트를 찍어 주시고 디버그 모드로 앱을 실행하셨을때 아래 this, parsingUri, uri,
newIntent 그리고 activity에 어떤 값이 들어가있는지 확인 부탁드립니다.
[image: image]
<https://user-images.githubusercontent.com/42368261/117602718-584e5b00-b18c-11eb-8fb1-9186514c9482.png>
감사합니다.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#24 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AHJGA3GO5DHJNSPDJOOREDDTM5IOTANCNFSM44OR5T5Q>
.
|
안녕하세요 아임포트 기술지원팀입니다. 보내주신 에러 로그를 보면
dart단에서 찍히는 에러는 native단에서 찍히는 에러가 전달된 것으로 즉, 처음에 1번 코드가 실행되어 activity 변수에 값이 할당되고 다시 한 번 제가 안내드린 1, 2, 3번 영역에 브레이크 포인트를 찍어주시고 스크린샷 첨부 부탁드립니다. 감사합니다. |
안녕하세요 아임포트 기술지원팀입니다. 그럼 현재 GeneratedPluginRegistarant 클래스 내부 로직 중 IamportFlutterPlugin.registerWith 함수를 콜 하는 부분은 없는건가요...? java단 로직은 flutter pub get으로 패키지 설치시, 기본적으로 모든 플러그인의 registerWith 함수를 콜하는 로직이 자동으로 추가되는데 GeneratedPluginRegistarant.kt 코드만 전체 한 번 보여주실 수 있으실까요? 감사합니다. |
네넵!!! 소스코드 올리겠습니다. package io.flutter.plugins;
import androidx.annotation.Keep;
import androidx.annotation.NonNull;
import io.flutter.embedding.engine.FlutterEngine;
import io.flutter.embedding.engine.plugins.shim.ShimPluginRegistry;
/**
* Generated file. Do not edit.
* This file is generated by the Flutter tool based on the
* plugins that support the Android platform.
*/
@Keep
public final class GeneratedPluginRegistrant {
public static void registerWith(@NonNull FlutterEngine flutterEngine) {
ShimPluginRegistry shimPluginRegistry = new ShimPluginRegistry(flutterEngine);
flutterEngine.getPlugins().add(new com.example.appsettings.AppSettingsPlugin());
flutterEngine.getPlugins().add(new com.blasanka.s3flutter.aws_s3.AwsS3Plugin());
flutterEngine.getPlugins().add(new io.flutter.plugins.deviceinfo.DeviceInfoPlugin());
flutterEngine.getPlugins().add(new id.oddbit.flutter.facebook_app_events.FacebookAppEventsPlugin());
flutterEngine.getPlugins().add(new io.flutter.plugins.firebaseanalytics.FirebaseAnalyticsPlugin());
flutterEngine.getPlugins().add(new io.flutter.plugins.firebase.core.FlutterFirebaseCorePlugin());
flutterEngine.getPlugins().add(new io.flutter.plugins.firebase.crashlytics.FlutterFirebaseCrashlyticsPlugin());
flutterEngine.getPlugins().add(new io.flutter.plugins.firebasedynamiclinks.FirebaseDynamicLinksPlugin());
io.flutter.plugins.firebasemessaging.FirebaseMessagingPlugin.registerWith(shimPluginRegistry.registrarFor("io.flutter.plugins.firebasemessaging.FirebaseMessagingPlugin"));
flutterEngine.getPlugins().add(new io.flutter.plugins.flutter_plugin_android_lifecycle.FlutterAndroidLifecyclePlugin());
com.flutter_webview_plugin.FlutterWebviewPlugin.registerWith(shimPluginRegistry.registrarFor("com.flutter_webview_plugin.FlutterWebviewPlugin"));
flutterEngine.getPlugins().add(new io.flutter.plugins.googlemaps.GoogleMapsPlugin());
flutterEngine.getPlugins().add(new kr.iamport.iamport_flutter.IamportFlutterPlugin());
flutterEngine.getPlugins().add(new vn.hunghd.flutter.plugins.imagecropper.ImageCropperPlugin());
flutterEngine.getPlugins().add(new io.flutter.plugins.imagepicker.ImagePickerPlugin());
com.kakao.sdk.flutter.KakaoFlutterSdkPlugin.registerWith(shimPluginRegistry.registrarFor("com.kakao.sdk.flutter.KakaoFlutterSdkPlugin"));
flutterEngine.getPlugins().add(new com.vitanov.multiimagepicker.MultiImagePickerPlugin());
flutterEngine.getPlugins().add(new io.flutter.plugins.packageinfo.PackageInfoPlugin());
flutterEngine.getPlugins().add(new io.flutter.plugins.pathprovider.PathProviderPlugin());
flutterEngine.getPlugins().add(new com.baseflow.permissionhandler.PermissionHandlerPlugin());
flutterEngine.getPlugins().add(new io.flutter.plugins.sharedpreferences.SharedPreferencesPlugin());
flutterEngine.getPlugins().add(new com.aboutyou.dart_packages.sign_in_with_apple.SignInWithApplePlugin());
flutterEngine.getPlugins().add(new com.tekartik.sqflite.SqflitePlugin());
flutterEngine.getPlugins().add(new name.avioli.unilinks.UniLinksPlugin());
flutterEngine.getPlugins().add(new io.flutter.plugins.urllauncher.UrlLauncherPlugin());
flutterEngine.getPlugins().add(new io.flutter.plugins.videoplayer.VideoPlayerPlugin());
flutterEngine.getPlugins().add(new io.flutter.plugins.webviewflutter.WebViewFlutterPlugin());
}
}
|
안녕하세요 아임포트 기술지원팀입니다. 네 안내드린대로 다른 패키지에 대해서는 있는데 IamportFlutterPlugin.registerWith를 콜하는 부분이 없네요. 감사합니다. |
말씀하신대로 추가한후, 빌드해서 앱을 실행하면 iamport registerWith가 사라집니다. kr.iamport.iamport_flutter.IamportFlutterPlugin.registerWith(shimPluginRegistry.registrarFor("kr.iamport.iamport_flutter.IamportFlutterPlugin")); |
안녕하세요 아임포트 기술지원팀입니다. 혹시 해당 코드를 안드로이드 스튜디오에서 추가하신것이 아니고 Visual Studio Code 같은 다른 IDE에서 추가하신게 아니실까요? package io.flutter.plugins;
import androidx.annotation.Keep;
import androidx.annotation.NonNull;
import io.flutter.embedding.engine.FlutterEngine;
import io.flutter.embedding.engine.plugins.shim.ShimPluginRegistry;
/**
* Generated file. Do not edit.
* This file is generated by the Flutter tool based on the
* plugins that support the Android platform.
*/
@Keep
public final class GeneratedPluginRegistrant {
public static void registerWith(@NonNull FlutterEngine flutterEngine) {
ShimPluginRegistry shimPluginRegistry = new ShimPluginRegistry(flutterEngine);
com.flutter_webview_plugin.FlutterWebviewPlugin.registerWith(shimPluginRegistry.registrarFor("com.flutter_webview_plugin.FlutterWebviewPlugin"));
flutterEngine.getPlugins().add(new kr.iamport.iamport_flutter.IamportFlutterPlugin());
kr.iamport.iamport_flutter.IamportFlutterPlugin.registerWith(shimPluginRegistry.registrarFor("kr.iamport.iamport_flutter.IamportFlutterPlugin"));
flutterEngine.getPlugins().add(new name.avioli.unilinks.UniLinksPlugin());
flutterEngine.getPlugins().add(new io.flutter.plugins.urllauncher.UrlLauncherPlugin());
}
} 안드로이드 스튜디오에서 IDE의 도움(힌트)을 받아 다시 추가해보시고 빌드 후 확인 부탁드립니다. 아마 코틀린용 플러터 앱에서 flutter pub get시 자동으로 registerWith 함수가 추가되게 하려면 별도의 조치가 필요해 보이고 감사합니다. |
임의로 코드를 추가해도 계속 재생성이 되서 사라지는데 혹시 IDE 에서 어떠한걸 이용하면 될까요? |
안녕하세요 아임포트 기술지원팀입니다. 안드로이드 스튜디오에서 해당 라인 전체 복사가 아닌, 알파벳 하나하나 타이핑 하시다보면 밑에 IDE가 힌트(?)를 알려주는데 저는 그 힌트를 입력했습니다. 감사합니다. |
음.. 늦은 시간 죄송합니다.. 그런데 지금 서비스가 되고있는중이라 ㅜㅜ 아 저는 말씀하신대로 직접 타이핑을 해도 어시스턴트가 나타나지가 않네요 ㅜㅜ |
안녕하세요 아임포트 기술지원팀입니다. 어제 임시 반영한 feature/kotlin 브랜치 코드를 조금 다듬은 후 자바/코틀린 환경에서 모두 정상 동작 하는 것을 확인하였습니다. 애초에 코틀린 환경이라는 점을 늦게 인지하여 대응에 다소 시간이 소요된 것 같습니다. 감사합니다. |
앗! 감사합니다.
잘 동작하는거 같아요!
감사합니다 ㅜㅜㅜ 빠르게 대처해주셔서 감사합니다.
…On Tue, May 11, 2021 at 9:38 AM Solee Choi ***@***.***> wrote:
안녕하세요 아임포트 기술지원팀입니다.
어제 임시 반영한 feature/kotlin 브랜치 코드를 조금 다듬은 후 자바/코틀린 환경에서 모두 정상 동작 하는 것을
확인하였습니다.
v0.9.15에 배포되었으니 확인 부탁드립니다.
애초에 코틀린 환경이라는 점을 늦게 인지하여 대응에 다소 시간이 소요된 것 같습니다.
저희측에서도 코틀린 환경에서 registerWith 함수 호출 부가 자동으로 추가되지 않는 점을 미리 알고 대비했어야 했는데
그러지 못해 혼란을 드린 것 같습니다. 양해 부탁드립니다.
감사합니다.
—
You are receiving this because you authored the thread.
Reply to this email directly, view it on GitHub
<#24 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AHJGA3D753KYZLYHPG6SGODTNB37JANCNFSM44OR5T5Q>
.
|
@SoleeChoi 이전에 제보했던 것과 같은 이슈로 보입니다. 저도 최신 버전 결제 문제가 사라졌네요. 확인차 말씀드리는데 말하셨던 V2가 플러터 2버전을 의미했던 건지 여쭙니다. 저는 저 이슈에서 답변받은 V2가 android embedding v2를 의미한다고 생각했는데 이걸 보니 그게 아닐 것 같다는 생각이 듭니다. 플러터 2와는 별개로 플러그인 API도 v1, v2가 나뉘는데 이건 플러터 버전과는 별개여서 플러터 1버전에서 재현된 것으로 보입니다. 커밋을 보니 아직 android embedding v2 마이그레이션이 완전히 된 것 같지 않아보여 플러그인, 앱 마이그레이션을 확인해주실 수 있을까 합니다. |
이니시스에서 삼성카드 앱 을 호출하면 동작을 하지 않습니다. 삼성카드뿐만 아니라 다른 PG사 모두 호출이 되지 않아요. (iOS는 정상동작)
The text was updated successfully, but these errors were encountered: