2015-01-28 1 views
1

나는 잠시 동안 앱을 개발해 왔지만 지금은 테스트를 위해 친구에게 넘겨주고 싶습니다. 응용 프로그램은 내 장치로 디버깅 할 때 완벽하게 작동하지만 APK를 작성하고 서명하면 내 장치로 이동할 수 있지만 오류없이 설치할 수는 있지만 실행되지 않습니다 (오류 메시지가 표시되지 않음). 때로는 응용 프로그램이 시작될 것처럼 화면이 검은 색으로 변하지만 이전 화면으로 되돌아갑니다 (이전 화면으로 되돌아 가기 전에 Monogame 스플래시 화면이 한 번 나타나는 경우).Xamarin Signed Release apk가 설치되지만 실행되지 않습니다.

내가 Xamarin.Android 4.20와 비주얼 스튜디오 프로페셔널 2014을 사용하고 있습니다 : 여기

는 지금까지 수행하고 구체적인 세부 사항 한 것입니다.

MonoGame을 사용하여 내 앱을 만들고 있습니다.

릴리스 모드에서 앱을 정리하고 빌드했습니다. enter image description here

이 내 링커 옵션은 다음과 같습니다 : enter image description here (나는 선택 믿는다 "없음"만 커집니다 내 APK를 의미)

내 포장 옵션입니다.

Java의 keytool을 사용하여 키 저장소를 만들었습니다.

저는 Xamarin의 Visual Studio "Publish"명령을 사용하여 apk를 만들고 서명했습니다.

이 모든 후 apk는 계속 실행되지 않습니다.

+1

서명 한 .apk 파일을'zipalign' 했습니까? 한 번 비슷한 문제가 발생하여이 명령을 실행하면 도움이되었습니다. – Milen

+1

Publish 명령은 서명 된 패키지 자체에서 zipalign을 실행하고 VS 출력 창은 성공적으로 실행되었음을 나타냅니다. 그럼에도 불구하고 컴퓨터 옆에있을 때 직접 조정하려고 시도합니다. –

+0

실제 문제와 관련되어 있지만 이전과 동일한 결과가 나타납니다. 앱이 릴리스 모드에서 시작될 때만 throw되는 예외 일 수 있습니다. 이 경우에는 잠시 후에 답변을 게시 할 것입니다. –

답변

0

그래서 이것은 릴리스 모드 apk의 서명 또는 빌드와 관련이 없습니다. 실제로 앱이 릴리스 모드로 빌드되었을 때만 예외가 발생했습니다 (이유는 알 수 없습니다. 이것은 사실이었다). 예외를 던지고

것은 내가 그것의 페이지에 문제를 게시 할 거라고는 DotNetZip library했지만 프로젝트 어쨌든 (또한, 명시 적 자 마린 안드로이드를 지원하지 않는) 죽은 것 같습니다.

내 해결책은 Mono의 .Net 압축 구현과 함께 ZipStorer을 사용하는 것이 었습니다. 모든 것이 이제는 훌륭하게 작동합니다.

관련 문제