소절/Fluter shoreplus를 사용하여 공유 기능 실현

5174 단어 Flutter
이전share 플러그인에 설치된 글, 이미지 파일 등 공유 기능(트위터, 슬랙, 구글 드라이브 공유 등)이 현재share_plus로 바뀐 것 같아 메모로 남아있다.
시도된 버전
  • Flutter 2.5.3
  • share_plus 3.0.4
  • Android 10
  • iOS 14.8.1
  • 차리다
  • pubspec.yaml(관련 부분)
  • pubspec.yaml
      share_plus: ^3.0.4
    
    코드 예
    Example 그대로.
    또 실제로는 우리 개인이 개발하고 개인이 사용하는 응용 프로그램에서 사용된다.
  • hmatsu47 / maptool (GitHub)
  • 가져오기
    import 'package:share_plus/share_plus.dart';
    
    기사만 공유할 때
    오직 문장
      void _shareText(String text, String subject) async {
        await Share.share(text,
            subject: subject);
      }
    
    subject 메일을 보낼 때 제목으로 사용할 것 같습니다(선택 사항).
    또한 아이패드를 사용하는 경우에만sharePositionOrigin 옵션을 지정하여 표시할 수 있습니다.
    기사만(ipad)
      void _shareText(BuildContext context, String text, String subject) async {
        final box = context.findRenderObject() as RenderBox?;
        await Share.share(text,
            subject: subject,
            sharePositionOrigin: box!.localToGlobal(Offset.zero) & box.size);
      }
    
    이미지 파일을 추가하고 공유할 때StringList에 이미지 파일의 경로를 지정합니다(여러 개 첨부 가능).
    이미지 파일 포함
      void _shareImages(List<String> imagePaths, String text, String subject) async {
        await Share.shareFiles(imagePaths, text: text, subject: subject);
      }
    
    이쪽의 경우text·subject 모두 선택할 수 있다.또한 아이패드sharePositionOrigin만 옵션(예 생략)을 지정할 수 있습니다.
    예제 화면 표시
    안드로이드의 경우
    이런 느낌으로 공유 목표의 선택 화면을 보여준다.

    iOS의 경우
    모양은 다르지만 공유 대상의 선택 화면이 표시됩니다.

    트위터를 선택한 것은 이렇다.

    주의점
    Readme에는 기재돼 있지만 모바일(Android·iOS)는 페이스북에서 공유할 수 없다.

    좋은 웹페이지 즐겨찾기