Webサービスにクエリを行うPHPスクリプトがあります。このクエリの結果をFirebaseリアルタイムデータベースの行に挿入します。このfirebaseデータベースは、Androidアプリによる変更を監視しています。Firebaseのデータを圧縮する
1行あたりのテキストの量は、しばしば800KBになることがありますので、私はこれを圧縮したいと思います。さもなければ、私のアプリはOnDataChangedイベントが起こる前に800Kbをダウンロードする必要があります。
(PHPスクリプトで)次のように私がやっていること
は、私は800KBの文字列は、Webサービスを構成受け入れるです。 それから、PHPスクリプトでGzipを実行します。 その結果、私はBase64_Encodeを使用し、これをFirebaseに挿入します。
正常に動作しているようですが、90%の圧縮率を得ているようです。つまり、800Kbではなく80Kbしか挿入されません。しかし、これを行うには、 "ラウンドハウス"の方法です。
これを行うより良い方法はありますか?確かにそこにあるはずです。 FirebaseがGZipを取得する方法はありますか?文字列は私のアプリに送信していますか?その後、すべてのアプリケーションがFirebase SDKを使用しています。ここで
は$compressed_gzipjson = gzencode($jsonresponse, 9);
$firebase->set(DEFAULT_PATH . '/' , base64_encode($compressed_gzipjson));
何かアドバイスは非常に確かに歓迎... Firebaseへの書き込みをPHPコードです。
わずかな補正で、780KBは110Kbに圧縮されますが、それでもかなり良いです。 – JohnMoll
コメントに修正を加える代わりに、あなたの質問の下にある[edit](http://stackoverflow.com/posts/37534908/edit)リンクをクリックすれば修正できます。 –