Ich versuche, meinen Code in einer Asynch-Aufgabe nur meine App stürzt ab, kann jemand bitte herausfinden, was diesen Fehler verursacht (ich denke nullpointerexeption). um ehrlich zu sein, habe ich einfach einen Code von einer anderen Frage kopiert und alles darin eingefügt.machen einen ProgressDialog mit Asynch Aufgabe
package net.thinkbin;
import java.util.ArrayList;
import java.util.HashMap;
import org.json.JSONArray;
import org.json.JSONException;
import org.json.JSONObject;
import android.app.ListActivity;
import android.app.ProgressDialog;
import android.content.DialogInterface;
import android.content.Intent;
import android.os.AsyncTask;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.AdapterView;
import android.widget.AdapterView.OnItemClickListener;
import android.widget.Button;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.SimpleAdapter;
import android.widget.TextView;
public class entertainment extends ListActivity {
private static final String TITLE = "Title";
private static final String AUTHOR = "Author";
private static final String VIEWS = "Views";
private static final String RATES = "Rates";
private static final String CONTENT = "Content";
JSONArray ideas = null;
@Override
protected void onCreate(Bundle savedInstanceState) {
// TODO Auto-generated method stub
super.onCreate(savedInstanceState);
setContentView(R.layout.listplaceholder3);
new DoInBackgrd().execute();
Button view = (Button) findViewById(R.id.button1);
view.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
startActivity(new Intent("net.thinkbin.TUTORIAL1"));
overridePendingTransition(0, 0);
finish();
}
});
Button share = (Button) findViewById(R.id.button2);
share.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
startActivity(new Intent("net.thinkbin.SHARE"));
overridePendingTransition(0, 0);
finish();
}
});
Button menu = (Button) findViewById(R.id.buttonhome);
menu.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
startActivity(new Intent("net.thinkbin.MENU"));
overridePendingTransition(0, 0);
finish();
}
});
}
private class DoInBackgrd extends AsyncTask<Void, Void, Void> implements
DialogInterface.OnCancelListener {
private ProgressDialog processDialog;
@Override
protected void onPreExecute() {
ProgressDialog.show(entertainment.this, "", "Loading...");
processDialog.setCancelable(true);
}
public void onCancel(DialogInterface arg0) {
// TODO Auto-generated method stub
if (processDialog.isShowing()) {
processDialog.dismiss();
}
}
@Override
protected Void doInBackground(Void... arg0) {
// TODO Auto-generated method stub
ArrayList<HashMap<String, String>> mylist = new ArrayList<HashMap<String, String>>();
JSONObject json = JSONfunctions.getJSONfromURL("http://www.thinkbin.net/include/api/index.php?cat=Entertainment&type=Views&i=10");
try{
ideas = json.getJSONArray("Ideas");
// looping through All Contacts
for(int i = 0; i < ideas.length(); i++){
JSONObject c = ideas.getJSONObject(i);
// Storing each json item in variable
String title = c.getString(TITLE);
String author = c.getString(AUTHOR);
String views = c.getString(VIEWS);
String rates = c.getString(RATES);
String content = c.getString(CONTENT);
// creating new HashMap
HashMap<String, String> map = new HashMap<String, String>();
// adding each child node to HashMap key => value
map.put(TITLE, "Title: " + title);
map.put(AUTHOR, "Author: " + author);
map.put(VIEWS, "Views: " + views);
map.put(RATES, "Rates: " + rates);
map.put(CONTENT, content);
// adding HashList to ArrayList
mylist.add(map);
}
}catch(JSONException e) {
Log.e("log_tag", "Error parsing data "+e.toString());
}
ListAdapter adapter = new SimpleAdapter(entertainment.this, mylist , R.layout.main2,
new String[] { TITLE, AUTHOR, VIEWS, RATES, CONTENT },
new int[] { R.id.item_title, R.id.item_subtitle, R.id.item3, R.id.item4, R.id.item5 });
setListAdapter(adapter);
//selecting single ListView item
ListView lv = getListView();
//Launching new screen on Selecting Single ListItem
lv.setOnItemClickListener(new OnItemClickListener() {
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
// getting values from selected ListItem
String Title2 = ((TextView) view.findViewById(R.id.item_title)).getText().toString();
String Author2 = ((TextView) view.findViewById(R.id.item_subtitle)).getText().toString();
String Content2 = ((TextView) view.findViewById(R.id.item5)).getText().toString();
Intent in = new Intent(getApplicationContext(), idea.class);
overridePendingTransition(0, 0);
in.putExtra(TITLE, Title2);
in.putExtra(AUTHOR, Author2);
in.putExtra(CONTENT, Content2);
startActivity(in);
}
});
return null;
}
@Override
protected void onPostExecute(Void unused) {
if (processDialog.isShowing()) {
processDialog.dismiss();
}
}
}
}
logcat:
04-03 15:56:43.988: D/dalvikvm(324): GC_EXTERNAL_ALLOC freed 48K, 53% free 2552K/5379K, external 1625K/2137K, paused 189ms
04-03 15:56:48.768: D/dalvikvm(324): GC_EXTERNAL_ALLOC freed 7K, 53% free 2570K/5379K, external 3086K/3528K, paused 33ms
04-03 15:56:48.878: D/dalvikvm(324): GC_EXTERNAL_ALLOC freed 1K, 53% free 2571K/5379K, external 4286K/5352K, paused 39ms
04-03 15:59:07.597: D/dalvikvm(324): GC_CONCURRENT freed 958K, 53% free 3162K/6727K, external 5965K/6851K, paused 3ms+4ms
04-03 16:51:19.427: D/dalvikvm(362): GC_EXTERNAL_ALLOC freed 49K, 53% free 2552K/5379K, external 1625K/2137K, paused 48ms
04-03 16:51:24.338: D/dalvikvm(362): GC_EXTERNAL_ALLOC freed 7K, 53% free 2571K/5379K, external 3086K/3528K, paused 40ms
04-03 16:51:24.448: D/dalvikvm(362): GC_EXTERNAL_ALLOC freed 1K, 53% free 2572K/5379K, external 4286K/5352K, paused 41ms
04-03 16:51:28.468: D/AndroidRuntime(362): Shutting down VM
04-03 16:51:28.468: W/dalvikvm(362): threadid=1: thread exiting with uncaught exception (group=0x40015560)
04-03 16:51:28.478: E/AndroidRuntime(362): FATAL EXCEPTION: main
04-03 16:51:28.478: E/AndroidRuntime(362): java.lang.RuntimeException: Unable to start activity ComponentInfo{net.thinkbin/net.thinkbin.entertainment}: java.lang.NullPointerException
04-03 16:51:28.478: E/AndroidRuntime(362): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1647)
04-03 16:51:28.478: E/AndroidRuntime(362): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
04-03 16:51:28.478: E/AndroidRuntime(362): at android.app.ActivityThread.access$1500(ActivityThread.java:117)
04-03 16:51:28.478: E/AndroidRuntime(362): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
04-03 16:51:28.478: E/AndroidRuntime(362): at android.os.Handler.dispatchMessage(Handler.java:99)
04-03 16:51:28.478: E/AndroidRuntime(362): at android.os.Looper.loop(Looper.java:123)
04-03 16:51:28.478: E/AndroidRuntime(362): at android.app.ActivityThread.main(ActivityThread.java:3683)
04-03 16:51:28.478: E/AndroidRuntime(362): at java.lang.reflect.Method.invokeNative(Native Method)
04-03 16:51:28.478: E/AndroidRuntime(362): at java.lang.reflect.Method.invoke(Method.java:507)
04-03 16:51:28.478: E/AndroidRuntime(362): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
04-03 16:51:28.478: E/AndroidRuntime(362): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
04-03 16:51:28.478: E/AndroidRuntime(362): at dalvik.system.NativeStart.main(Native Method)
04-03 16:51:28.478: E/AndroidRuntime(362): Caused by: java.lang.NullPointerException
04-03 16:51:28.478: E/AndroidRuntime(362): at net.thinkbin.entertainment$DoInBackgrd.onPreExecute(entertainment.java:92)
04-03 16:51:28.478: E/AndroidRuntime(362): at android.os.AsyncTask.execute(AsyncTask.java:391)
04-03 16:51:28.478: E/AndroidRuntime(362): at net.thinkbin.entertainment.onCreate(entertainment.java:43)
04-03 16:51:28.478: E/AndroidRuntime(362): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
04-03 16:51:28.478: E/AndroidRuntime(362): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611)
04-03 16:51:28.478: E/AndroidRuntime(362): ... 11 more
04-03 16:52:48.988: D/dalvikvm(397): GC_EXTERNAL_ALLOC freed 50K, 53% free 2552K/5379K, external 1625K/2137K, paused 134ms
04-03 16:52:53.798: D/dalvikvm(397): GC_EXTERNAL_ALLOC freed 7K, 53% free 2571K/5379K, external 3086K/3528K, paused 35ms
04-03 16:52:53.909: D/dalvikvm(397): GC_EXTERNAL_ALLOC freed 1K, 53% free 2572K/5379K, external 4286K/5352K, paused 42ms
04-03 16:52:57.827: D/AndroidRuntime(397): Shutting down VM
04-03 16:52:57.827: W/dalvikvm(397): threadid=1: thread exiting with uncaught exception (group=0x40015560)
04-03 16:52:57.837: E/AndroidRuntime(397): FATAL EXCEPTION: main
04-03 16:52:57.837: E/AndroidRuntime(397): java.lang.RuntimeException: Unable to start activity ComponentInfo{net.thinkbin/net.thinkbin.entertainment}: java.lang.NullPointerException
04-03 16:52:57.837: E/AndroidRuntime(397): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1647)
04-03 16:52:57.837: E/AndroidRuntime(397): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:1663)
04-03 16:52:57.837: E/AndroidRuntime(397): at android.app.ActivityThread.access$1500(ActivityThread.java:117)
04-03 16:52:57.837: E/AndroidRuntime(397): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:931)
04-03 16:52:57.837: E/AndroidRuntime(397): at android.os.Handler.dispatchMessage(Handler.java:99)
04-03 16:52:57.837: E/AndroidRuntime(397): at android.os.Looper.loop(Looper.java:123)
04-03 16:52:57.837: E/AndroidRuntime(397): at android.app.ActivityThread.main(ActivityThread.java:3683)
04-03 16:52:57.837: E/AndroidRuntime(397): at java.lang.reflect.Method.invokeNative(Native Method)
04-03 16:52:57.837: E/AndroidRuntime(397): at java.lang.reflect.Method.invoke(Method.java:507)
04-03 16:52:57.837: E/AndroidRuntime(397): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)
04-03 16:52:57.837: E/AndroidRuntime(397): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)
04-03 16:52:57.837: E/AndroidRuntime(397): at dalvik.system.NativeStart.main(Native Method)
04-03 16:52:57.837: E/AndroidRuntime(397): Caused by: java.lang.NullPointerException
04-03 16:52:57.837: E/AndroidRuntime(397): at net.thinkbin.entertainment$DoInBackgrd.onPreExecute(entertainment.java:92)
04-03 16:52:57.837: E/AndroidRuntime(397): at android.os.AsyncTask.execute(AsyncTask.java:391)
04-03 16:52:57.837: E/AndroidRuntime(397): at net.thinkbin.entertainment.onCreate(entertainment.java:43)
04-03 16:52:57.837: E/AndroidRuntime(397): at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1047)
04-03 16:52:57.837: E/AndroidRuntime(397): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:1611)
04-03 16:52:57.837: E/AndroidRuntime(397): ... 11 more
04-03 16:52:59.357: I/Process(397): Sending signal. PID: 397 SIG: 9
04-03 17:08:38.488: D/dalvikvm(434): GC_EXTERNAL_ALLOC freed 51K, 53% free 2552K/5379K, external 1625K/2137K, paused 78ms
04-03 17:08:43.277: D/dalvikvm(434): GC_EXTERNAL_ALLOC freed 7K, 53% free 2571K/5379K, external 3086K/3528K, paused 34ms
04-03 17:08:43.397: D/dalvikvm(434): GC_EXTERNAL_ALLOC freed 1K, 53% free 2572K/5379K, external 4286K/5352K, paused 41ms
04-03 17:08:48.317: D/dalvikvm(434): GC_CONCURRENT freed 959K, 53% free 3163K/6727K, external 5965K/6851K, paused 4ms+4ms
04-03 17:09:00.288: D/dalvikvm(434): GC_CONCURRENT freed 1260K, 50% free 3974K/7879K, external 4533K/5704K, paused 4ms+7ms
wenn Fehler kommen immer Post voll logcat hier .. –
'Unterhaltung.Java siehe Zeile Nr.92', welche ist? –
processDialog.setCancelable (wahr); –