갤럭시 노트 3 환경에서 Xamarin 앱 배포 충돌
Xamarin으로 개발 시 배포를 가상 장치로 하면 정상적으로 실행되는 반면, 물리적인 갤럭시 노트 3에 하려니 다음과 같은 오류 창이 발생합니다.
Deployment failed due to an error in FastDev assembly synchronization.
Xamarin.AndroidTools.AndroidDeploymentException: FailedToSynchronizeFastDevAssemblies ---> Mono.AndroidTools.AdbException: Permission denied
at Mono.AndroidTools.Util.AggregateAsyncResult.CheckError(CancellationToken token)
at Mono.AndroidTools.Adb.AdbSyncClient.EndPushSyncItems(IAsyncResult result)
at Mono.AndroidTools.Internal.AdbClientTaskExtensions.InnerInvoke(TaskCompletionSource`1 tcs, Func`2 endMethod, IAsyncResult l)
--- End of inner exception stack trace ---
at Xamarin.AndroidTools.AndroidDeploySession.InstallAssemblies(String destinationPath, CancellationToken token)
at Xamarin.AndroidTools.AndroidDeploySession.FastDev()
at Xamarin.AndroidTools.AndroidDeploySession.Run(CancellationToken token)
at Xamarin.AndroidTools.AndroidDeploySession.RunLogged(CancellationToken token)
at Xamarin.AndroidTools.AndroidDeploySession.Start(CancellationToken token)
다행히 검색해 보면 답이 나오는데 갤럭시 노트 뿐만 아니라 갤럭시 S 모델에서도 같은 현상이 나오는 것 같습니다. ^^
Deployment failed due to an error in FastDev assembly synchronization
; http://forums.xamarin.com/discussion/11383/deployment-failed-due-to-an-error-in-fastdev-assembly-synchronization
직접적인 해결 방법은 없고, 단지 우회할 수 있다고 하는데요. 어쩔 수 없이 Xamarin측의 "Fast Deployment" 기능을 꺼야 합니다. 방법은 프로젝트 속성 창의 "Android Options" 범주에서 "Use Fast Deployment (debug mode only)" 옵션을 해제하는 것입니다.
상황으로 봐서는 이로 인한 앱의 실행에 영향을 주는 것은 없고, 개발 시 디버그 모드에서 좀 더 빠르게 배포하는 기능만 없어지므로 약간의 배포 시간이 더 늘어나는 것이 전부인 듯 합니다.
[이 글에 대해서 여러분들과 의견을 공유하고 싶습니다. 틀리거나 미흡한 부분 또는 의문 사항이 있으시면 언제든 댓글 남겨주십시오.]