INSTALL_PARSE_FAILED_MANIFEST_MALFORMED

Error INSTALL_PARSE_FAILED_MANIFEST_MALFORMED

La etiqueta <intent-filter> se usa para que otras aplicaciones puedan abrir nuestra aplicación por medio de un Intent, normalmente no había problema hasta la versión de Android 11 si la etiqueta del Activity contenía la etiqueta Intent-Filter se tomaba la propiedad android:exported con valor verdadero, sin importar que se incluyera en la etiqueta del Activity

Pero desde la versión de Android 12 y posteriores se necesitara poner explícitamente la propiedad android:exported en verdadero, de no ponerla entonces tendremos el siguiente error.

Error:

Launching 'app' on No Devices.
Installation did not succeed.
The application could not be installed: INSTALL_PARSE_FAILED_MANIFEST_MALFORMED

List of apks:
[0] 'D:\Documentos\DESARROLLO\ANDROID\Random\app\build\outputs\apk\debug\app-debug.apk'
Installation failed due to: 'null'
Retry

Solución:

Como se menciono antes, el ejecutar la aplicación sin la propiedad android:exported en dispositivos Android 11 e inferiores no tendrán problema pero si queremos que nuestra aplicación se ejecute en dispositivos Android 12 y posteriores se tiene que agregar dicha propiedad con valor verdadero

Si se agrega la propiedad con valor falso no marcara error pero no se ejecutará, por lo que tiene que ser verdadero

<activity
  android:name=".MainActivity"
  android:exported="true"
  android:screenOrientation="portrait"
  android:theme="@style/AppTheme.NoActionBar">
    <intent-filter>
       <action android:name="android.intent.action.MAIN" />
       <category android:name="android.intent.category.LAUNCHER" />
    </intent-filter>
</activity>

Loading

INSTALL_FAILED_USER_RESTRICTED

Error al correr aplicación en celular desde Android Studio, molesto error que al parecer aparece en celulares Xiaomi y/o con sistema MIUI

Error:

Failed to commit install session 309689147 with command cmd package install-commit 309689147. Error: INSTALL_FAILED_USER_RESTRICTED: Install canceled by user

Error     Installation did not succeed.
	  The application could not be installed: INSTALL_FAILED_USER_RESTRICTED
	  Retry

Session 'app': Installation did not succeed.
	  The application could not be installed: INSTALL_FAILED_USER_RESTRICTED
	  Retry

Solución:

La solución es muy sencilla solo hay que activar la opción Instalar vía USB en las opciones de desarrollador del teléfono, junto a la Depuración USB

Solución 2:

05/20 09:45:36: Launching 'app' on Physical Device.
Installation did not succeed.
The application could not be installed: INSTALL_FAILED_USER_RESTRICTED

List of apks:
[0] 'D:\Documentos\DESARROLLO\ANDROID\Random\app\build\outputs\apk\debug\app-debug.apk'
Installation via USB is disabled.
Retry

Si ya está activa la configuración Instalar vía USB y el error está sucediendo a causa de una actualización del SO del teléfono entonces podemos desactivar la optimización MIUI, esto hará que nos pregunte de nuevo si permitimos la depuración por USB, entonces aceptamos.

Desactivar la Optimización MIUI

Casi al final de las Opciones de desarrollador encontraremos la opción Restablecer valores predeterminados

restablecer_valores_predeterminados

Presionamos varias veces hasta que aparezca debajo la configuración Activar optimización MIUI y la desactivamos

optimizacion miui

Aceptamos la advertencia

aviso miui

En mi caso el teléfono me pregunto si permito la depuración por USB nuevamente

aceptar_depuracion_usb

*Pero después volví a activar la optimización MIUI y ya no apareció el error lo que nos lleva a la Solución 3.

Solución 3:

05/20 09:45:36: Launching 'app' on Physical Device.
Installation did not succeed.
The application could not be installed: INSTALL_FAILED_USER_RESTRICTED

List of apks:
[0] 'D:\Documentos\DESARROLLO\ANDROID\Random\app\build\outputs\apk\debug\app-debug.apk'
Installation via USB is disabled.
Retry

Puede ser que debido a una actualización de Android como del sistema MIUI nos aparezca este error y que solamente necesitemos desvincular el teléfono de la depuración por USB y activarla de nuevo

opciones_de_desarrollador
opciones_de_desarrollador

Revocamos los permisos de depuración por USB

revocar_depuracion_usb

Desactivamos y activamos la depuración por USB

depuracion_por_usb

Aceptamos la depuración por USB

permiso_depuracion_usb
aceptar_depuracion_usb

Loading