[flutter] shared_preferences 를 사용하여 사용자가 선택한 뮤직 플레이어를 저장하는 방법은 무엇인가요?
Flutter에서 앱 내에서 지속적으로 데이터를 저장하고 사용하기 위해 shared_preferences 패키지를 사용할 수 있습니다. 이 패키지를 사용하면 사용자가 선택한 뮤직 플레이어를 저장하고 다시 불러올 수 있습니다. 아래는 이 과정을 간단한 예제 코드로 설명합니다.
먼저, shared_preferences 패키지를 프로젝트에 추가해야 합니다. pubspec.yaml
파일에 다음 코드를 추가하세요:
dependencies:
flutter:
sdk: flutter
shared_preferences: ^2.0.13
pubspec.yaml
파일을 저장한 후, 터미널에서 flutter pub get
명령어를 실행하여 패키지를 다운로드 받습니다.
이제 shared_preferences 패키지를 사용하여 사용자가 선택한 뮤직 플레이어를 저장하는 방법을 설명하겠습니다. 아래는 간단한 예제 코드입니다:
import 'package:flutter/material.dart';
import 'package:shared_preferences/shared_preferences.dart';
class MyApp extends StatelessWidget {
final TextEditingController _textEditingController = TextEditingController();
final String _musicPlayerKey = 'selectedMusicPlayer';
Future<void> _saveSelectedMusicPlayer(String selectedPlayer) async {
SharedPreferences prefs = await SharedPreferences.getInstance();
await prefs.setString(_musicPlayerKey, selectedPlayer);
}
Future<String?> _getSelectedMusicPlayer() async {
SharedPreferences prefs = await SharedPreferences.getInstance();
return prefs.getString(_musicPlayerKey);
}
@override
Widget build(BuildContext context) {
return MaterialApp(
home: Scaffold(
appBar: AppBar(
title: const Text('Save Music Player'),
),
body: Center(
child: Column(
mainAxisAlignment: MainAxisAlignment.center,
children: [
TextField(
controller: _textEditingController,
decoration: const InputDecoration(
labelText: 'Enter selected music player',
),
),
ElevatedButton(
onPressed: () {
String selectedPlayer = _textEditingController.text;
_saveSelectedMusicPlayer(selectedPlayer);
},
child: const Text('Save'),
),
FutureBuilder<String?>(
future: _getSelectedMusicPlayer(),
builder: (BuildContext context, AsyncSnapshot<String?> snapshot) {
if (snapshot.hasData) {
return Text('Selected Music Player: ${snapshot.data}');
} else {
return const Text('No music player selected.');
}
},
),
],
),
),
),
);
}
}
void main() {
runApp(MyApp());
}
이 예제 코드는 앱 내에 텍스트 필드와 저장 버튼이 있습니다. 사용자가 텍스트 필드에 선택한 뮤직 플레이어를 입력하고 저장 버튼을 누르면 SharedPreferences
를 사용하여 이 값을 저장합니다. 또한, FutureBuilder
위젯을 사용하여 저장된 값을 불러와 화면에 표시합니다.
이제 앱을 실행하고 뮤직 플레이어를 입력하여 저장해보세요. 저장된 값은 앱을 종료하고 다시 실행해도 유지됩니다.
이를 참고하여 Flutter 앱에서 shared_preferences 를 사용하여 사용자가 선택한 뮤직 플레이어를 저장하는 방법을 알아보았습니다. 해당 데이터를 사용하여 앱의 다른 기능에 활용할 수 있습니다.