Search
Duplicate

share_plus

share_plus

share_plus 라이브러리

share_plus란 무엇인가

앱에서 공유 버튼 눌렀을 때 뜨는 공유 메뉴 기능
예:
뉴스 앱 → 기사 공유
갤러리 앱 → 사진 공유
메모 앱 → 텍스트 공유
파일 앱 → 파일 공유
거의 모든 앱에 들어가는 기능

설치 방법

dependencies: share_plus: ^7.0.0
YAML
복사
flutter pub get
Bash
복사
import 'package:share_plus/share_plus.dart';
Dart
복사

기본 텍스트 공유

Share.share('안녕하세요 Flutter 공유 테스트입니다.');
Dart
복사
버튼 예제:
ElevatedButton( onPressed: () { Share.share('Flutter 앱 공유하기'); }, child: Text("공유하기"), )
Dart
복사

링크 공유

Share.share('https://flutter.dev');
Dart
복사
웹사이트 공유, 앱 다운로드 링크 공유 등에 사용

제목 + 텍스트 공유

Share.share( 'Flutter 공유 내용입니다', subject: '공유 제목', );
Dart
복사
이메일 공유 시 제목으로 들어감

이미지 공유 (중요 )

final box = context.findRenderObject() as RenderBox; Share.shareXFiles( [XFile('/storage/emulated/0/Download/image.png')], text: '이미지 공유합니다', sharePositionOrigin: box.localToGlobal(Offset.zero) & box.size, );
Dart
복사
갤러리 앱, 카메라 앱에서 많이 사용

여러 파일 공유

Share.shareXFiles([ XFile(path1), XFile(path2), ]);
Dart
복사
여러 이미지 / 파일 동시에 공유 가능

파일 + 텍스트 같이 공유

Share.shareXFiles( [XFile(filePath)], text: '파일 공유합니다', );
Dart
복사

전체 예제

class ShareExample extends StatelessWidget { const ShareExample({super.key}); Widget build(BuildContext context) { return Scaffold( appBar: AppBar(title: Text("Share Plus 예제")), body: Center( child: Column( mainAxisAlignment: MainAxisAlignment.center, children: [ ElevatedButton( onPressed: () { Share.share("텍스트 공유 테스트"); }, child: Text("텍스트 공유"), ), ElevatedButton( onPressed: () { Share.share("https://flutter.dev"); }, child: Text("링크 공유"), ), ], ), ), ); } }
Dart
복사

자주 사용하는 앱 기능 예시

공유 내용
갤러리 앱
이미지
메모 앱
텍스트
뉴스 앱
기사 링크
쇼핑 앱
상품 링크
파일 앱
파일
일정 앱
일정 정보
거의 모든 앱에서 사용되는 기능

다른 Flutter 저장/공유 라이브러리와 조합

기능
라이브러리
이미지 선택
image_picker
파일 선택
file_picker
파일 저장
path_provider
DB 저장
sqflite
공유
share_plus
같이 많이 사용됨

예시 앱 구조

사진 선택 → 파일 저장 → DB 저장 → 목록 표시 → 공유 버튼 → share_plus
Plain Text
복사
갤러리 앱 / 메모 앱 / 파일 앱 프로젝트 가능

실무 팁

공유 버튼 위치

보통 여기 위치에 있음
AppBar 오른쪽 아이콘
상세 페이지 상단
이미지 보기 화면
리스트 아이템 메뉴
IconButton( icon: Icon(Icons.share), onPressed: () { Share.share("공유 내용"); }, )
Dart
복사

한줄 정리

share_plus = Flutter 앱에서 텍스트, 이미지, 파일을 다른 앱으로 보내는 공유 라이브러리
원하면 Flutter에서 많이 쓰는 라이브러리 강의노트 시리즈도 정리해줄게:
image_picker
file_picker
path_provider
sqflite
hive
shared_preferences
flutter_slidable
table_calendar