La aplicación para Android de Xamarin se cierra inmediatamente después del lanzamiento

Estoy usando Xamarin en Visual Studio.

He creado una aplicación android clásica (haga clic en mí) y he intentado lo siguiente:

Escenario 1:

  1. Cambiar al modo de liberación

  2. Haga clic derecho en el proyecto> Exportar Paquete de Android (.apk)

  3. Lado cargado generado .apk it en mi teléfono

  4. La aplicación se inicia sin problema

Escenario 2

  1. Cambiar al modo de liberación

  2. Herramientas> Android> Publicar aplicación para Android

  3. Firmado APK después de crear un almacén de claves privadas

  4. Carga lateral generada .apk (en la carpeta de liberación) en el teléfono

  5. La aplicación se cierra inmediatamente después del lanzamiento (sin mensaje de error, nada)

¿Cuál podría ser el problema aquí?

¿Necesito hacer otra cosa después de firmar el paquete?

En ambos escenarios, la salida apk es del mismo tamaño 5227kb

ACTUALIZAR:

He intentado la misma cosa que funciona en el emulador del androide. Mismos resultados. La aplicación se ejecuta correctamente en modo de depuración en el emulador. Una vez que lo haya cambiado a la liberación, consigo "Desafortunadamente, App1 ha parado"

Aquí está el registro de errores http://pastebin.com/4j1Vwtgf

ACTUALIZACIÓN 2:

Estos son los registros cuando implemento en modo de lanzamiento:

1>Starting deploy 5" KitKat (4.4) XXHDPI Phone ... 1>Deploying 5" KitKat (4.4) XXHDPI Phone ... 1>Build started. 1>C:\Program Files (x86)\MSBuild\14.0\bin\csc.exe /noconfig /nowarn:1701,1702,2008 /nostdlib+ /errorreport:prompt /warn:4 /define:TRACE;__XAMARIN_ANDROID_v1_0__;__MOBILE__;__ANDROID__;__ANDROID_1__;__ANDROID_2__;__ANDROID_3__;__ANDROID_4__;__ANDROID_5__;__ANDROID_6__;__ANDROID_7__;__ANDROID_8__;__ANDROID_9__;__ANDROID_10__;__ANDROID_11__;__ANDROID_12__;__ANDROID_13__;__ANDROID_14__;__ANDROID_15__;__ANDROID_16__;__ANDROID_17__;__ANDROID_18__;__ANDROID_19__;__ANDROID_20__;__ANDROID_21__;__ANDROID_22__;__ANDROID_23__ /errorendlocation /preferreduilang:en-US /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\MonoAndroid\v6.0\Mono.Android.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\MonoAndroid\v1.0\mscorlib.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\MonoAndroid\v1.0\System.Core.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\MonoAndroid\v1.0\System.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\MonoAndroid\v1.0\System.Xml.dll" /reference:"C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\MonoAndroid\v1.0\System.Xml.Linq.dll" /debug:pdbonly /filealign:512 /optimize+ /out:obj\Release\App1.dll /ruleset:"C:\Program Files (x86)\Microsoft Visual Studio 14.0\Team Tools\Static Analysis Tools\\Rule Sets\MinimumRecommendedRules.ruleset" /target:library /utf8output MainActivity.cs Resources\Resource.Designer.cs Properties\AssemblyInfo.cs "C:\Users\a\AppData\Local\Temp\MonoAndroid,Version=v6.0.AssemblyAttributes.cs" obj\Release\\TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs obj\Release\\TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs obj\Release\\TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs 1>App1 -> C:\Users\a\Documents\Visual Studio 2015\Projects\App1\App1\bin\Release\App1.dll 1> Processing: obj\Release\res\layout\main.xml 1> Processing: obj\Release\res\values\strings.xml 1>C:\Program Files (x86)\Java\jdk1.7.0_55\\bin\keytool.exe -list -alias androiddebugkey -storepass android -keypass android -keystore "C:\Users\al\AppData\Local\Xamarin\Mono for Android\debug.keystore" 1>C:\Program Files (x86)\Java\jdk1.7.0_55\\bin\jarsigner.exe -keystore "C:\Users\a\AppData\Local\Xamarin\Mono for Android\debug.keystore" -storepass android -keypass android -digestalg SHA1 -sigalg md5withRSA -signedjar bin\Release\\App1.App1-Signed-Unaligned.apk "C:\Users\a\Documents\Visual Studio 2015\Projects\App1\App1\obj\Release\android\bin\App1.App1.apk" androiddebugkey 1>No -tsa or -tsacert is provided and this jar is not timestamped. Without a timestamp, users may not be able to validate this jar after the signer certificate's expiration date (2046-02-20) or after any future revocation date. 1>C:\Program Files (x86)\Android\android-sdk\build-tools\23.0.1\zipalign.exe 4 "C:\Users\a\Documents\Visual Studio 2015\Projects\App1\App1\bin\Release\App1.App1-Signed-Unaligned.apk" "bin\Release\\App1.App1-Signed.apk" 1>Build succeeded. 1>Deploy successfully on 5" KitKat (4.4) XXHDPI Phone 

Y aquí están los registros de compilación para el modo de depuración

 2>Starting deploy 5" KitKat (4.4) XXHDPI Phone ... 2>Deploying 5" KitKat (4.4) XXHDPI Phone ... 2>Build started. 2>C:\Program Files (x86)\Java\jdk1.7.0_55\\bin\keytool.exe -list -alias androiddebugkey -storepass android -keypass android -keystore "C:\Users\a\AppData\Local\Xamarin\Mono for Android\debug.keystore" 2>C:\Program Files (x86)\Java\jdk1.7.0_55\\bin\jarsigner.exe -keystore "C:\Users\a\AppData\Local\Xamarin\Mono for Android\debug.keystore" -storepass android -keypass android -digestalg SHA1 -sigalg md5withRSA -signedjar bin\Debug\\App1.App1-Signed-Unaligned.apk "C:\Users\a\Documents\Visual Studio 2015\Projects\App1\App1\obj\Debug\android\bin\App1.App1.apk" androiddebugkey 2>No -tsa or -tsacert is provided and this jar is not timestamped. Without a timestamp, users may not be able to validate this jar after the signer certificate's expiration date (2046-02-20) or after any future revocation date. 2>C:\Program Files (x86)\Android\android-sdk\build-tools\23.0.1\zipalign.exe 4 "C:\Users\a\Documents\Visual Studio 2015\Projects\App1\App1\bin\Debug\App1.App1-Signed-Unaligned.apk" "bin\Debug\\App1.App1-Signed.apk" 2>Build succeeded. 2>Deploy successfully on 5" KitKat (4.4) XXHDPI Phone 

Dentro de los registros de pastebin, parece que tienes un error específico aquí. Parece que libmonodroid.so no se está cargando aquí.

03-25 00:40:18.531 E/AndroidRuntime( 1407): java.lang.UnsatisfiedLinkError: Couldn't load monodroid from loader dalvik.system.PathClassLoader[DexPathList[[zip file "/data/app/App1.App1-1.apk"],nativeLibraryDirectories=[/data/app-lib/App1.App1-1, /system/lib]]]: findLibrary returned null

Este problema generalmente significa que por alguna razón libmonodroid.so no se está instalando.

Recomendaría los siguientes artículos:

  1. adb uninstall <package name> para eliminar completamente cualquier aplicación antigua App1.App1.
  2. Limpiar / reconstruir su proyecto (Asegúrese también de eliminar manualmente las carpetas bin/obj en su solución.

Si esto sigue siendo un problema. Asegúrese de que un archivo-> Nuevo proyecto Android se depure y también se instalará correctamente como una versión .apk. También debe reunir adb logcat de sus intentos una vez que siga los pasos # 1-2.

Tuve un problema similar con una aplicación básica cuando empecé con Xamarin. El problema era con el archivo apk que estaba usando. Lo escogí de mi bin / carpeta de liberación mientras que la ruta para la aplicación real firmada + publicada + zip-alineada estaba en el nivel de carpeta de proyecto fuera del directorio bin.

El archivo signed.apk en el modo Release utiliza el depurador keystore y por lo tanto no es posible publicarlo, más información aquí .

Era una falta bastante tonta de mí, así que en caso de que alguien más también tiene este problema por favor asegúrese de que está recogiendo el archivo apk derecho antes de buceo en la depuración adicional.

Tuve el mismo error ejecutando compilaciones de liberación en el emulador (VS Android emulador). Resulta que habíamos deshabilitado x86 como arquitectura soportada.

Propiedades de construcción avanzadas

  • Android Analyze APK
  • ClassNotFoundException al inflar una biblioteca de enlace usando Xamarin
  • Recepción de SMS con MonoDroid
  • Xamarin.Forms: Proyecto Android Error de compilación - Archivos perdidos dentro de las carpetas AppData \ Local \ Xamarin
  • Xamarin Código de Seguridad
  • No se puede ejecutar el emulador de Android
  • Registrar ContentObserver en Application.OnCreate () Servicio VS
  • ¿Cómo puedo enlazar a `ItemClick` para un` MvxLinearLayout`?
  • ¿Cómo se actualiza a Android SDK 25.1.3?
  • Establecer un icono de marcador en Google Maps API
  • VM con la versión 1.6.0 no tiene soporte multidex: No se puede encontrar la aplicación Mono.Android.Platform.ApiLevel_23 o Xamarin.Android.Platform
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.