본문 바로가기

Xamarin

Java.Lang.NoClassDefFoundError: 'Failed resolution of: Lcom/google/android/datatransport/runtime/dagger/internal/Factory;' 오류 발생시 처리 방법 Xamarin 에 FCM 기능추가 작업중 Andorid 컴파일시 오류 발생 Java.Lang.NoClassDefFoundError: 'Failed resolution of: Lcom/google/android/datatransport/runtime/dagger/internal/Factory;' NuGet 패키지 관리자에서 Xamarin.Google.Dagger 를 설치하고 컴파일 하면 해당 오류가 발생하지 않음 *** 반드시 앱.Android에 설치해야함!!!! 더보기
Xamarin ERROR java.security.cert.CertPathValidatorException: Trust anchor for certification path not found. 발생시 처리방법 JSON파일을 url로 호출하여 수신하는데 아래와 같은 오류 발생 ERROR java.security.cert.CertPathValidatorException: Trust anchor for certification path not found. 검색해 보니 현재 요청한 https의 SSL 인증서를 신뢰할 수 없거나 찾을 수 없다는 오류로 해당 CA 인증서를 앱에 직접 등록하거나 자신이 임시로 만든 인증서라면 신뢰할 수 있는 인증서로 교체하여야 하는데 둘다 나중에 인증서를 갱신해야 하는 문제가 있고 내가 발급받은 와일드카드 SSL 인증서가 인식되지 않는 경우가 있다는 글을 봐서 원래 임시로 해야 하는 조치중 인증서 Validation체크를 무조건 True로 하도록 하는 방법으로 일단 처리하기로 한다. 1... 더보기
Android Webview에서 ERR_CLEARTEXT_NOT_PERMITTED 에러 발생 Xamarine 개발중 Android 에 Webview에서 아래와 같이 에러만 표시할 뿐 웹페이지를 표시하지 않는 경우 검색해보니 Android 보안 강화에 따라 안드로이드9 (Pie API28)부터 http인 웹페이지는 표시하지 않는다. http인 웹페이지로 이동하고자 할때 표시되는 오류 net::ERR_CLEARTEXT_NOT_PERMITTED 해당 오류가 발생시 해결방법 1. Android 프로젝트 내에 Properties - AndroidManifest.xml 파일을 연다. 2. AndroidManifest.xml 파일내에 manifest - application 태그 내에 속성으로 android:usesCleartextTraffic="true" 값을 추가한다. 3. 그후 다시 컴파일 하면 정상적.. 더보기
Xamarin AMD CPU에서 빌드시 안드로이드 에뮬레이터 오류 발생 해결2 err 422949720 AMD CPU에서 가상화 관련 422949720 오류 발생시.. 앞에 글 Xamarin AMD CPU에서 빌드시 안드로이드 에뮬레이터 오류 발생 해결1 을 따라하다가 sient_install시 오류가 발생하는 PC가 있다. "422949720 오류가 발행하여 StartService이(가) 실패했습니다."라는 오류가 발행시 처리방법 또는 VMware에서 "VMware Player and Device/Credential Guard are not compatible Guard are not compatible." 오류 발생시 처리방법 1. 윈도우의 로컬 그룹 정책 편집기 에서 편집 - 윈도우의 로컬 그룹 정책 편집기 실행 - 시스템 - Device Guard 선택 - 가상화 기반 보안 켜기를 '사용 안 함'으.. 더보기
Xamarin AMD CPU에서 빌드시 안드로이드 에뮬레이터 오류 발생 해결1 AMD 프로세서 에서 안드로이드 에뮬레이터 실행시 아래와 같이 오류가 출력될시 'GVM is not installed on this machine' 해결 방법 vs.net - 도구 - 안드로이드 - 안드로이드SDK관리자 에서 - 도구탭에 추가 - Android Emulator Hypervisor Driver for AMD Processors 체크로 설치 - 관리자권한으로 cmd 에서 silent_install.bat 실행 C:\Program Files (x86)\Android\android-sdk\extras\google\Android_Emulator_Hypervisor_Driver\silent_install.bat - vs.net 재시작후 다시 안드로이드 에뮬레이터를 실행하면 정상적으로 실행된다. 참고.. 더보기
xamarin 앱에 로딩이미지(Splash) 넣기 - 안드로이드 1. 안드로이드부분의 Resource내에 drawble폴더내에 splash로 보여질 이미지 파일을 추가한다. - 참고로 Full HD 해상도인 1080 X 1920으로 이미지를 생성하였다. 2. Resoure내에 values폴더내에 styles.xml파일을 열어서 아래와 같이 내용을 수정한다. 3. Splash로 사용할 새로운 Activity를 추가한다. - SplashActivity로 생성한뒤 아래의 내용으로 수정하낟. 4. MainActivity.cs에서 아래에 표시한 MainLauncher = true, 를 삭제한다. 5. 컴파일하면 Splash.png로 추가한 이미지가 로딩화면으로 나타난다. 더보기
Xamarin 새로운 페이지로 이동하기 xamain에서의 페이지 이동은 2가지 방법으로 가능함. 첫번째 탐색의 개념에서의 이동 처리하기(NavigationPage) - 마치 브라우저처럼 이동하는 개념으로 현재의 페이지를 메인페이지로 설정하고 이동할 페이지로 Fowarding 처리한다. - Fowarding 처리 하였기 때문에 GoBack()으로 원래의 메인페이지로 이동이 가능하다. - 상단에 네비게이션 바가 생겨서 Forward, Back 화살표가 생겨난다. 1. 현재의 페이지(시작페이지)를 메인페이지로 만들기 - 원래 기본생성 코드에 MainPage = new MainPage(): 로 되어 있는 부분을 삭제하고 아래의 코드로 변경하여 MainPage를 NavigationPage로 만든다. 2. 메인페이지에 버튼을 추가하고 새로 이동할 페이지.. 더보기