An apparatus for detecting a battery state of health, wherein the apparatus comprises a CPU module and a sampling circuit, wherein the CPU module is configured to: determine a detected unit, and send control information to the sampling circuit, wherein the detected unit comprises at least one battery, and the at least one battery does not supply power to a load within a time period before the at least one battery is detected; the sampling circuit is configured to: receive the control information from the CPU module, collect an open-circuit voltage and a temperature of the detected unit, and output the obtained open-circuit voltage value and temperature value to the CPU module; the CPU module is further configured to: perform calculation according to the open-circuit voltage value received from the sampling circuit, to obtain a battery state of charge value of the detected unit; perform calculation according to the battery state of charge value and the temperature value, to obtain a loss capacity of the detected unit; and perform calculation according to a ratio of the loss capacity of the detected unit to an original capacity, to obtain a battery state of health value of the detected unit; characterized in that, the sampling circuit is specifically configured to: collect temperatures of the detected unit at multiple different detection time points, and output the temperature values obtained at different detection time points to the CPU module; and the CPU module is specifically configured to perform calculation according to the battery state of charge value and the temperature values obtained at different detection time points, to obtain the loss capacity of the detected unit; wherein the CPU module is specifically configured to calculate, by using the following formula, first parameters corresponding to the battery state of charge value and the temperature values obtained at different detection time points: k = x 1 * T + x 2 * T 2 + y 1 * SOC + y 2 * SOC 2 + c * T * SOC + d, wherein in the formula, k represents the first parameter, T represents the temperature of the detected unit, SOC represents the battery state of charge, and x 1, x 2, y 1, y 2, c, and d are preset constants; and wherein the CPU module is specifically configured to calculate, by using the following formula, second parameters corresponding to the temperature values obtained at different detection time points: α = x 0 * exp λ / T, wherein in the formula, α represents the second parameter, T represents the temperature of a power source of the detected unit, exp(λ / T) represents an exponential function in which a natural number e is raised to the power of (λ / T), a value of e is 2.718282, and x 0 and λ are preset constants. the CPU module is configured to: determine a detected unit, and send control information to the sampling circuit, wherein the detected unit comprises at least one battery, and the at least one battery does not supply power to a load within a time period before the at least one battery is detected; the sampling circuit is configured to: receive the control information from the CPU module, collect an open-circuit voltage and a temperature of the detected unit, and output the obtained open-circuit voltage value and temperature value to the CPU module; the CPU module is further configured to: perform calculation according to the open-circuit voltage value received from the sampling circuit, to obtain a battery state of charge value of the detected unit; perform calculation according to the battery state of charge value and the temperature value, to obtain a loss capacity of the detected unit; and perform calculation according to a ratio of the loss capacity of the detected unit to an original capacity, to obtain a battery state of health value of the detected unit; characterized in that, the sampling circuit is specifically configured to: collect temperatures of the detected unit at multiple different detection time points, and output the temperature values obtained at different detection time points to the CPU module; and the CPU module is specifically configured to perform calculation according to the battery state of charge value and the temperature values obtained at different detection time points, to obtain the loss capacity of the detected unit; wherein the CPU module is specifically configured to calculate, by using the following formula, first parameters corresponding to the battery state of charge value and the temperature values obtained at different detection time points: k = x 1 * T + x 2 * T 2 + y 1 * SOC + y 2 * SOC 2 + c * T * SOC + d, wherein in the formula, k represents the first parameter, T represents the temperature of the detected unit, SOC represents the battery state of charge, and x 1, x 2, y 1, y 2, c, and d are preset constants; and wherein the CPU module is specifically configured to calculate, by using the following formula, second parameters corresponding to the temperature values obtained at different detection time points: α = x 0 * exp λ / T, wherein in the formula, α represents the second parameter, T represents the temperature of a power source of the detected unit, exp(λ / T) represents an exponential function in which a natural number e is raised to the power of (λ / T), a value of e is 2.718282, and x 0 and λ are preset constants.