Каков наилучший способ отладки кода Android в Eclipse?
Я просто начинаю с Eclipse и хочу узнать, что является причиной ошибки в моих приложениях. Интересно, это как Visual Studio?
Я имею в виду, что у меня есть исключение нулевого указателя, но даже после установки точки останова я запутался, что является причиной ошибки.
Поскольку я новичок, большую часть времени я запускаю плохо или код, который не будет работать. Как я признаю свою ошибку. Иногда мой код не работает, и исключение трудно понять, какая реальная проблема возникает с моим кодом.
Кто-нибудь проверит код и покажет мне, как его найти. Я имею в виду, как узнать, где происходит исключение нулевого указателя.
public class MainActivity extends Activity {
Set tasks = new HashSet();
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 tasks = sp.getStringSet("tasks", new HashSet());
@SuppressWarnings("unchecked")
ArrayList taskarr = (ArrayList) tasks;
final ArrayList list = new ArrayList();
for (int i = 0; i < taskarr.size(); ++i) {
list.add(taskarr.get(i));
}
}
public void LoadTasks() {
}
}
class StableArrayAdapter extends ArrayAdapter {
HashMap mIdMap = new HashMap();
public StableArrayAdapter(Context context, int textViewResourceId,
List 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;
}
}