activity调用onCreate()方法后没有调用onStart()方法

在进行Android Activity测试时,发现在onCreate()方法内无论是调用finish()还是System.exit(0),都不会触发onStart()方法的执行,而是直接进入了onDestroy()阶段。这一现象揭示了Activity生命周期中不寻常的行为。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先写了个空白的activity来进行测试:

package com.example.mytestdemo;

import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;

public class TestOnCreateActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_test_on_create);
        Log.i("123", "onCreate------------------");
//        String s = null;
//        if (s.equals("")) {
//
//        }
//        return;
//        onPause();
//        super.onPause();
//        onStop();
//        super.onStop();
//        onDestroy();
//        super.onDestroy();
//        finish();
        System.exit(0);
    }

    @Override
    protected void onStart() {
        super.onStart();
        Log.i("123", "onStart------------------");
    }

    @Override
    protected void onResume() {
        super.onResume();
        Log.i("123", "onResume------------------");
    }

    @Override
    protected void onPause() {
        super.onPause();
        Log.i("123", "onPause------------------");
    }

    @Override
    protected void onStop() {
        super.onStop();
        Log.i("123", "onStop------------------");
    }

    @Override
    protected void onDestroy() {
        super.onDestroy();
        Log.i("123", "onDestroy------------------");
    }
}


1,在onCreate方法中抛出异常:没有调用onStart()方法

2,在onCreate方法中使用return:onStart()方法被调用

3,直接在onCreate方法中调用onPause或者super.onPause方法:onStart()方法被调用,区别:手动调用onPause方法


4,在onCreate方法中调用onStop或者super.onStop方法:onStart()方法被调用,区别:手动调用onStop方法


5,在onCreate方法中调用onDestroy或者super.onDestroy方法:onStart()方法没有被调用,区别:手动调用onDestroy方法


6,在onCreate方法中调用finish方法:onStart()方法没有被调用,调用了onDestroy方法


7,在onCreate方法中调用System.exit(0);:onStart()方法没有被调用


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值