Skip to content

Commit 221ba68

Browse files
committed
修复三星用户修改设备名称后获取到的市场名称不对的问题
1 parent be2acf6 commit 221ba68

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

library/src/main/java/com/hjq/device/compat/DeviceMarketName.java

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -439,10 +439,12 @@ private static void initMarketName(@NonNull Context context) {
439439
if (TextUtils.isEmpty(sMarketName) && DeviceOs.isOneUi()) {
440440
try {
441441
// 获取到的值:Galaxy Z Flip7
442-
// 参考三星设置的源码:com.samsung.android.settings.deviceinfo.aboutphone.DeviceInfoHeader.getDeviceName();
443-
String deviceName = Global.getString(context.getContentResolver(), "device_name");
444-
if (isDeviceMarketNameLegitimacy(deviceName)) {
445-
retrofitAndSetMarketName(Global.getString(context.getContentResolver(), "device_name"));
442+
// 参考三星设置的源码:com.samsung.android.settings.deviceinfo.SecDeviceInfoUtils.getDefaultDeviceName();
443+
// 不能读取 device_name 值,因为这个值是设备的名称,是可以被用户修改的
444+
// 而是应该用 default_device_name 值,这样就算用户修改了设备的名称,也不会有影响
445+
String defaultDeviceName = Global.getString(context.getContentResolver(), "default_device_name");
446+
if (isDeviceMarketNameLegitimacy(defaultDeviceName)) {
447+
retrofitAndSetMarketName(defaultDeviceName);
446448
}
447449
} catch (Exception ignored) {
448450
// default implementation ignored

0 commit comments

Comments
 (0)