狂ったお茶会のlog

後で起きる自分のためのメモ

Facebook Messenger に URLをシェアする

やりたいこと

掲題の通り
URLスキームでちょちょいと飛ばせないかな〜と思った

やったこと

まず
fb://messaging
を試した。
こいつは、facebookアプリを経由して、facebookメッセンジャーアプリを開いてくれるURLスキーム

URLスキームは基本、当該アプリがインストールされていなければ動いてくれないので、
facebookアプリは入ってるけどメッセンジャーアプリは入ってない〜という人が多そうな場合はこちらの方がいいかも。
この経路だと、メッセンジャーアプリがインストールされてなければストアに飛ばしてくれる(多分Facebookアプリ自体の実装)。
ただ、URLなどのシェアをする方法がわからなかった。

次に
fb-messenger://
を試した。
こいつは、直接facebookメッセンジャーアプリを開くURLスキーム

メッセンジャーアプリがインストールされてない場合、ストアに飛ばしてくれたりはしないので、そこは自己実装が必要

こいつでリンクをシェアしたい場合
developerサイトに一応やり方が書いてあった
ウェブ - シェア機能 - ドキュメンテーション - 開発者向けFacebook

fb-messenger://share/?link=https://www.facebook.com
↑これで、メッセンジャーでリンクをシェアする画面に飛ぶ(これは例でfacebookへのリンク)

で、どうなったか

後者のやり方でOKだな!と思ったんですが、確認のために何回も同じURLをシェアしていたら、Facebookにスパム扱いされてしまった。

端末によりますが、メッセージ送信しようとした際に、
FBAPIError Domain error 368
であったり
the action attempted has been deemed abusive or is otherwise disallowed
であったりなどのエラーが発生したりする。

んで次の日こういう表示になっていた。
f:id:dormouse666:20190605124825j:plain:w300

上のリンク踏むとこう出る
f:id:dormouse666:20190605124848j:plain:w300

どうも、URLスキームではなく、SDKなどを使っていても、スパム扱いされることもある様子。
URLとか同じ文言のシェアは、Facebookメッセンジャーですることをあまり考えない方が良さそうですね。
完!

参考URL