web-dev-qa-db-ja.com

ReactネイティブAndroid遷移は本当に遅い

私のReactNative遷移(ナビゲーターを使用)は非常に遅く、アニメーションが最初に開始されたときにjavascriptスレッドフレームを0に1〜2秒間ドロップし、次に最大20までピックアップし、途中で一時停止し、通常は比較的スムーズに終了します。クリーンなGalaxyNote 4でテストしているので、エミュレーターの問題ではありません。

アニメーションが完了した後、InteractionManager.runAfterInteractionsを使用して空のビューをレンダリングし、次に5要素のリストビューをレンダリングしています。本番用にアプリをコンパイルし、開発モードをオフにしました。

これは予想される/現在の状態(うまくいけば改善される)ですか、それとも私はおそらく何か間違ったことをしていますか?もしそうなら、それを追い詰める最良の方法は何ですか?実行中のロジックはほとんどありません。

簡単な解決策がない場合、ナビゲーター遷移でアニメーションを無効にする方法はありますか?

16
Eason Goodale

chromeデバッガーをオフにすると、アニメーションが非常に遅くなります。

36
Idan Gozlan

iOSシミュレーターでは、command + Tによってアニメーションの速度が低下します。 Androidおそらく似たようなものがあります

15
Chris Geirman

公式ドキュメントには パフォーマンスに関するページ があります。確認することをお勧めします。特に ナビゲーターの遷移が遅い について説明しているセクションがあります。

また、React Native v0.14.0 with Chromeデバッガーが有効になっていると、非常に遅いことに気付きました。最初に無効にしてみてください。

ナビゲーターの遷移は NavigatorSceneConfigs module にありますが、アニメーションのない遷移はないようです。

4
mrcasals