RORK LABEN
MAX — Rork MaxはiPhone・iPad・Apple Watch・Apple TV・Vision Pro向けにネイティブSwiftを生成し、2クリックでApp Store公開でき、Xcodeを必要としませんSTACK — 通常のRorkはReact Native(Expo)でクロスプラットフォームのモバイルアプリを作る位置づけ。用途に応じた使い分けが鍵ですFOCUS — BoltやLovableのようなWeb中心ツールと違い、RorkはiOS/Androidのネイティブアプリ生成に特化していますBUGS — 実利用レビューでは遭遇したバグの約70%を手動介入なしで解決、残り3割はエクスポート済みコードでの手修正が必要と報告されていますFUNDING — Rorkはa16z(Andreessen Horowitz)から$2.8Mを調達しましたPRICING — 無料で開始でき、有料プランは$25/月からです。まず触ってから判断できますMAX — Rork MaxはiPhone・iPad・Apple Watch・Apple TV・Vision Pro向けにネイティブSwiftを生成し、2クリックでApp Store公開でき、Xcodeを必要としませんSTACK — 通常のRorkはReact Native(Expo)でクロスプラットフォームのモバイルアプリを作る位置づけ。用途に応じた使い分けが鍵ですFOCUS — BoltやLovableのようなWeb中心ツールと違い、RorkはiOS/Androidのネイティブアプリ生成に特化していますBUGS — 実利用レビューでは遭遇したバグの約70%を手動介入なしで解決、残り3割はエクスポート済みコードでの手修正が必要と報告されていますFUNDING — Rorkはa16z(Andreessen Horowitz)から$2.8Mを調達しましたPRICING — 無料で開始でき、有料プランは$25/月からです。まず触ってから判断できます
記事一覧/アプリ開発
アプリ開発/2026-06-16上級

Rork Max のアプリに Apple Wallet のスタンプカードを足す — 署名と更新の実装メモ

店舗のスタンプカードを Apple Wallet に入れたい——Rork Max が生成した Swift アプリから PassKit のパスを発行する際、難所はデザインではなく『署名』と『リモート更新』でした。実装の勘所を整理します。

Rork Max166PassKitApple WalletSwift25ロイヤルティ

プレミアム記事

スタンプカードは「画像」では役に立ちません

紙のスタンプカードを Apple Wallet に置き換えたい、という相談を受けて作り始めたのが最初でした。単に券面の画像を表示するだけなら簡単です。けれど、それでは来店ごとのスタンプ追加が反映されず、ユーザーは結局アプリを開いて確認することになります。Wallet に入れる意味は、ロック画面に出て、残高やスタンプ数が自動で最新になることにあります。

Rork Max が生成したネイティブ Swift アプリから PassKit のパスを発行してみて分かったのは、難所がデザインではなく「署名」と「リモート更新」だということでした。この二つを越えないと、Wallet のパスは静止画と変わりません。個人開発でアプリを出してきた身としても、ここは新鮮なつまずきでした。実装で確認した勘所を残します。

pkpass は署名された ZIP です

Apple Wallet のパス(.pkpass)は、いくつかのファイルをまとめて署名した ZIP アーカイブです。中身は大きく三つに分かれます。

  1. pass.json — パスの種類(ストアカード、クーポン、搭乗券など)、表示フィールド、色、バーコードを定義します
  2. 画像群(icon.pnglogo.png など) — 解像度別に複数用意します
  3. manifest.jsonsignature — これが署名の核心です

manifest.json は各ファイルの SHA-1 ハッシュの一覧です。signature は、その manifest を Pass Type ID 証明書で署名した PKCS#7 のバイナリです。つまり、ファイルを一つでも改ざんするとハッシュが合わず、Wallet がパスを拒否します。ここが「画像を差し替えるだけ」では済まない理由です。署名はビルド時かサーバー側で行い、秘密鍵をアプリに同梱してはいけません。私は、パス生成と署名はすべてバックエンドの責務に寄せることを強く推奨します。

pass.json の最小構成はこうなります。

{
  "formatVersion": 1,
  "passTypeIdentifier": "pass.com.example.stamp",
  "serialNumber": "user-00123",
  "teamIdentifier": "YOUR_TEAM_ID",
  "organizationName": "Sample Coffee",
  "description": "スタンプカード",
  "storeCard": {
    "primaryFields": [
      { "key": "stamps", "label": "スタンプ", "value": "3 / 10" }
    ]
  },
  "barcode": {
    "format": "PKBarcodeFormatQR",
    "message": "user-00123",
    "messageEncoding": "iso-8859-1"
  },
  "webServiceURL": "https://example.com/passes/",
  "authenticationToken": "REPLACE_WITH_PER_USER_TOKEN"
}

webServiceURLauthenticationToken が、後述するリモート更新の入口です。ユーザーごとに固有のトークンを発行し、他人のパスを更新できないようにします。

ここまでお読みいただきありがとうございます。

この記事の続きを読む

この先には、実装コードやベンチマーク結果など、実務でお役に立てる内容をご用意しています。このサイトは広告を掲載しておらず、サーバーや開発にかかる費用はメンバーの皆様のご支援で成り立っています。もしお役に立てていましたら、ご支援いただけますと大変ありがたいです。

この記事で得られること
pkpass の中身(pass.json・manifest・signature)の構造と、署名がどこで必要になるかを理解できる
アプリから Wallet にパスを追加する PKAddPassesViewController の実装コードを習得できる
来店のたびにスタンプ数を更新する push 更新の流れと、サーバー側の web service 要件を再現できる
Stripe による安全な決済 · いつでもキャンセル可能

この記事を購入する

この先の内容をすべてお読みいただけます。一度のご購入で、いつでも何度でもアクセスできます。このサイトは広告を掲載しておらず、皆さまのご支援がサーバー費用などの運営を支えています。

または
メンバーシップなら全記事が読み放題 →
シェア

お読みいただきありがとうございます

Rork Lab は広告なしで運営しており、サーバー費用などの運営コストはメンバーシップのご支援で賄っています。実装コード・ベンチマーク・本番設計パターンなど、実務でお役立ていただける記事を毎日更新しています。もし読んでよかったと感じていただけましたら、ぜひご覧ください。

  • コピー&ペーストで使える実装コード付き
  • 毎日新しい上級ガイドを追加
  • ¥580/月 または ¥1,480 の永久アクセス
メンバーシップを見る →

関連記事

アプリ開発2026-06-16
初回起動の前に壁紙パックを落としておく — Rork Max と Background Assets の使いどころ
コンテンツの多いアプリは、初回起動時に空のグリッドを見せてしまいがちです。アプリ本体とは別枠でコンテンツを先回りして落とす Background Assets を、Rork(Expo)では届かない領域として Rork Max のネイティブ Swift でどう実装するか、運用判断まで含めてまとめます。
アプリ開発2026-06-16
Rork Max で iMessage 拡張を作り、アプリの世界観をメッセージに持ち込む — 配布導線としての実装メモ
Rork Max が生成するネイティブ Swift プロジェクトに iMessage 拡張を追加し、アプリの素材をメッセージ上で共有する実装を整理しました。コンパクト/拡張表示の切り替え、メッセージ送信、ドロワーに出てこないときの切り分けまで、個人開発の配布目線で押さえます。
アプリ開発2026-06-16
Rork Max で WeatherKit を使う天気アプリ — 認証とアトリビューションの落とし穴
Rork Max が生成したネイティブ Swift アプリに WeatherKit を組み込む際、最初に詰まるのは認証とアトリビューションでした。トークンの扱い、レート上限、必須の出典表示まで、実装で確認した手順を整理します。
📚RECOMMENDED BOOKS
大規模言語モデル入門
山田育矢
LLM開発
生成AIプロンプトエンジニアリング入門
我妻幸長
プロンプト
Claude CodeによるAI駆動開発入門
平川知秀
AI駆動開発
※ アフィリエイトリンクを含みます
もっと見る →