AES не разворачивает данные, за исключением нескольких байтов дополнения в конце последнего блока.
получающиеся данные не сжимаемы, во всяком случае, потому что они в основном случайны - никакой основанный на словаре алгоритм не в состоянии эффективно сжать их. Лучшая практика должна сжать данные сначала, затем зашифровать их.
Ваш код в порядке. Однако кнопка переключения отобразит первый элемент в вашем селекторе, которому он соответствует, поэтому значение по умолчанию должно быть последним. Расположите предметы следующим образом, чтобы все они были использованы:
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_checked="true" android:state_pressed="true" /> //currently pressed turning the toggle on
<item android:state_pressed="true" /> //currently pressed turning the toggle off
<item android:state_checked="true" /> //not pressed default checked state
<item /> //default non-pressed non-checked
</selector>