2017-12-02 22 views
0

WebViewを介してモバイルアプリ(React Nativeを使用して構築されているアンドロイドとiosの両方)に表示されるLaravel上に構築されたWebappがあります。FCMデバイストークンをWebviewに送信する適切な方法

私はevollu/react-native-fcmを使用してトークンを生成することができました。

私の質問は:WebViewにこのトークンを送信する適切な方法は何ですか、私のWebアプリケーションはそれをユーザーに関連付けてデータベースに保存することができますか?

最初のアイデアは、WebViewによってGETパラメータとして呼び出されているURLに渡すことでしたが、トークンが非同期に要求され、WebViewが呼び出されたために、常に反対側でパラメータが空になりますまだ来なかった。

どうすればよいですか?

答えて

0

"loading"状態がtrueの場合にwebviewを返さないrenderメソッドのifを使って、トークンが準備できるまでレンダリングを遅らせることができました。トークンを取得する関数では、setStateを使用してロードの値をfalseに変更しました。

0

URLパラメータまたはpostMessageのいずれかです。どちらの方法でも、トークンが利用可能になるまで待つ必要があります。トークンが利用可能になったら、ページをロードするか、Webviewをレンダリングします。または、トークンを受け取った直後にpostMessage経由でトークンを渡します。

postMessageメソッドは、ページを読み込んで同時にトークンを待つことができるので、お勧めの方法です。

+0

トークンが利用可能になるまでレンダリングメソッドを待機させるにはどうすればよいですか? –

関連する問題