【Flutter × Notion API: Notion Create Application

최근 노션의 편의성을 발견하면서 베타 에디션으로 공개된 것Notion API을 동시에 알게 되자 기세 있게 앱을 만들었다.
본 글은 응용에 대한 소개(주요)와 기술 분야의 지식을 간단하게 소개하고자 합니다.(Notion API를 사용하는 데도 매혹적인 부분이 있기 때문에 다른 글로 쓸 수 있다면 쓰고 싶다.)

Quick Notion



https://play.google.com/store/apps/details?id=app.tsumuchan.quick_notion
https://apps.apple.com/jp/app/id1569851996
할 수 있는 일로
  • Notion 인증
  • 투고하고 싶은 페이지를 선택합니다
  • .
  • 텍스트의 투고.
  • 상당히 간단한 노션 기고문 전용 앱이다.

    Fluter 주변 설치 정보


    아키텍처


    아키텍처 정보, Provider× StateNotifier × Freezed라는 정통 형식을 채택했다.
    API 처리를 위해 Repository를 설정합니다.
    또 평소 안드로이드 개발로 MVM으로 설치하면 이해하기 쉽다
    TopPage <-> TopViewModel <-> XXXRepository
    
    의 느낌으로 명명되었다.

    큰 가방


    이번에 사용한 주요 포장은 다음과 같다.
    Notion API 호출에서 dio를 처음 사용해 편리하게 사용할 수 있습니다.
    인증할 때 URL 프로젝트를 처리해야 하기 때문에 uni링크스도 사용하고 있습니다.
    https://pub.dev/packages/dio
    https://pub.dev/packages/uni_links
    https://pub.dev/packages/shared_preferences
    https://pub.dev/packages/url_launcher
    https://pub.dev/packages/modal_bottom_sheet
    https://pub.dev/packages/fluttertoast

    Notion API 정보


    문서가 알기 쉽다


    네, 기본적으로 문서를 보면 충분해요.(또는 공개된 시간이 짧아서 인터넷에도 정보가 없고 문서만 볼 수 있다)
    https://developers.notion.com/

    베타 버전


    이미 공개됐지만 베타 버전이라 규격 변경으로 움직이지 못할 수도 있다고 생각했어요.
    평상시 검사Changelog도 필요하다.

    Quick Notion에 사용되는 API


    API는 Notion 인증, 투고하려는 페이지 선택, 텍스트 투고 등 3가지 경우에 각각 사용됩니다.

    인증


    https://developers.notion.com/docs/authorization
    Notion 인증에 사용되었습니다.
    현재 상태라면workspace의admin이 아니면 인증할 수 없습니다.
    또한, 같은workspace에 대해서는access token을 하나만 인정할 수 있습니다.(여러 사용자가 같은workspace에 대해 인증할 수 없습니까?)

    페이지 선택


    https://developers.notion.com/reference/post-search
    대상 선택 페이지에 이미 사용되었습니다.
    본래 사용법인지 모르겠지만 빈 문자로 검색한query를 지정하면 전체 페이지(최대 100페이지의 제한)를 얻을 수 있을 것 같습니다.

    투고하다


    https://developers.notion.com/docs/working-with-page-content#appending-blocks-to-a-page
    텍스트 투고에 사용되었습니다.
    현재는 투고만으로는 편집과 삭제가 불가능하다.

    끝맺다


    응용 프로그램의 소개와 기술 방면의 일을 대략적으로 소개하였다.
    관심 있는 사람은 반드시 설치해서 사용하세요!
    (기사에 이상한 점, 잘못된 점, 앱에 문제가 있다면 부드럽게 지적해 주시면 감사하겠습니다.)

    좋은 웹페이지 즐겨찾기