Il y a deux façons de définir le mode de mise en vigueur. Sur les builds de l'utilisateur, il sera toujours en vigueur. Sur eng ou userdebug, vous pouvez le contrôler. Vous pouvez contrôler la manière standard SELinux, en mettant enforcing = 1/0 sur la ligne de commande du noyau comme indiqué dans le blog de Dan Walsh:
http://danwalsh.livejournal.com/10972.html
La façon centrée sur Android est de définir la ligne de commande du noyau androidboot.selinux = permissive
vous pouvez contrôler la ligne de commande du noyau en éditant votre BoardConfig.mk et en ajoutant ceci:
BOARD_KERNEL_CMDLINE += androidboot.selinux=permissive
la manière centrée sur Android est appliquée par init, si vous regardez dans le système/core/init/init.cpp regarde la routine selinux_initialize() qui est appelée depuis main().
Il n'y a donc aucun moyen de désactiver selinux dans la construction de l'utilisateur, n'est-ce pas? – alexunder