Slide 1

Slide 1 text

FlutterでTikTokログインが できるパッケージを作った話 YUMEMI.grow Mobile #6 Kota Hayashi (K9i)

Slide 2

Slide 2 text

自己紹介

Slide 3

Slide 3 text

イベント宣伝

Slide 4

Slide 4 text

8/15(火)にエントリー開始 🚀

Slide 5

Slide 5 text

まだまだ募集中です 🙏 ゴールド(1/3) シルバー(9/10)

Slide 6

Slide 6 text

本編

Slide 7

Slide 7 text

前置き - ゆめみ転職前の話です

Slide 8

Slide 8 text

Flutterにおけるパッケージとは - 特定の機能などを提供する独立したモジュール - Androidでのライブラリ、iOSでのPodといえば伝わりやすい - (ってChatGPTが言ってた) - pub.devというパッケージリポジトリで管理されている

Slide 9

Slide 9 text

開発していたアプリでTikTok認証が必要に - https://developers.tiktok.com/doc/login-kit-overview/ - TikTokのLogin Kitを使うことで認証可能

Slide 10

Slide 10 text

No content

Slide 11

Slide 11 text

開発していたアプリでTikTok認証が必要に - https://developers.tiktok.com/doc/login-kit-overview/ - TikTokのLogin Kitを使うことで認証可能 - iOS、Android、Web向けには公式が対応している - Flutter向けのパッケージは無し😇

Slide 12

Slide 12 text

TikTokを開発している ByteDanceはFlutter公式で紹 介さてるはず…

Slide 13

Slide 13 text

作ったパッケージ

Slide 14

Slide 14 text

参考にしたパッケージ - 似たような目的のパッケージを参考にした - flutter_line_sdk - https://pub.dev/packages/flutter_line_sdk - LINEログイン - flutter_facebook_auth - https://pub.dev/packages/flutter_facebook_auth - Facebookログイン - どちらもネイティブ向けのSDKをflutterで使えるようにしている

Slide 15

Slide 15 text

MethodChannel - Flutterでプラットフォーム (iOS、Androidなど)のメソッド を呼び出す、その逆をするAPI - 公式ページ - 日本語記事

Slide 16

Slide 16 text

Pigeon - MethodChannelは型安全ではない - Pigeonというパッケージを使うと型安全にやりとりできる - https://pub.dev/packages/pigeon - 作った当時知らなかったので、まだflutter_tiktok_sdkでは使っていない

Slide 17

Slide 17 text

実装時の苦労 - TikTokログインを使ってる人がぜんぜんいなそう - (当時)公式ドキュメントが結構間違ってた - 指摘したら対応はかなり早かった - Stack Overflowでも情報が少ない - Androidは経験があったが、iOSの実装経験が無かった - Xcodeムズい

Slide 18

Slide 18 text

公開後 - はじめはアプリに処理をそのまま書いたが、あとからパッケージに切り出 した - 他にもTikTokログインしたい人がいるはず

Slide 19

Slide 19 text

多少は使われてる🥳

Slide 20

Slide 20 text

公開後 - はじめはアプリに処理をそのまま書いたが、あとからパッケージに切り出 した - 他にもTikTokログインしたい人がいるはず - ただし… - GitHubでぜんぜん星がつかない - 転職してTikTokログイン機能と離れメンテモチベが

Slide 21

Slide 21 text

まとめ - Flutterにおけるパッケージの紹介 - flutter_tiktok_sdkを作った - 参考になったパッケージの紹介 - Flutterでプラットフォームのメソッドを呼ぶMethodChannel - 公開後