Was ist der beste Weg, um den Android-Code in Eclipse zu debuggen?
Ich beginne gerade mit Eclipse und möchte wissen, was Fehler in meinen Apps verursacht. Ich frage mich, ob das ein Weg wie Visual Studio ist.
Ich meine, ich habe eine Nullzeiger-Ausnahme, aber selbst nach dem Setzen von Breakpoint bin ich verwirrt, welche Ursache ein Fehler ist.
Weil ich die meiste Zeit neu bin, starte ich schlecht oder Code, der nicht funktionieren wird. Wie ich meinen Fehler erkenne. Manchmal funktioniert mein Code nicht und Ausnahmen sind schwer herauszufinden, was wirklich mit meinem Code passiert.
Überprüfen Sie den Code und leiten Sie mich, wie ich ihn finde. Ich meine, wie man weiß, wo die Nullzeiger-Ausnahme auftritt.
public class MainActivity extends Activity {
Set<String> tasks = new HashSet<String>();
final String prefName = "andorid";
SharedPreferences sp = getSharedPreferences(prefName, MODE_PRIVATE);
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
SetupApp();
}
// / Add the task in this function
private void SetupApp() {
tasks.add("blah");
if (!sp.contains("tasks")) {
Editor edit = sp.edit();
edit.putStringSet("tasks", tasks);
edit.commit();
}
}
public void btnClick(View view) {
EditText etxt = (EditText) findViewById(R.id.txtTask);
tasks.add(etxt.getText().toString());
}
public void UpdateUI(String TaskName) {
final ListView listview = (ListView) findViewById(R.id.listView1);
Set<String> tasks = sp.getStringSet("tasks", new HashSet<String>());
@SuppressWarnings("unchecked")
ArrayList<String> taskarr = (ArrayList<String>) tasks;
final ArrayList<String> list = new ArrayList<String>();
for (int i = 0; i < taskarr.size(); ++i) {
list.add(taskarr.get(i));
}
}
public void LoadTasks() {
}
}
class StableArrayAdapter extends ArrayAdapter<String> {
HashMap<String, Integer> mIdMap = new HashMap<String, Integer>();
public StableArrayAdapter(Context context, int textViewResourceId,
List<String> objects) {
super(context, textViewResourceId, objects);
for (int i = 0; i < objects.size(); ++i) {
mIdMap.put(objects.get(i), i);
}
}
@Override
public long getItemId(int position) {
String item = getItem(position);
return mIdMap.get(item);
}
@Override
public boolean hasStableIds() {
return true;
}
}