Appearance Settings
Access appearance customization at Settings → 外观 (Appearance).Player Background Style
Choose how the player screen looks:Choose a Style
Select from:
- 渐变 (Gradient): Dynamic color gradient extracted from album artwork
- Uses the
@bbplayer/image-theme-colorspackage - Extracts dominant colors and creates a smooth gradient background
- Updates automatically when track changes
- Uses the
- 默认背景 (Default Background): Standard Material Design 3 background
- Uses theme colors from React Native Paper
- Consistent with app-wide color scheme
- Better for battery life
Now Playing Bar Style (Android Only)
Customize the mini player that appears at the bottom of the screen:-
悬浮 (Float - Default): Floating bar with rounded corners and elevation
- Sits above content with subtle shadow
- More visually distinct
- Better for one-handed use
-
沉浸 (Immersive): Bar integrated into the bottom edge
- Blends seamlessly with content
- More screen space for content
- Cleaner, minimalist appearance
Audio Spectrum Visualizer
Enable real-time audio visualization:Grant Microphone Permission
On Android, you’ll be prompted to grant microphone permission.
The microphone is used only to analyze audio for visualization - no audio is recorded or stored.
How does the spectrum visualizer work?
How does the spectrum visualizer work?
The visualizer uses the device’s audio processing to analyze frequency data in real-time. It requires the
RECORD_AUDIO permission to access the audio output stream and generate the frequency spectrum visualization.Theme and Colors
BBPlayer uses Material Design 3 with dynamic theming:System Theme
The app automatically follows your device’s light/dark mode setting:- Light Mode: Clean white backgrounds with dark text
- Dark Mode: OLED-friendly dark backgrounds with light text
BBPlayer uses React Native Paper’s
MD3DarkTheme and MD3LightTheme with automatic switching based on Appearance.getColorScheme().Dynamic Colors
Colors adapt based on album artwork:- When you play a track, the app extracts the dominant color palette from the cover
- This palette influences:
- Gradient backgrounds (if enabled)
- Accent colors in the player UI
- Button tints and highlights
Playback Settings
Access at Settings → 播放 (Playback).Audio Quality
Select preferred streaming quality:- 高 (High): Best audio quality, higher data usage
- 中 (Medium): Balanced quality and data usage
- 低 (Low): Lower quality, data saver mode
Quality settings apply to streaming only. Downloaded tracks maintain their original quality regardless of this setting.
Repeat and Shuffle
Control playback behavior:-
Repeat Modes:
- Off: Play through playlist once
- All: Loop entire playlist
- One: Repeat current track indefinitely
-
Shuffle: Randomize track order
- Toggle in the player controls
- Shuffle state persists across app restarts
Playback History
Toggle 发送播放历史 (Send Play History):-
Enabled: Your listening history is tracked and synced
- Enables personalized recommendations
- Syncs play counts across devices
- Powers “Recently Played” features
-
Disabled: No history tracking
- More private listening
- No cross-device sync
- Recommendations less personalized
Danmaku (Bullet Comments)
For Bilibili videos with comments:Adjust Filter Level
Use the 弹幕过滤等级 (Danmaku Filter Level) slider:
- 0: Show all comments
- 5: Filter moderate spam/low-quality comments
- 10: Show only high-quality/popular comments
Lyrics Settings
Detailed lyrics customization - see the Lyrics Management guide for complete details.Quick Settings
- Lyric Source: Choose preferred provider (Netease, QQ Music, Kugou, or Auto)
- Desktop Lyrics: Enable floating lyrics overlay (Android only)
- Verbatim Lyrics: Show word-by-word synchronized lyrics
- Old-School Style: Classic centered lyrics layout
Privacy and Data
Access at Settings → 通用 (General).Data Collection
Toggle 启用数据收集 (Enable Data Collection):-
Enabled: Anonymous usage analytics are collected
- Helps improve app performance
- Identifies common crashes and bugs
- No personal information is collected
-
Disabled: No analytics sent
- Completely private usage
- Developers have less insight into issues
Data collection uses Sentry for crash reporting. Only app version, device model, OS version, and crash stack traces are collected - never your music library or listening habits.
Debug Logging
Toggle 启用调试日志 (Enable Debug Logs):-
Enabled: Detailed logs written to file
- Useful for troubleshooting issues
- Logs stored in app’s document directory
- Can be viewed in Settings → Logs
-
Disabled: Minimal logging
- Better performance
- Less storage usage
Account Settings
Bilibili Account
Manage your Bilibili login:How are Bilibili credentials stored?
How are Bilibili credentials stored?
BBPlayer stores Bilibili cookies in encrypted local storage using MMKV. The cookies are used to authenticate API requests but are never sent to third-party servers. You can clear them anytime from Settings → Account → Logout.
BBPlayer Account (Cloud Features)
For playlist sharing and cloud sync:- Register/login in Settings → General → BBPlayer 账号
- Your account enables:
- Shared playlist subscriptions
- Cross-device playlist sync
- Backup of playlist metadata
BBPlayer account is optional. All core features work without registration.
Advanced Settings
Storage Management
View and manage app storage:- 音频缓存 (Audio Cache): Downloaded tracks
- 歌词缓存 (Lyrics Cache): Cached lyric files
- 封面缓存 (Cover Cache): Album artwork
- 应用数据 (App Data): Database and settings
- 清除歌词缓存 (Clear Lyrics Cache): Delete all lyric files
- 清除封面缓存 (Clear Cover Cache): Remove album art (re-downloads as needed)
- 清除应用数据 (Clear App Data): ⚠️ Resets app to factory state
Update Settings
Configure app updates:- 自动检查更新 (Auto Check Updates): Check for new versions on startup
- 仅 Wi-Fi 更新 (Wi-Fi Only Updates): Download updates only on Wi-Fi
- 加入测试计划 (Join Beta Program): Get early access to new features
Network Settings
- 仅 Wi-Fi 播放 (Wi-Fi Only Playback): Prevent streaming over cellular
- 预加载下一首 (Preload Next Track): Buffer upcoming track for seamless transitions
- 网络超时 (Network Timeout): Seconds to wait for network requests (default: 30)
Gesture Controls
Customize touch gestures in the player:- Swipe Down: Minimize player to now-playing bar
- Swipe Up on Bar: Expand to full player
- Long Press Track: Enter selection mode in playlists
- Double Tap Cover: Toggle play/pause (optional)
Gesture settings may vary by platform (Android vs iOS).
Keyboard Shortcuts (Future)
Planned desktop/tablet shortcuts:- Space: Play/Pause
- Arrow Keys: Seek forward/backward
- Shift + Arrow: Next/Previous track
- M: Mute/Unmute
- L: Toggle lyrics
Accessibility
Font Size
Adjust text size throughout the app:- Go to Settings → Accessibility → 字体大小 (Font Size)
- Choose from: Small, Medium (default), Large, Extra Large
Reduce Motion
Disable animations:- Toggle 减少动画 (Reduce Motion)
- Disables:
- Spectrum visualizer
- Lyric scroll animations
- Screen transitions
- Album art zoom effects
High Contrast
Increase UI contrast:- Toggle 高对比度 (High Contrast)
- Enhances:
- Text against backgrounds
- Button borders
- Icon visibility
Importing/Exporting Settings
Export Settings
- Go to Settings → Advanced → 导出设置 (Export Settings)
- Select export location
- Settings saved as JSON file
- All preferences from
Settingsobject - Theme choices
- Playback configurations
- Privacy settings
Import Settings
- Go to Settings → Advanced → 导入设置 (Import Settings)
- Select previously exported JSON file
- Confirm import to restore settings
Resetting to Defaults
To restore all settings to factory defaults:- Go to Settings → Advanced → 重置所有设置 (Reset All Settings)
- Confirm the action
- App will reset to default configuration
This only resets preferences. Your playlists, downloads, and library are not affected.
Troubleshooting
Settings not saving
Settings not saving
If your settings changes don’t persist:
- Check available storage (low storage can prevent writes)
- Force close and reopen the app
- Clear app cache in system settings
- Check file permissions in Android settings
- As a last resort, reinstall the app
Theme not switching automatically
Theme not switching automatically
If light/dark mode doesn’t follow your system:
- Verify system dark mode is enabled/disabled
- Force close the app completely
- Check for app updates (may be a bug)
- Some Android skins require explicit app restart
Spectrum visualizer not working
Spectrum visualizer not working
Common issues:
- Microphone permission not granted - check app permissions
- Android audio policy restrictions - try rebooting device
- Bluetooth audio may not support spectrum - switch to device speaker
- Some Android ROMs restrict audio access - check manufacturer forums
Best Practices
- Experiment with themes: Try both gradient and default backgrounds to see what you prefer
- Battery optimization: Disable spectrum visualizer and reduce motion for longer battery life
- Network awareness: Enable Wi-Fi only playback to avoid mobile data overages
- Regular cache clearing: Clear lyrics/cover cache monthly to free up storage
- Backup settings: Export settings after extensive customization
- Privacy balance: Enable data collection to help development, but disable if privacy is critical
- Debug logs for support: When reporting issues, enable debug logs first to provide detailed information