按 home 键,再打开app,会调用onNewIntent()

按 back 键,再打开app,会调用onCreate()

public class MainActivity extends Activity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        Log.i("MainActivity", "---------------------------onCreate ");   
    }


    
    @Override    
    protected void onNewIntent(Intent intent) {    
        
        Log.i("MainActivity", "---------------------------onNewIntent  intent = "+intent);   
        setIntent(intent);
        super.onNewIntent(intent);   
    }

}

 

 

 <activity
         android:name="com.example.badupush.MainActivity"
         android:label="@string/app_name" 
         android:launchMode="singleTask">
         <intent-filter>
              <action android:name="android.intent.action.MAIN" />
              <category android:name="android.intent.category.LAUNCHER" />
         </intent-filter>
 </activity>

 

 

onCreate是用来创建一个activity的,但activity处于任务栈的顶端时,再次打开该Activity不会调用onCreate。

如果你想用这个顶端的activity去处理新的Intent,可以利用onNewIntent()

 

相关文章:

  • 2021-07-27
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
  • 2021-06-16
  • 2022-12-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-11-19
  • 2021-06-17
  • 2022-12-23
  • 2021-08-05
  • 2022-02-28
  • 2022-12-23
相关资源
相似解决方案