Tobias Rychener
- Forum-Beiträge: 4
17.04.2012, 17:11:07 via Website
17.04.2012 17:11:07 via Website
Hi Leute,
Ich bin noch relativ neu in der Androidprogrammierung (ca. 7 oder 8 Monate) und bin jetzt an einer Arbeit dran, wo ich einfach nicht weiterweiss. Ich bin schon den ganzen Tag am googeln und hoffe jetzt, dass ihr mir helfen könnt...
Ich habe drei Buttons, von denen aus jeweils eine Activity gestartet wird.
Beim letzten funktioniert das jedoch nicht und ich bekomme folgende Fehlermeldung:
Der Code zur Activity, bei der die App abstürzt (nur das wichtige):
Ich hoffe, ihr findet was, falls ihr das Manifest, ein Layout oder mehr Code braucht, poste ich das gerne.
Gruss
Tobi
Ich bin noch relativ neu in der Androidprogrammierung (ca. 7 oder 8 Monate) und bin jetzt an einer Arbeit dran, wo ich einfach nicht weiterweiss. Ich bin schon den ganzen Tag am googeln und hoffe jetzt, dass ihr mir helfen könnt...
Ich habe drei Buttons, von denen aus jeweils eine Activity gestartet wird.
Beim letzten funktioniert das jedoch nicht und ich bekomme folgende Fehlermeldung:
104-17 14:56:13.094: E/AndroidRuntime(496): FATAL EXCEPTION: main
204-17 14:56:13.094: E/AndroidRuntime(496): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.six.android/com.six.android.AbfrageActivity}: java.lang.NullPointerException
304-17 14:56:13.094: E/AndroidRuntime(496): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
404-17 14:56:13.094: E/AndroidRuntime(496): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
504-17 14:56:13.094: E/AndroidRuntime(496): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
604-17 14:56:13.094: E/AndroidRuntime(496): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
704-17 14:56:13.094: E/AndroidRuntime(496): at android.os.Handler.dispatchMessage(Handler.java:99)
804-17 14:56:13.094: E/AndroidRuntime(496): at android.os.Looper.loop(Looper.java:123)
904-17 14:56:13.094: E/AndroidRuntime(496): at android.app.ActivityThread.main(ActivityThread.java:4627)
1004-17 14:56:13.094: E/AndroidRuntime(496): at java.lang.reflect.Method.invokeNative(Native Method)
1104-17 14:56:13.094: E/AndroidRuntime(496): at java.lang.reflect.Method.invoke(Method.java:521)
1204-17 14:56:13.094: E/AndroidRuntime(496): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
1304-17 14:56:13.094: E/AndroidRuntime(496): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
1404-17 14:56:13.094: E/AndroidRuntime(496): at dalvik.system.NativeStart.main(Native Method)
1504-17 14:56:13.094: E/AndroidRuntime(496): Caused by: java.lang.NullPointerException
1604-17 14:56:13.094: E/AndroidRuntime(496): at android.content.ContextWrapper.getPackageName(ContextWrapper.java:120)
1704-17 14:56:13.094: E/AndroidRuntime(496): at android.content.ComponentName.<init>(ComponentName.java:75)
1804-17 14:56:13.094: E/AndroidRuntime(496): at android.content.Intent.<init>(Intent.java:2678)
1904-17 14:56:13.094: E/AndroidRuntime(496): at com.six.android.NotifikationActivity.zeigeAbfrageNotifikation(NotifikationActivity.java:55)
2004-17 14:56:13.094: E/AndroidRuntime(496): at com.six.android.AbfrageActivity.checkAbfrage(AbfrageActivity.java:288)
2104-17 14:56:13.094: E/AndroidRuntime(496): at com.six.android.AbfrageActivity.checkProtokoll(AbfrageActivity.java:213)
2204-17 14:56:13.094: E/AndroidRuntime(496): at com.six.android.AbfrageActivity.starteAbfrage(AbfrageActivity.java:86)
2304-17 14:56:13.094: E/AndroidRuntime(496): at com.six.android.AbfrageActivity.onCreate(AbfrageActivity.java:67)
2404-17 14:56:13.094: E/AndroidRuntime(496): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
2504-17 14:56:13.094: E/AndroidRuntime(496): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
204-17 14:56:13.094: E/AndroidRuntime(496): java.lang.RuntimeException: Unable to start activity ComponentInfo{com.six.android/com.six.android.AbfrageActivity}: java.lang.NullPointerException
304-17 14:56:13.094: E/AndroidRuntime(496): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2663)
404-17 14:56:13.094: E/AndroidRuntime(496): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2679)
504-17 14:56:13.094: E/AndroidRuntime(496): at android.app.ActivityThread.access$2300(ActivityThread.java:125)
604-17 14:56:13.094: E/AndroidRuntime(496): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2033)
704-17 14:56:13.094: E/AndroidRuntime(496): at android.os.Handler.dispatchMessage(Handler.java:99)
804-17 14:56:13.094: E/AndroidRuntime(496): at android.os.Looper.loop(Looper.java:123)
904-17 14:56:13.094: E/AndroidRuntime(496): at android.app.ActivityThread.main(ActivityThread.java:4627)
1004-17 14:56:13.094: E/AndroidRuntime(496): at java.lang.reflect.Method.invokeNative(Native Method)
1104-17 14:56:13.094: E/AndroidRuntime(496): at java.lang.reflect.Method.invoke(Method.java:521)
1204-17 14:56:13.094: E/AndroidRuntime(496): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
1304-17 14:56:13.094: E/AndroidRuntime(496): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
1404-17 14:56:13.094: E/AndroidRuntime(496): at dalvik.system.NativeStart.main(Native Method)
1504-17 14:56:13.094: E/AndroidRuntime(496): Caused by: java.lang.NullPointerException
1604-17 14:56:13.094: E/AndroidRuntime(496): at android.content.ContextWrapper.getPackageName(ContextWrapper.java:120)
1704-17 14:56:13.094: E/AndroidRuntime(496): at android.content.ComponentName.<init>(ComponentName.java:75)
1804-17 14:56:13.094: E/AndroidRuntime(496): at android.content.Intent.<init>(Intent.java:2678)
1904-17 14:56:13.094: E/AndroidRuntime(496): at com.six.android.NotifikationActivity.zeigeAbfrageNotifikation(NotifikationActivity.java:55)
2004-17 14:56:13.094: E/AndroidRuntime(496): at com.six.android.AbfrageActivity.checkAbfrage(AbfrageActivity.java:288)
2104-17 14:56:13.094: E/AndroidRuntime(496): at com.six.android.AbfrageActivity.checkProtokoll(AbfrageActivity.java:213)
2204-17 14:56:13.094: E/AndroidRuntime(496): at com.six.android.AbfrageActivity.starteAbfrage(AbfrageActivity.java:86)
2304-17 14:56:13.094: E/AndroidRuntime(496): at com.six.android.AbfrageActivity.onCreate(AbfrageActivity.java:67)
2404-17 14:56:13.094: E/AndroidRuntime(496): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
2504-17 14:56:13.094: E/AndroidRuntime(496): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2627)
Der Code zur Activity, bei der die App abstürzt (nur das wichtige):
1public void onCreate(Bundle savedInstanceState)
2 {
3 super.onCreate(savedInstanceState);
4 setContentView(R.layout.abfragen);
5 // Die ImageView im Layout finden, dass die Ampel angezeigt werden kann.
6 final ImageView abfrStatus = (ImageView) findViewById(R.id.abfrStatus);
7
8 // Die mitgegebenen Variabeln aus der vorherigen
9 // Activity lesen.
10 Intent abfr = getIntent();
11
12 // Mitgegebenes Array in ein lokales Array speichern.
13 abfrageZumCheck = abfr.getStringArrayExtra("abfrArray");
14
15 strStatus = checkAbfrage(abfrageZumCheck[0], abfrageZumCheck[1]);
16
17 if (strStatus.equals("erfolg"))
18 {
19 // Ampel auf Grün setzen.
20 abfrStatus.setImageDrawable(getResources().getDrawable(R.drawable.ic_abfrok));
21 }
22 else
23 {
24 // Ampel auf Rot setzen
25 abfrStatus.setImageDrawable(getResources().getDrawable(R.drawable.ic_abfrnok));
26 }
27 }
28
29
30
31/*Code, der vermeintlich nichts mit dem Problem zu tun hat*/
32
33
34protected String checkAbfrage(String strURL, String strOK)
35 {
36 NotifikationActivity notifikation = new NotifikationActivity();
37
38 try
39 {
40 // Versuchen, eine http Verbindung aufzubauen.
41 OpenHttpVerbindung(strURL);
42 }
43 catch (IOException e)
44 {
45 e.printStackTrace();
46
47 // Fehlermeldung auf dem Display ausgeben
48 Toast.makeText(getBaseContext(), "Es konnte keine Verbindung zu der Seite" +
49 " aufgebaut werden. Versuchen Sie es später nochmal" +
50 " oder überprüfen sie die URL", Toast.LENGTH_LONG).show();
51 }
52
53 try
54 {
55 // Versuchen, den Text herunterzuladen
56 strTextVonSeite = DownloadText(strURL);
57 }
58 catch (Exception ex)
59 {
60 ex.printStackTrace();
61 // Fehlermeldung auf dem Display ausgeben
62 Toast.makeText(getBaseContext(), "Der Text konnte nicht heruntergeladen" +
63 " werden.", Toast.LENGTH_SHORT).show();
64 }
65
66
67 if (strTextVonSeite.contains(strOK))
68 {
69 //Toast ausgabe
70
71 return "erfolg";
72
73 }
74 else
75 {
76 //Toast ausgabe
77
78 return "fehler";
79
80 }
81 }
2 {
3 super.onCreate(savedInstanceState);
4 setContentView(R.layout.abfragen);
5 // Die ImageView im Layout finden, dass die Ampel angezeigt werden kann.
6 final ImageView abfrStatus = (ImageView) findViewById(R.id.abfrStatus);
7
8 // Die mitgegebenen Variabeln aus der vorherigen
9 // Activity lesen.
10 Intent abfr = getIntent();
11
12 // Mitgegebenes Array in ein lokales Array speichern.
13 abfrageZumCheck = abfr.getStringArrayExtra("abfrArray");
14
15 strStatus = checkAbfrage(abfrageZumCheck[0], abfrageZumCheck[1]);
16
17 if (strStatus.equals("erfolg"))
18 {
19 // Ampel auf Grün setzen.
20 abfrStatus.setImageDrawable(getResources().getDrawable(R.drawable.ic_abfrok));
21 }
22 else
23 {
24 // Ampel auf Rot setzen
25 abfrStatus.setImageDrawable(getResources().getDrawable(R.drawable.ic_abfrnok));
26 }
27 }
28
29
30
31/*Code, der vermeintlich nichts mit dem Problem zu tun hat*/
32
33
34protected String checkAbfrage(String strURL, String strOK)
35 {
36 NotifikationActivity notifikation = new NotifikationActivity();
37
38 try
39 {
40 // Versuchen, eine http Verbindung aufzubauen.
41 OpenHttpVerbindung(strURL);
42 }
43 catch (IOException e)
44 {
45 e.printStackTrace();
46
47 // Fehlermeldung auf dem Display ausgeben
48 Toast.makeText(getBaseContext(), "Es konnte keine Verbindung zu der Seite" +
49 " aufgebaut werden. Versuchen Sie es später nochmal" +
50 " oder überprüfen sie die URL", Toast.LENGTH_LONG).show();
51 }
52
53 try
54 {
55 // Versuchen, den Text herunterzuladen
56 strTextVonSeite = DownloadText(strURL);
57 }
58 catch (Exception ex)
59 {
60 ex.printStackTrace();
61 // Fehlermeldung auf dem Display ausgeben
62 Toast.makeText(getBaseContext(), "Der Text konnte nicht heruntergeladen" +
63 " werden.", Toast.LENGTH_SHORT).show();
64 }
65
66
67 if (strTextVonSeite.contains(strOK))
68 {
69 //Toast ausgabe
70
71 return "erfolg";
72
73 }
74 else
75 {
76 //Toast ausgabe
77
78 return "fehler";
79
80 }
81 }
Ich hoffe, ihr findet was, falls ihr das Manifest, ein Layout oder mehr Code braucht, poste ich das gerne.
Gruss
Tobi
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.