Принудительное закрытие при попытке использовать конструктор по умолчанию

1

Если я пытаюсь определить конструктор по умолчанию для класса, который расширяет действие, я набираю силу при выполнении приложения. Почему это так?

public class App extends Activity {


    App() {
              // FORCE CLOSE
    }
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
}}
Теги:

1 ответ

3
Лучший ответ

Вы создаете конструктор доступа к пакету, который не разрешен платформой Android,

Вы можете создать публичный конструктор, т.е. public App(){}, но это действительно неприемлемый способ инициализировать класс активности в Android, по меньшей мере.

Инициализировать все требования в onCreate(), которые рекомендуются разумным подходом.

также убедитесь, что вы определяете каждое действие в вашем файле AndroidManifest.xml.

с тегом <activity> и атрибутом android:name.

<activity android:name=".SampleAppication"
              android:label="@string/app_name">

            <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>

Вы можете найти более подробную информацию о жизненном цикле Acitvity здесь

  • 0
    Спасибо, я понимаю.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню