Básicamente lo que quieres es mantener tu teléfono en 4G LTE mientras haces/recibes una llamada, pero está bajando a 3G/2G, ¿verdad?
He trabajado en 2 grandes fabricantes de teléfonos Android en equipos de Software. Y ambos tenían la misma política. Es demasiado arriesgado habilitar cualquier función en un Smartphone sin realizar pruebas.
Y VoLTE/VoWifi/ViLTE y ahora VoNR (5G) están todos habilitados/deshabilitados operador por operador. Una de las razones por las que tu teléfono tiene VoLTE deshabilitado para ti operador podría ser:
- Has comprado el teléfono en un país distinto de donde lo utilizas.
- Cuando compraste el teléfono, operador no soportaba VoLTE en ese momento. Y el coste de probarlo y habilitarlo ahora es demasiado alto para un teléfono que ya no se vende.
Así que podrías probar a poner una tarjeta SIM de otro operador para ver si VoLTE está activado. Prueba con los mayores operadores de tu país.
Hay un servicio llamado "carrier_config" que se encarga de todas las habilitaciones IMS. Puede escribir:
$ adb shell
$ dumpsys carrier_config | carrier_volte_available_bool
Para confirmar el parámetro. Probablemente obtendrá: carrier_volte_available_bool = false
Pero lamentablemente no se como ponerlo en true usando ADB. Sólo sé cambiar el código fuente.