您将值设置为与您尝试读取的不同的首选项。您正在使用
getSharedPreferences("as")
来存储它并使用 getDefaultSharedPreferences()
来读取它。
在您的广播接收器类中尝试使用 getApplicationContext() 而不是上下文获取 SharedPreferences 我认为你的偏好为空并返回默认值女巫是“true”
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context.getApplicationContext());