株式会社パルケの悩めるCTO、みつるです。 この記事は先日ツイートしたものを加筆修正したものとなります。 株式会社パルケでは、最初のプロダクト開発でFirebaseを全面的に採用し、1年以上にわたって運用してきました。 一方でFirebaseの制限・制約がつらい、と思う理由も徐々に積み重なってきました。 結果、Firebaseから卒業するという大きな判断をしました。 今その判断は間違っていなかったと思います。 ここではFirebaseがつらかった理由をまとめておきたいと思います。 第10位:Firebaseでは実現できない要件があった。 パルケのプロダクトでは、エンタープライズ向けにセキュリティ対応を強化したい、という要件がありましたが、以下要件の実現が難しかったです。 IPアドレス制限をできるようにしたかったが、Firestoreへアクセス毎にIPアドレスで制限をかける方法が見つからなか
Google アナリティクスでの設定 Google アナリティクス 4 プロパティを作成する アナリティクスのプロパティでアプリデータを測定するには、対応するプロジェクトを Firebase で作成し、そのプロジェクトとプロパティの間にリンクを設定する必要があります。 Google アナリティクス 4 プロパティの作成に関する詳細 注: 1 つの Google アナリティクス 4 プロパティにリンクできる Firebase プロジェクトは 1 つだけです。つまり、その Firebase プロジェクト内のすべてのアプリが、1 つのプロパティにのみデータを送信します。 リンクの作成後に設定を更新する Google アナリティクス 4 プロパティを作成し、Firebase プロジェクトへのリンクを設定すると、次のどちらかを設定するオプションが表示されます。 Firebase ユーザーのアナリティ
Works with Cloud Firestore Version 0.1.60 | Source code License Apache-2.0 Publisher FirebaseReportBugAbuse Use this extension to export the documents in a Cloud Firestore collection to BigQuery. Exports are realtime and incremental, so the data in BigQuery is a mirror of your content in Cloud Firestore. The extension creates and updates a dataset containing the following two BigQuery resources: A
2回目以降も、インストールを使用すると、依存性でエラーになる事が多いです。 #証明書を発行編に移ります プッシュ通知を送るために作成するもの・しておくことは以下の7つあります。 CSRファイルの作成 ※初回作成すれば後は同じものを使いますので改めて作成不要です 開発用証明書(.cer)の作成 ※初回作成すれば後は同じものを使いますので改めて作成不要です AppIDの作成 端末の登録 プロビショニングプロファイルの作成 APNs用証明書(.cer)の作成 APNs用証明書(.p12)の作成 #1. CSRファイルの作成 キーチェーンアクセスを開きます 「キーチェーンアクセス」>「証明書アシスタント」>「認証局に証明書を要求」をクリックします 「ユーザーのメールアドレス」を入力します (「通称」はそのまま、「CAのメールアドレス」は空欄でOK) 「要求の処理」は「ディスクに保存」を選択し「鍵ペ
フィードバックを送信 プロジェクトのロケーションを選択する コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。 いくつかの Firebase プロダクトでは、ロケーションの設定が必要です。 Google アナリティクス - Firebase プロジェクトで Google アナリティクスを有効にすると、アナリティクスのレポートのロケーションを選択するよう求められます。このロケーションは組織の国または地域を表します。アナリティクスのロケーションによって、収益レポートの通貨が設定されます。 Cloud Firestore と Cloud Storage - いずれかのプロダクトを使い始めると、プロジェクトのデフォルトの Google Cloud Platform(GCP)リソース ロケーションを選択するように求められます(別のサービスを設定するときにまだ選択していな
Firebase では、ユーザー認証情報を共有せずに、サービス アカウントを使用してサービスの操作と管理を行えます。Firebase プロジェクトを作成するか、Firebase を既存の Google Cloud プロジェクトに追加すると、Firebase プロジェクトでいくつかのサービス アカウントが用意されます。 また、サービスの使用や特定のアクションの実行(Firebase プロダクトを BigQueryにリンクするなど)を行うと、新しいサービス アカウントが Firebase プロジェクトに追加されることもあります。これらのサービス アカウントは、Firebase によって直接追加されるものもあれば、Firebase プロジェクトに関連付けられた Google Cloud プロジェクトを介して追加されるものもあります。 プロジェクトに関連付けられたすべてのサービス アカウントは、F
権限はロールを介してプロジェクト メンバーに付与されます。ロールは権限の集合です。ロールをプロジェクト メンバーに割り当てると、そのロールに含まれるすべての権限がそのプロジェクト メンバーに付与されます。 Firebase IAM では、次のタイプのロールをサポートしています。 基本ロール: 基本的なオーナー、編集者、閲覧者のロール(旧称「基本(primitive)ロール」)。 事前定義ロール: 基本ロールよりも詳細なアクセス制御を可能にする、キュレートされた Firebase 固有のロール。Firebase では次のロールが提供されます。 Firebase レベルのロール: すべての Firebase プロダクトに対する完全な読み取り / 書き込みアクセスまたは読み取り専用アクセスを付与するロール。 プロダクト カテゴリのロール: プロダクト グループへの完全な読み取り / 書き込みアク
ユニバーサル アナリティクス(UA)は Google アナリティクス 4(GA4)に置き換えられました。2023 年 7 月 1 日をもって、標準のユニバーサル アナリティクス プロパティにおけるデータの処理は停止されました(最新のオーダーに含まれる 360 ユニバーサル アナリティクス プロパティの処理は、2024 年 7 月 1 日まで、1 回限り延長されます)。そのため、ユニバーサル アナリティクス プロパティを Google アナリティクス 4 に移行することが重要になります。詳しくは Google アナリティクス 4 に切り替える方法をご覧ください。 Google アナリティクスのプロパティを Google 広告アカウントにリンクすると、ウェブサイトとアプリでのユーザー行動を分析できます。これにより、Google 広告経由のサイト閲覧数や成果を把握し、広告とウェブサイトの改善に役
フィードバックを送信 オペレーティング システムを統合する コレクションでコンテンツを整理 必要に応じて、コンテンツの保存と分類を行います。 Dynamic Links 機能は、基盤となるオペレーティング システムの既存のディープリンク機能の上に構築されています。 iOS および Android との統合に関するフローチャートを以下に示します。こうしたフローチャートでは、リンク動作が次のように構成されていることを前提としています。(a) アプリがインストールされている場合: ディープリンクをアプリで開く、(b) アプリがインストールされていない場合: App Store / Play ストアのページを開く。 iOS の統合フローチャート Android の統合フローチャート フィードバックを送信 特に記載のない限り、このページのコンテンツはクリエイティブ・コモンズの表示 4.0 ライセンス
ウェブサイトやアプリケーションを簡単に構築できるクラウドサービスは便利なものですが、その課金システムは非常に複雑です。通信量や利用した計算リソースに応じて課金する従量課金制のサービスもあれば、条件を満たすことで無料で利用できるサービスもあります。そんなクラウドサービスの無料プランを利用したつもりが、7万2000ドル(約750万円)を請求され倒産寸前に追い込まれたと、ベンチャー企業の創設者が当時の状況をブログに吐露しています。 We Burnt $72K testing Firebase + Cloud Run and almost went Bankrupt [Part 1] | Milkie Way https://blog.tomilkieway.com/72k-1/ We Burnt $72K testing Firebase - Cloud Run and almost went
年の瀬なので、私自身が今年利用した技術をベースに技術スタックをまとめてみようと思います。 とはいえ Web Standard といった広い対象から、フレームワークやライブラリまで、粒度の違うものを全て言及するのは無理があるというもの。特に強く言及できるものは個別で説明しつつ、最後に利用する機会がなかったものも最後に記載する形で。 以下常体。 追記: マイナー企業のようなので一応書いておきますが、筆者は本業ではLINE株式会社という組織でいわゆるエンジニアリングマネージャーと言われるような業務とその採用に関わる仕事をしています。 利用した技術一覧 HTML/CSS/JS みたいなことを書いてるとキリがないので、独断と偏見で区分けして適宜漉いています。特に利用する機会が多かったものは太字でピックアップ。 Frontend Language/Platform TypeScript JavaScr
「Firebase は安いし楽だしマジ最高」という一心で技術選定してしまったプロダクトが成功して見えてきた課題、割高なコスト・権限管理・カスタマイズ性、そして (特性やスキルセット的に)RDB 製品が適していたのに無理やり Firestore を採用したことによるデータ不整合。 その結果チーム内で Firebase を抜ける機運が高まるも、Firebase べっとりなアプリケーションすぎて移行しづらいといった問題に出会うかもしれません。 そのような場合に備え、Firebase の存在を隠蔽して開発することに挑戦してみましょう。 注意: Firebase を剥がしているときに「俺、次は絶対そうするわ」と感じたものを書いているだけであり、まだ実際にはこのパターンでプロダクション導入していません。 あくまで個人開発で試してみていけそうと思ったので、提案しますという体です。 また Firebase
従来のp12ファイルの対応ではなく、p8ファイル1つで、複数アプリ分対応できてしまうp8ファイルで対応するメモです。 (アプリ側には事前にfirebaseSDKのMessagingを導入しておく必要があります。) p8ファイルの作成が必要なのは最初だけなので、 ルーティンで新規アプリのプッシュ通知の設定をする場合は、 firebaseに p8ファイルをアップロード キーIDに「固定のID」 チームIDに「固定のID」と入力するだけ。 めちゃ楽ちん 最初はp8ファイルの作成が必要なので、用意しておく 1. 認証キーを用意する(p8) ※ p8ファイル:1つの証明キーで、複数のアプリに対応できる 下記管理画面で作成 https://developer.apple.com/account/ios/authkey/ ※admin権限のメンバーでないと閲覧&作成できません。 Key Descript
表題通りの記事です。 これからnode.jsを10->12に更新する方の助けになれば幸いです。 確認環境 Ubuntu: 18.04.3 LTS node.js: 10.16.0、12.14.1 ビルドツール: gulp (後述しますが4系へのアップデートが必須でした) やったこと(全体像) n をつかってローカル環境のnode.jsを10->12に更新 (参考: nodeとnpmのバージョン更新方法) npm ciして、出てきたエラーを潰す firebaseの更新 node-sassの更新 npm run buildして、出てきたエラーを潰す gulpを3系->4系へ移行 エラー1 (firebaseの更新により解消) 最初はイージーケースから。 事象 npm ciしたところ、大量(体感3分)のログが出力され、最後に以下のエラーが吐かれました。 # これ以前にも大量のエラーログが出る c
Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 以前開発したときは、APNs証明書だけだったのに知らぬうちに2つの方法ができていたので備忘録です。 そもそもAPNsとは? Apple Push Notification Service(以下、APNs)は、iOSやtvOS、MacOS上で実行されているアプリケーションに対して開発者側から通知を送るためのAppleによるサービスのことを指します。 誤解されがちなのは、Firebase Cloud Messaging(以下、FCM)などの通知を行えるサービスと各アプリケーションが1対1で繋がっているようにとらわれがちですが、Appleデバ
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く