0

Windows から Android に Java アプリケーションを移植しています。アプリは、ディスクから大きな配列を読み込むことから始めます。(100 万要素のクラス配列に 4 メガバイトのデータ)

Eclipse の Windows で実行またはデバッグすると、読み込みに 8 秒かかります。

デバッグせずに Android で Eclipse から実行すると、50 秒かかります。

Android で Eclipse からデバッグすると、読み込みに 8 分かかります。Androidエミュレーターでは、40分後にあきらめました。

私の質問は、デバッガーにコードのこの部分をデバッグしないように指示する方法はありますか?

または、アプリが初期化を過ぎるまでデバッグを高速化できるEclipseでオフ/オンにできるものはありますか?

4

2 に答える 2

2

これを行う最も簡単な方法は、おそらくEclipseのDDMSパースペクティブを使用することです。

通常どおりにデバイスでアプリを実行します(現在、起動に約50秒かかる方法)。

アプリがDDMSパースペクティブへの切り替えを開始したら(通常、日食の右上で、追加ボタンをクリックしてポップアップウィンドウでDDMを見つけるだけで、パースペクティブを使用したことがない場合は、パースペクティブを追加/開く必要があります) 。

DDMSパースペクティブに入ると、デバイスとその上で実行されているすべてのプロセスが、このパースペクティブの[デバイス]タブ(デフォルトでは左側)に表示されます。初期ロードが完了したら、リストからアプリプロセスを選択し、緑色のデバッグアイコンをクリックしてデバッガーを有効にします。

同じ実行で後でデバッグを停止する場合は、[デバッグ]パースペクティブに切り替えて、プロジェクトを右クリックし([デバッグ]タブで、[プロジェクト名[Androidアプリケーション]]のような名前にする必要があります)、をクリックします。切断します。

残念ながら、プログラムでデバッグを無効にする方法はないと思いますが、追加されているのを確認するとよいでしょう(まだ追加されていない場合)。

余談ですが、AndroidでのデバッグについてGoogle I / O 2009で講演があり、メソッドトレース(忍者マスターのデバッグアーツ)に関するセクションがあります。これは、探している場合に初期読み込みを高速化する方法を見つけるのに役立ちます。そうするために。

于 2013-01-23T21:28:39.293 に答える
0

エミュレーターにはどのようなイメージを使用しましたか? ARM システム イメージは特に遅いですが、Intel x8 Atom システム イメージははるかに高速です。4倍速のようなものです。

Intel システム イメージの問題は、すべてのバージョンで利用できるわけではないことです。

2 つ目の可能性は、開発とデバッグの目的でデータのサイズを削減することです。アプリケーションの開発とデバッグのために完全な補完データが必要になることは非常にまれです。

于 2013-01-23T21:25:24.743 に答える