Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
mixi2 の技術スタックを探ってみる (アプリ編)
Search
Ichiki
December 19, 2024
Technology
400
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
mixi2 の技術スタックを探ってみる (アプリ編)
2024年12月19日に行われたマイベスト社内LT発表資料です!
Ichiki
December 19, 2024
More Decks by Ichiki
See All by Ichiki
React Nativeでの OTA Updateって、 どう説明する?
ichiki1023
0
110
一度 Expo の採用を断念したけど、 再度 Expo の導入を検討している話
ichiki1023
1
820
React Native 製アプリで Android 版をリリースする際にハマったポイント 2 選
ichiki1023
0
200
Other Decks in Technology
See All in Technology
Coil3を内部実装から読み解く~キャッシュ戦略とAVIF画像の描画〜/nikkei-tech-talk50
nikkei_engineer_recruiting
0
160
20260929_AmazonGuardDutyの検出通知メールにAWS DevOpsAgentの調査結果を追加する
yhana
1
370
音声コミュニティを守るAI監視基盤_ 90%以上の入力削減を支えたServerless設計と運用判断
shuheioka123
0
120
HolmesGPTで始めるSREエージェント入門!プラットフォームの障害調査はAIにお任せ 〜
sanghyuk
0
240
KanaAI
shreyas1009
0
120
AIに書かせて、プラットフォームで縛る ― EKSプラットフォームで実践した責任境界と権限設計
elmodev09
1
1k
AIエージェントを安全で速い現場監督にする:Jev・Obsidian・メタハーネス
x5gtrn
PRO
0
140
AWS DevOps Agent スキルをつかいこなそう / Master AWS DevOps Agent Skills
kinunori
2
630
HacobuにおけるFDEとは/登壇資料(戸井田 裕貴)
hacobu
PRO
1
590
ボードゲームの遊び相手をFoundation Modelsで作る / iOSDC Japan 2026
genda
0
230
[Kiro Meetup #7] Kiro Crew Dive Deep
konippi
0
420
10年欲しかった音楽管理アプリを、AIと一緒に作りはじめた
judau
1
190
Featured
See All Featured
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
3.1k
Tell your own story through comics
letsgokoyo
1
1.1k
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
It's Worth the Effort
3n
188
29k
Become a Pro
speakerdeck
PRO
31
6.3k
Being A Developer After 40
akosma
91
590k
How GitHub (no longer) Works
holman
316
150k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
440
So, you think you're a good person
axbom
PRO
2
2.2k
A Soul's Torment
seathinner
8
3.7k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
390
Transcript
mixi2 の技術スタックを探ってみる (アプリ編) 2024-12-19 マイベスト社内 LT / Ichiki Sato (@ichiki1023)
みなさん!
先日 mixi2 がリリースされましたね! 懐かしさと新しさが入り混じった良いアプリ!
今日はそんな mixi2 の技術スタックを調べてみました
きっかけ mixi2 が先日(2024/12/16)にリリースされた X で Flutter 製だよ、という噂を見たので真実かどうか確かめたくなった アプリが良い感じなのでついでに他の周辺技術も気になったので調べてみたくな った
大前提 犯罪に触れることはしていません mixi2 と言いつつ方法論的な話をメインにするので他でも使えます
アプリの気になりポイント アプリの言語は? (Swift or Kotlin, Dart(Flutter), React(React Native), ...Other?) API
の通信手段は? (REST, GraphQL, gRPC?) 使っているライブラリは? (State 管理は?, Analytics は? Logging は?) メディアファイル系の置き場所は? (s3? Cloud Storage? imagix?)
(補足) 今回やらなかったこと 開発者に直接聞く 採用情報から調べる 見た限りだと特に mixi2 のエンジニア募集はなかった (2024/12/18 時点) https://mixigroup-recruit.mixi.co.jp/jobs/?cats=engineer
2 つのアプローチ 1. ライセンス表記から探る 2. Proxy 経由でリクエストを覗き見る
1. ライセンス表記から探る 2. Proxy 経由でリクエストを覗き見る
Apple 公式の App Review ガイドラインからの引用 https://developer.apple.com/jp/app-store/review/guidelines/ 5.2.1 全般:商標、著作権取得済みの作品、特許取得済みのアイデアなどの保護さ れたサードパーティ製の素材をアプリで許可なく使用することはできません。ま た、誤解を招く、虚偽の、または模倣の描写、名前、メタデータを
App Bundle (アプリバンドル)やデベロッパ名に含めることは許可されません。アプリは、 知的財産権およびその他の関連する権利を所有する、またはそのライセンスを受 けている個人または法人によって提出される必要があります。 1. ライセンス表記から探る
つまり、アプリを公開するなら利用している OSS の ライセンス表記はほぼほぼ必須 対応していない場合は Reject をもらう可能性も。 。 Apple を例に出したが
Google も同様 (参照) 1. ライセンス表記から探る
なのでこのライセンス表記から使用している技術を探 っていきます 1. ライセンス表記から探る
実際に見てみる 1. ライセンス表記から探る
ライセンス一覧の場所はアプリによってまちまち (iOS の場合) 大抵は端末のアプリ設定 or アプリ内の設定にある mixi2 はアプリ内だった プロフィール →
設定 →mixi2 について → ライセンスで辿れます 1. ライセンス表記から探る
こんな感じ mixi2 mybest ChatGPT mixi2 同様マイベストもアプリ内、ChatGPT は端末のアプリ設定にあった 1. ライセンス表記から探る
mixi2 やっぱり Flutter だった 1. ライセンス表記から探る
その他発見した技術スタック 気になったやつだけ PickUp! - Dart, Flutter - Bugsnag - Firebase関連
(Firebase Analytics, Firebase Crashlytics, ...etc) - Google fonts - Noto Serif Japanese - gRPC - protobuf - lottie - rxdart - web_socket - GitHub Copilot (??) 技術スタック見るとツヨツヨエンジニアがいそうな雰囲気? (rxDart とか gRPC とか) 1. ライセンス表記から探る
1. ライセンス表記から探る 2. Proxy 経由でリクエストを覗き見る
2. Proxy 経由でリクエストを覗き見る Proxyman や Charles などを使って HTTP リクエストの中身を覗いてみる その情報を元に使用している技術を推測する
2. Proxy 経由でリクエストを覗き見る
しかし、 、 、 2. Proxy 経由でリクエストを覗き見る
Flutter だと見れなかった。 。 https://docs.proxyman.io/debug-devices/flutter#id-4.-flutter-with-android-emulator Flutter 製のアプリだとシステムレベルでの Proxy が使えないらしく通信内容を見る ことができなかった 通信を見たい場合はコードを修正する必要があるらしい。なので本番では見れな
い (学び) 2. Proxy 経由でリクエストを覗き見る
一応 マイベストのアプリを Proxyman for iOS で見るとこ んな感じ リクエストの内容から、以下の推測ができる Firebase 使っている
imgix 使っている (レスポンスのヘッダで判別で きる) Sentry 使っている KARTE 使っている 2. Proxy 経由でリクエストを覗き見る
さいごに mixi2 の技術スタック答え合わせ アプリの言語は? Dart, Flutter API の通信手段は? おそらく gRPC
(だと思う。いつか公式で出た情報で答え合わせをする) 使っているライブラリは? Firebase 諸々, Bugsnag, rxDart, Lottie, Google Fonts, ...etc メディアファイル系の置き場所は? (s3? Cloud Storage? imagix?) Proxy が使えなかったのでわからず。 。
まとめ アプリ側だけでフォーカスして見れば PC 使わずとも大体使っている技術が何かわ かる (ただし Flutter 製アプリだと情報が少ない) Web の場合だと最近は便利な
Chrome 拡張があるのでもっと簡単にわかる (はず)