#java #android #exception
#java #Android #исключение
Вопрос:
У меня есть простое приложение в Android main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<TextView
android:id="@ id/id_txt"
android:text="go"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
/>
</LinearLayout>
и TestActivity.java
package test.android;
import android.app.Activity;
import android.app.AlertDialog;
import android.content.DialogInterface;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
public class TestActivity extends Activity {
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView t = (TextView) findViewById(R.id.id_txt);
t.setText("gone");
}
}
и после выполнения в эмуляторе Android появляется сообщение The application Test has stopped unexpectedly. Please try again later
о получении, но почему??
Комментарии:
1. Вам нужно получить журналы с устройства или эмулятора: «adb logcat» должен сделать свое дело, в журнале будет трассировка стека. Или вы можете использовать представление «Показать вид -> Другое -> Android -> LogCat» в Eclipse с подключенным устройством.
2. LogCat показывает
09-28 19:44:59.724: ERROR/dalvikvm(1727): Unable to open stack trace file '/data/anr/traces.txt': Permission denied
, как изменить разрешения?3. вы не забыли объявить свою активность в манифесте?
4. Если вы говорите о
AndroidManifest.xml
файле, я ничего не сделал. Просьба написать, что должно быть сделано5. Пожалуйста, включите больше файла журнала и копию вашего AndroidManifest.xml досье.
Ответ №1:
Вы неправильно переопределяете onCreate(...)
метод. Это должно быть следующим…
// NOTE: Use @Override and also the method is 'protected' and not 'public'
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView t = (TextView) findViewById(R.id.id_txt);
t.setText("gone");
}
Комментарии:
1. Его структура по умолчанию, которая была создана, является eclipse
2. Ну, eclipse сделал это неправильно… developer.android.com/reference/android/app /…