German Probleme mit Spinner unter Android 4.0.3 mit Galaxy S2

Motorrad

Member
Licensed User
Longtime User
Hallo,

seit dem ich das Update von Android 4.0.3 installiert habe tritt folgendes Problem bei meinen sämtlichen unter Basic 4 geschriebenen Programmen auf:

Nachdem bei der Auswahl eines Spinner-Eintrages eine Message-Box erscheint "friert" der Bildschirm (Spinner) ein. Anschließend wird der Bildschirm ca. 10 sec. schwarz und es erscheint die Meldung "<Programmname> angehalten".
Ein Zwanghaftes beenden unter Einstellungen/Anwendungen schafft keine Abhilfe.
Eine Rekursion liegt nicht vor.
Daraufhin habe ich ein simples Testprogramm geschrieben, worin lediglich nur ein Spinner initialisiert wird und durch Anklicken eines Eintrages eine Message-Box erscheint. - Das gleiche Problem.

Das Merkwürdige:
Hin und wieder funktioniert es. Jedoch beim mehrmaligen Aufrufen der Message-Box stürzt das Programm wieder ab. Andere Programme haben danach die gleichen "Symtome"

Ein Neustart des Handys bringt ebenfalls keinen Erfolg.
Unter Android 2.3.3 und 2.3.7 laufen die Programme einwandfrei!

Eine Analyse mit alogcat hat folgendes ergeben:

... channel '41a09310 flugbuch.java/flugbuch.java.main (server)' ~ Channel is unrecoverably broken and will be disposed!
E/InputDispatcher( 2073): channel '41a31d18 flugbuch.java/flugbuch.java.flugeingabe (server)' ~ Channel is unrecoverably broken and will be disposed!
E/InputDispatcher( 2073): channel '41c8f7a0 flugbuch.java/flugbuch.java.flugeingabe (server)' ~ Channel is unrecoverably broken and will be disposed!
E/AlarmManagerService( 2073): android_server_AlarmManagerService_set to type=1, 1335908137.603000000
E/DataRouter( 1829) ...


Kann mir jemand helfen ???

Gruß
 

klaus

Expert
Licensed User
Longtime User
Ich hatte nicht vorher geantwortet weil Ich nicht weiss woher das Problem kommt, und Ich habe kein Android 4 Gerät.
Ich schlage Dir folgendes vor:
- poste Dein Testprogramm.
- poste den kompletten Log Message Inhalt.

Erel wird dann bestimmt nachschauen.

Beste Grüsse.
 

Motorrad

Member
Licensed User
Longtime User
Hallo Klaus,

das Testprogramm liegt als Zipdatei bei. Hier ist noch das Logfile: https://pastee.org/xawng

Ich glaube, dass der "Ursprungsfehler" in meinem "Hauptprogramm" (Flugbuch) liegt.
Kann es sein, dass hier ein Fehler produziert wird, der dann Auswirkungen auf andere Programme haben könnte (Belegung von Speicher o.ä) ?

Ich möchte, verständlicher Weise, das Programm "Flugbuch" an dieser Stelle nicht veröffentlichen. Wenn es aber zur Lösung des Problems führen könnte, dann schicke ich es dir auf andere Art und Weise.

Ich vermute mal, dass folgende Stelle aussagekräftig ist:

B4X:
E/AndroidRuntime( 4634): FATAL EXCEPTION: main
E/AndroidRuntime( 4634): java.lang.NullPointerException
E/AndroidRuntime( 4634):    at android.widget.Spinner$DialogPopup.dismiss(Spinner.java:672)
E/AndroidRuntime( 4634):    at android.widget.Spinner$DialogPopup.onClick(Spinner.java:703)
E/AndroidRuntime( 4634):    at com.android.internal.app.AlertController$AlertParams$3.onItemClick(AlertController.java:929)
E/AndroidRuntime( 4634):    at android.widget.AdapterView.performItemClick(AdapterView.java:292)
E/AndroidRuntime( 4634):    at android.widget.AbsListView.performItemClick(AbsListView.java:1177)
E/AndroidRuntime( 4634):    at android.widget.AbsListView$PerformClick.run(AbsListView.java:2705)
E/AndroidRuntime( 4634):    at android.widget.AbsListView$1.run(AbsListView.java:3458)
E/AndroidRuntime( 4634):    at android.os.Handler.handleCallback(Handler.java:605)
E/AndroidRuntime( 4634):    at android.os.Handler.dispatchMessage(Handler.java:92)
E/AndroidRuntime( 4634):    at android.os.Looper.loop(Looper.java:137)
E/AndroidRuntime( 4634):    at android.app.ActivityThread.main(ActivityThread.java:4507)
E/AndroidRuntime( 4634):    at java.lang.reflect.Method.invokeNative(Native Method)
E/AndroidRuntime( 4634):    at java.lang.reflect.Method.invoke(Method.java:511)
E/AndroidRuntime( 4634):    at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:790)
E/AndroidRuntime( 4634):    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:557)
E/AndroidRuntime( 4634):    at dalvik.system.NativeStart.main(Native Method)

Hoffnungsvolle Grüße
 

Attachments

  • Test.zip
    6.2 KB · Views: 246

klaus

Expert
Licensed User
Longtime User
Ich befürchte dass die MessageBox das Probleme macht.
Auf meinem Gerät funktioniert es, habe aber Android 2.2
Versuche einmal die MessageBox durch ein Panel zu ersetzen wie im beiliegenden Programm.

Beste Grüsse.


@Erel,
In the test program of Motorrad in post #3 with a Spinner when selecting Text4 a MessageBox should be displayed.
With Android 4.0.3 the program shows a black sceen during about 10 sec. and then stops unexpectedly.
It works with Android below 4.
Could you please have a look at it, I can't try it don't have an Android 4 device.
The Log file is in the link in post#3.

Best regards.
 

Attachments

  • Test1.zip
    6.7 KB · Views: 248

Motorrad

Member
Licensed User
Longtime User
Probleme mit Spinner unter Android 4.0.3

Hallo Klaus,
danke für Deine Idee.

Ich habe nach der Compilierung keine Fehler mehr festgestellt. Allerdings taucht exakt der selbe Fehler beim debuggen auf (siehe Screenshot).
Wie auch bei allen anderen Programmen läuft das Programm die Procedure bis zum Ende durch (bis End Sub) und dann kommt der Absturz.

Das Umschreiben all meiner Programme ist zu Aufwendig.

Ich glaube, dass der Fehler nur in der Weiterverarbeitung weiterer Programmteile während des geöffneten Spinnerfensters liegt.
Dieses muss! nach Anklicken eines Eintrages sofort wieder geschlossen werden.
Dann sollte es funktionieren.
Kann man das programmiertechnisch lösen ?

Des weiteren habe ich eine Frage zu meiner Programmzeile :
"IME1.ShowKeyboard(EditText1)"

Warum öffnet sich das Keyboard erst nach dem 2. Anklicken des Spinners ?
Ich möchte das Keyboard sofort, also nach dem 1. Klick, angezeigt bekommen

B4X:
Sub Spinner1_ItemClick (Position As Int, Value As Object)
   If Spinner1.SelectedItem = "Test4" Then
      Label1.Text = "OK"
      Panel1.Visible = True
      
      IME1.ShowKeyboard(EditText1)
      
   End If
End Sub

Viele Grüße
 

Attachments

  • test2.zip
    6.8 KB · Views: 263
  • Screenshot.jpg
    Screenshot.jpg
    60.2 KB · Views: 288

peternmb

Well-Known Member
Licensed User
Longtime User
konntest du das Problem lösen?

Ich habe das gleiche Problem auch mit dem S2.

Bei anderen Geräten (ebenfalls mit 4.0.3) funktioniert der Spinner, bei dem Galaxy nicht - zumindest nicht in einem CustomDialog.

Bei anderen Spinnern in panels gibt es keine Probleme.

Ich möchte eigentlich ungern diesen ganzen Progammteil umschreiben.
 

jsk001

Member
Licensed User
Longtime User
konntest du das Problem lösen?

Ich habe das gleiche Problem auch mit dem S2.

Bei anderen Geräten (ebenfalls mit 4.0.3) funktioniert der Spinner, bei dem Galaxy nicht - zumindest nicht in einem CustomDialog.

Bei anderen Spinnern in panels gibt es keine Probleme.

Ich möchte eigentlich ungern diesen ganzen Progammteil umschreiben.

Hallo,

ich habe das Spinnerproblem auf einem Topicon (China) mit 5" mit Android 4.04
Hier ein Beispiel:

Spinner1.Initialize("")
Spinner1.Add("GPEVENT")

Der Spinner wird zwar angezeigt, aber keine Einträge werden angezeigt.
Für Hilfe währe ich sehr dankbar.
Desweiteren wird der Package Name nicht übernommen.
Alle Installationen werden als "B4A Example" angelegt. Bei Mehrfachinstallation immer habe ich so z.B 5 Apps mit dem gleichen Namen.

JSK001
 
Top