2011-06-26 3 views
0

私は最も簡単なHello World exampleアプリを実行しようとしていますが、TextViewを表示していてもクラッシュする可能性があります。Android Hello Worldアプリケーションがクラッシュする:Surface.lockCanvasNativeからのIllegalArgumentException

手順:エミュレータ(1.5)で起動します。アプリを開く - それはテキストビューを表示し、 "終了呼び出し"ボタンを押して電話をロックする。 「メニュー」を押してロックを解除し、「戻る」を押します。アプリケーションが "プロセスandroid.process.acoreが予期せず停止しました..."とクラッシュし、強制終了ボタンを押します。常に起こるわけではありませんが、少なくともユーザーデータを消去した後はいつでも再現できます。デフォルトのHello Worldは非常に励みに見ていない基本的な例でハロー、世界のためにあまりにも先進的な考えられていた詳細...このような問題が欠落している場合

は私が

何ディテール不足している任意のアイデア)=不思議とどのようにこのクラッシュを避けるために?

スタック(私が切り捨てられたタイムスタンプをしました):

37.478: DEBUG/KeyguardViewMediator(576): wakeWhenReadyLocked(82) 
37.481: DEBUG/KeyguardViewMediator(576): handleWakeWhenReady(82) 
37.481: DEBUG/KeyguardViewMediator(576): pokeWakelock(5000) 
39.110: DEBUG/KeyguardViewMediator(576): pokeWakelock(5000) 
39.140: WARN/InputManagerService(576): Window already focused, ignoring focus gain of: [email protected] 
40.990: ERROR/IMemory(679): binder=0x238aa8 transaction failed fd=-2147483647, size=0, err=-2147483646 (Unknown error: 2147483646) 
40.990: ERROR/IMemory(679): cannot dup fd=-2147483647, size=0, err=-2147483646 (Bad file number) 
40.990: ERROR/IMemory(679): cannot map BpMemoryHeap (binder=0x238aa8), size=0, fd=-1 (Bad file number) 
40.990: ERROR/Surface(679): Couldn't map Surface's heap (binder=0x238aa8, heap=0x238b00) 
40.990: DEBUG/AndroidRuntime(679): Shutting down VM 
40.990: WARN/dalvikvm(679): threadid=3: thread exiting with uncaught exception (group=0x4000fe70) 
40.990: ERROR/AndroidRuntime(679): Uncaught handler: thread main exiting due to uncaught exception 
40.990: ERROR/AndroidRuntime(679): java.lang.IllegalArgumentException 
40.990: ERROR/AndroidRuntime(679):  at android.view.Surface.lockCanvasNative(Native Method) 
40.990: ERROR/AndroidRuntime(679):  at android.view.Surface.lockCanvas(Surface.java:196) 
40.990: ERROR/AndroidRuntime(679):  at android.view.ViewRoot.draw(ViewRoot.java:1175) 
40.990: ERROR/AndroidRuntime(679):  at android.view.ViewRoot.performTraversals(ViewRoot.java:1030) 
40.990: ERROR/AndroidRuntime(679):  at android.view.ViewRoot.handleMessage(ViewRoot.java:1482) 
40.990: ERROR/AndroidRuntime(679):  at android.os.Handler.dispatchMessage(Handler.java:99) 
40.990: ERROR/AndroidRuntime(679):  at android.os.Looper.loop(Looper.java:123) 
40.990: ERROR/AndroidRuntime(679):  at android.app.ActivityThread.main(ActivityThread.java:3948) 
40.990: ERROR/AndroidRuntime(679):  at java.lang.reflect.Method.invokeNative(Native Method) 
40.990: ERROR/AndroidRuntime(679):  at java.lang.reflect.Method.invoke(Method.java:521) 
40.990: ERROR/AndroidRuntime(679):  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:782) 
40.990: ERROR/AndroidRuntime(679):  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:540) 
40.990: ERROR/AndroidRuntime(679):  at dalvik.system.NativeStart.main(Native Method) 
41.000: INFO/Process(576): Sending signal. PID: 679 SIG: 3 
41.000: INFO/dalvikvm(679): threadid=7: reacting to signal 3 
41.030: ERROR/ActivityThread(576): Failed to find provider info for android.server.checkin 
41.030: ERROR/Checkin(576): Error reporting crash: java.lang.IllegalArgumentException: Unknown URL content://android.server.checkin/crashes 
41.070: INFO/dalvikvm(679): Wrote stack trace to '/data/anr/traces.txt' 
50.940: WARN/ActivityManager(576): Launch timeout has expired, giving up wake lock! 
50.980: WARN/ActivityManager(576): Activity idle timeout for HistoryRecord{4366ac40 {com.android.launcher/com.android.launcher.Launcher}} 

答えて

0

は、より多くのあなたのエミュレータと間違って何かのように私に聞こえます。エミュレータを削除して新しいエミュレータを作成し、新しいプロジェクトをもう一度やり直してみませんか?

希望はあなたを助けるでしょう。なぜあなたは1.5でエミュレータを使用していますか? min 2.1のアプリケーションを構築します。

幸運。

+0

Hm-m-m ...プロジェクトターゲットが2.1または1.5に設定されている場合、エラーは2.1エミュレータで再現できません。しかし、新しく作成された1.5エミュレータ(ターゲットが1.5の場合)にはまだ(2回に1回程度)表示されています... Android 1.5のいくつかの奇抜なものでなければなりません。ありがとう! – alexandroid