Loading
BLOG 開発者ブログ

2018年5月11日

【お手軽】Googleの短縮URLサービスをFDLで置き換える

こんにちは!主にモバイルアプリの開発を担当しているimai.kです!
今回は、すでにサービス終了が周知されているGoogleの短縮URL作成サービスに関して、ご紹介します。

 

 

Google URL ShortenerのEOL

2018年4月13日から匿名ユーザー及び、今まで短縮URLを作ったことがないユーザーはgoo.glコンソールから新しい短縮URLの作成が出来なくなっています。

また、既存の短縮URLを所有しているユーザーも2019年4月1日には、goo.glコンソールの機能が利用できなくなります。

(公式の情報はこちらをご参照ください。)

そのため、Google URL Shorternerを自身のサービスに組み込んでいる方などは、移行先を検討しているのではないでしょうか?

 

Firebase Dynamic Links(FDL)を利用する

そんな方に今回はFDLによる置き換えをご紹介します。

FDLはユーザーをiOS、Android、ウェブアプリの任意のロケーションを送ることができるスマートなURLです。

となりますので、、、FDL自体はGoogle URL Shorternerのような単純な短縮URL作成サービスというわけではありません。ただし、FDLには「長いURLを短くする」という機能があるので、今回はそれを利用します。

 

FDLのREST API

REST APIを使用するには、Firebaseのプロジェクトを作成していることが前提になります。

まずは、こちらからプロジェクトを作成してください。

次に左タブのDynamic Linksを選択すると以下のような画面になると思います。

短縮URLを作成するには、iOSまたはAndroidアプリを追加する必要があります。

特にiOS、Androidアプリを所有されていない方も、いずれかのアプリを設定してみましょう。(今回はAndroidアプリを設定してみます。)

iOS、Androidいずれかのアプリをプロジェクトに追加することができたら、画像のようにプロジェクトの設定を開き、[ウェブ API キー] フィールドの値をメモしておいてください。

次に、再度Dynamic Linksタブを開くと画像の塗りつぶした部分にURLが表示されていると思います。こちらもメモしておいてください。

短縮URLを作成する

ここまで準備ができたら、最後に短縮URLを作成します。

短縮URLの作成はFirebaseのREST APIを使用しますので、今回は以下のようにコンソールからcurlコマンドでAPIを叩いてみます。

longDynamicLinkパラメータに設定しているhttps://hoge.app.goo.glのURLは、先ほど取得したDynamic Links URLに、[your_api_key]には自身のAPIキーに差し替えてください。

また、longDynamicLinkのlink以下に設定するURLはURLエンコードしておくことをおススメします。

curl -H 'Content-Type:application/json'  -d '{"longDynamicLink": "https://hoge.app.goo.gl/?link=[your_url_encoded_url]","suffix": {"option": "SHORT"}}'  "https://firebasedynamiclinks.googleapis.com/v1/shortLinks?key=[your_api_key]"

うまくいけば、以下のようなレスポンスが得られるはずです。
(今回はFirebaseプロジェクトに追加したAndroidアプリに、SHA256の設定など何も行っていないため、警告が出ていますが、shortLinkパラメータで取得したURLは短縮URLとして動作します。)

{
"shortLink": "https://hoge.app.goo.gl/eNh4",
"warning": [
{
"warningCode": "UNRECOGNIZED_PARAM",
"warningMessage": "Android app 'piyo.fuga' lacks SHA256. AppLinks is not enabled for the app. [https://firebase.google.com/docs/dynamic-links/debug#android-sha256-absent]"
}
],
"previewLink": "https://hoge.app.goo.gl/eNh4?d=1"
}

最後に

いかがでしたでしょうか。

今回は最低限、短縮URLをFDLで作成するところだけご紹介しました。

Firebaseを利用した短縮URL作成は敷居が高そうに見えたかもしれませんが、比較的簡単に作ることができたと思います。

(FDL REST APIの公式情報は、こちらのドキュメントを参考にしてください。)

それでは。

imai.kのブログ