添加了偏好设置

todo：大部分偏好的逻辑没有实现