4

私のAndroid Appは「ログイン」と「ダッシュボード」の2つの画面で構成されています。 ログインは正常に機能しますが、ダッシュボードはトラブルメーカーです。React-Native:画面がクリックされない限りデバッグ時にアプリが停止する

最初の問題:私は、デバッグメニューを開くことができますし、すべてが期待どおりに動作するログイン画面で

。ダッシュボード画面に切り替えると、もうメニューを開くことができなくなります。ログイン画面でインスペクタを有効にしてからダッシュボード画面に移動すると、インスペクタは消えます。

第2の課題

私は付属のデバッガなしでアプリケーションを実行すると、私はダッシュボードにデータを取得しませんが、ログインがいつものように動作します。

私がデバッガをアタッチすると、アプリケーションは「スタック」してしまいます。 Appをソートしているときに画面をクリックすると(デバッガがついている)、一歩前進 - 画面を頻繁にクリックすると、私が期待していたすべてのデータで終わります! ブレークポイントが設定されていないため、デバッガをまったく使用する必要はありません。

iOSの対応版はまったく問題なく動作しているようです。

ここで間違っていますか?

更新:

イムだけを明確にするように反応する、ネイティブ0.31.0

を使用して:私の問題は、それ自体ではデバッガではありません。私の問題は、デバッガなしではデータを取得しないで、デバッガが接続されているときにすべてのデータを取得するという事実です(のみの)。

+0

あなたはRNバージョンをお使いですか? > 0.29あなたは同じツールを提供する反応ネイティブlog-androidを実行しようとすることもできます – dv3

+0

:いくつかのコードを表示できますか?あなたのソリューションを推測するのは難しい – dv3

+0

プロジェクトはかなり大きいので、コードのどの部分を表示できるか分かりません(すべて貼り付けることはできません)。 –

答えて

0

私は、この問題の核心が何であるかを考え出したと思います。

React-Native Appをデバッグするとき、コードはChromeによって「実行され」、より多くのjavascriptをサポートします。 (私はそれは難しい。このため、適切な言葉を見つけるために見つける...)

React-Native documentationから:

のiOSシミュレータやデバイスでは、Androidのエミュレータやデバイスが ネイティブのJavaScriptエンジンであるJavaScriptCoreにおけるを使用して反応させ、その力は Safariです。 iOSの場合JSCは書き込み可能でないためにJITを使用しません。

iOSアプリケーションの実行可能なメモリ。 Chromeデバッグを使用すると、 Chrome内のすべてのJavaScriptコードが実行され、WebSocket経由でネイティブコードと通信します。だから はそれがfor ofループまたはarray.some構文を使用し、一部の機能だった私の場合はV8

を使用しています。

私はよく分からないが、現時点では現在サポートされているので、あなた(この問題を遭遇する人)はあなたの反応ネイティブバージョンを更新したいかもしれない。

this ECMAScript Compatibility table

関連する問題