2016-04-12 20 views
29

Android Studio 2.0(安定版)にアップグレードして以来、インストールしていたAndroid Studio 1.5の以前のバージョンにはなかった問題がありました。私は両方の実際のデバイス上で、私は(デバッグバージョン)を構築し、実行します現在のプロジェクトで作業、およびエミュレータだAndroid Studio 2.0 - App first runでの一時停止/白画面

、私は、Android Studioの1.5でこれをやっていました。

私は私がデバイス、またはエミュレータ上で一時停止を得ることに気づいたビルド(デバッグ)同じプロジェクト/アプリを作成し、それを実行するたびにAndroidのメーカー2.0をアップグレードして以来。私はアプリが開く前に数秒間白い画面が表示されます。これは以前のバージョンのAS 1.5とは異なり、アプリはすぐに開かれ、一時停止も白い画面も表示されませんでした。これは、電話機がADB、またはプラグを抜いてください。アプリが電話機のメモリにまだ残っている場合はすぐに開きますが、電話機を再起動すると一時停止し、アプリを開くと白い画面が表示されます。

彼らの解決策ですか?他の誰かがこれを経験しましたか?私はリリースビルドをまだやっていないので、少し早すぎるかもしれませんが、これは奇妙な問題のように思えます - それが問題ならば!

編集:

私はインスタント実行]を使用していますが、これは、デバイスが接続されているかどうかが起こります。インスタント・ランが差し込まれていないと、インスタント・ランの実行に違いはありますか?

アップデート:Androidのメーカー2.0で「インスタントファイル名を指定して実行」オプションをオフに答え、次のように

は、問題を硬化させます。面白いことに、コメントでは、Instant Run APKのサイズが小さいことを示唆しています。これは何を意味するのでしょうか?インスタント・ランは、ARTではなく古いDalvik/JITコンパイラを使用していますか?これは、Apkのサイズの違いと遅れ(Dalvikはオンザフライでコンパイルする - JIT)を説明することができます。また、ARTは、アプリケーションが実行されるたびにインストール/コンパイルする必要があります。つまり、Apkサイズが大きく、実行が遅くなることを意味します。

確認や暴くこの..

+1

これは実際のデバイスでも起こりますか? –

+0

@VivekMishraはい。両方とも。 –

+0

私もこれを見て、それはインスタント実行から来ていると思う – ligi

答えて

32

Check image for reference設定でインスタント実行]をオフにし するかもしれないことがより多くの経験と知識を持つうまくいけば誰か。 ファイル>設定>ビルド、展開>インスタント実行 そこに表示されているすべてのオプションの選択を解除します。

白い画面の問題が解決されました。アンドロイドスタジオ2.0で

インスタント実行]を使用しないインスタント実行 を使用している間、私のAPKのサイズは、27メガバイトになった16メガバイトでした。 1.5では、サイズは27 MBでした。

インスタント・ランが原因です。

更新 ホワイトスクリーン問題/インスタント実行はデバッグビルドのみです。問題はリリースビルドには影響しません。

+0

ありがとう、私は私のコンピュータに戻ったときにそれらの設定のチェックを外すでしょう - それが動作する場合、私は受け入れられた答えとしてマークします。 –

+0

このサイズのものは私と一緒に起こった。私のファイルサイズはバージョン1.5.1では7.5MBでしたが、現在は3.3MBで、起動時にクラッシュや白い画面が表示されます。 – Ajji

+0

私もこの問題を経験しました。私の場合、ここで述べたように、 'minSdkVersion'を' 21'に設定すると、Instant Runを使って最初の実行時間が大幅に改善されます:http://developer.android.com/intl/es/tools /building/building-studio.html#instant-run – antonio

-5

必要ありません。 [設定]ですべてのオプションの選択を解除しようとすると、 [ファイル]> [設定]> [ビルド、デプロイメント]> [インスタント実行]を選択すると、アプリはデバイス上で大規模なビルドになります。 (あなたのデバイスで、設定 - >アプリケーション - >通常より大きいサイズであなたのアプリを見てください。) この場合、AndroidMenifestであなたのアプリを実行しているときに白いスクリーンを避けるためです。XML、最初のアクティビティで、追加:

"android:theme="@android:style/Theme.Translucent.NoTitleBar"

例えば:

 <activity 
      android:name=".WelcomeScreen" 
      android:label="@string/app_name" 
      android:theme="@android:style/Theme.Translucent.NoTitleBar" > 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <activity android:name=".SplashActivity" /> 

をこの例では、WelcomeScreenは私の最初のスタートの活動です。

よろしくお願いします。

+0

問題は、この特定のインスタンスでインスタント実行を行うことです。上記の解決策はこの問題に関係しません –

関連する問題