Android当前任务管理器不显示应用进程
Android框架为我们维护了一个名叫“最近运行”的应用程序列表,以方便进行应用程序切换。
它是通过ActivityManifest.xml中的activity标签定义了一个这样的属性。
excludeFromRecents
该属性表示应用程序是否应该将Activity从最近运行的应用程序列表排除。android:excludeFromRecents=”true”—表示排除,反之不排除。默认值为false。这个属性的前提是该Activity是某个任务的根Activity。
看下面代码:
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.yiba.test.test">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:theme="@style/AppTheme">
<activity
android:name=".MainActivity"
android:excludeFromRecents="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".SecondActivity" />
<activity
android:name=".ThirdActivity"
android:excludeFromRecents="true"
android:launchMode="singleInstance" />
</application>
</manifest>
Activity的跳转步骤
MainActivity–>SecondActivity–>ThirdActivity(启动模式singleInstatce)。
- MainActivity
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btn = (Button) findViewById(R.id.btn);
TextView text = (TextView) findViewById(R.id.text);
text.setText(getClass().getSimpleName());
btn.setText("跳转到SecondActivity");
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(getApplicationContext(), SecondActivity.class));
}
});
}
}
- SecondActivity
public class SecondActivity extends AppCompatActivity {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView text = (TextView) findViewById(R.id.text);
text.setText(getClass().getSimpleName());
Button btn = (Button) findViewById(R.id.btn);
btn.setText("跳转到ThirdActivity");
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
startActivity(new Intent(getApplicationContext(), ThirdActivity.class));
}
});
}
}
- ThridActivity
public class ThirdActivity extends AppCompatActivity {
@Override
protected void onCreate(@Nullable Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView text = (TextView) findViewById(R.id.text);
text.setText(getClass().getSimpleName());
}
}
显示的效果: