[flutter] 플러터에서 앱 내부 저장소의 경로 가져오기

플러터를 사용하여 개발하는 동안 앱 내부 저장소의 경로를 가져와야 할 때가 있습니다. 이는 앱의 데이터를 로컬로 저장하거나, 파일을 읽거나 쓸 때 유용합니다. 이번 글에서는 플러터에서 앱 내부 저장소의 경로를 가져오는 방법에 대해 알아보겠습니다.

패키지 추가하기

앱 내부 저장소 경로를 가져오기 위해 path_provider 패키지를 사용합니다. pubspec.yaml 파일에 아래와 같이 의존성 추가를 해줍니다.

dependencies:
  flutter:
    sdk: flutter
  path_provider: ^2.0.2

의존성 추가 후 명령어를 실행하여 패키지를 가져옵니다.

flutter packages get

사용 방법

이제 path_provider 패키지를 사용하여 앱 내부 저장소의 경로를 가져오는 방법에 대해 알아보겠습니다.

import 'package:path_provider/path_provider.dart';

Future<String> getInternalStoragePath() async {
  final directory = await getApplicationDocumentsDirectory();
  return directory.path;
}

위의 코드에서 getApplicationDocumentsDirectory() 함수를 사용하여 앱 내부 저장소의 Directory 객체를 가져옵니다. 그리고 path 속성을 통해 경로를 얻을 수 있습니다. 이 함수는 Future를 반환하기 때문에, asyncawait을 사용하여 비동기적으로 처리합니다.

위의 함수를 호출하면 앱 내부 저장소의 경로를 얻을 수 있습니다.

void main() async {
  final internalStoragePath = await getInternalStoragePath();
  print(internalStoragePath);
}

위의 예제에서는 main 함수에서 getInternalStoragePath() 함수를 호출하여 앱 내부 저장소의 경로를 출력하고 있습니다.

정리

위의 방법을 사용하면 플러터에서 앱 내부 저장소의 경로를 가져올 수 있습니다. 이를 통해 앱의 데이터를 로컬로 저장하거나, 파일을 읽거나 쓸 수 있습니다. path_provider 패키지의 다양한 함수들을 활용하여 원하는 위치의 경로를 가져올 수도 있습니다.

참고 문서: