¿Cómo obtener la temperatura de la batería con decimal?

¿Cómo puedo obtener la temperatura de la batería con decimal? En realidad puedo calcularlo con

int temp = intent.getIntExtra(BatteryManager.EXTRA_TEMPERATURE,0); 

Pero de esta manera el resultado será por ejemplo 36 °C Quiero algo que me muestre 36.4 °C ¿Cómo puedo hacer?

    3 Solutions collect form web for “¿Cómo obtener la temperatura de la batería con decimal?”

    Google dice aquí :

    Extra para ACTION_BATTERY_CHANGED: entero que contiene la temperatura actual de la batería.

    El valor devuelto es un int que representa, por ejemplo, 27,5 grados Celcius como "275", por lo que es preciso a una décima de un centígrado. Basta con lanzar esto a un flotador y dividir por 10.

    Usando su ejemplo:

     int temp = intent.getIntExtra(BatteryManager.EXTRA_TEMPERATURE,0); float tempTwo = ((float) temp) / 10; 

    O

     float temp = ((float) intent.getIntExtra(BatteryManager.EXTRA_TEMPERATURE,0) / 10; 

    No es necesario preocuparse por los 10 como int, ya que sólo un operando necesita ser un flotador para que el resultado sea uno también.

    Esa es la única manera que sé que puede obtener la temperatura de la batería, y siempre es un int.

    Según la documentación:

    Public static final String EXTRA_TEMPERATURE

    Extra para ACTION_BATTERY_CHANGED: entero que contiene la temperatura actual de la batería.

    Pero se puede dividir por 10.0f para obtener un decimal.

    Float ftemp = temp / 10.0f;

      public static String batteryTemperature(Context context) { Intent intent = context.registerReceiver(null, new IntentFilter(Intent.ACTION_BATTERY_CHANGED)); float temp = ((float) intent.getIntExtra(BatteryManager.EXTRA_TEMPERATURE,0)) / 10; return String.valueOf(temp) + "*C"; } 
    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.