1. 程式人生 > >android屬性之excludeFromRecents

android屬性之excludeFromRecents

此篇文章十分短小精悍,只需要花費你一到兩分鐘的時間,完全符合吃慣快餐口味的各位大神們。

有沒有考慮過這樣的特殊需求,APP啟動後不想在recents中看到。話說什麼是recents?通俗的講就是android的多工鍵,它可以看到我們最近使用過的應用,通過它可以快速應用切換。

下面介紹的這個屬性就可以使我們的APP隱藏起來,通過一個例項進行學習理解。

MainActivity.java:

package com.example.administrator.myapplication;

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

public class
MainActivity extends AppCompatActivity {
   public static final String TAG = "yayun";

   
@Override
   
protected void onCreate(Bundle savedInstanceState) {
       super.onCreate(savedInstanceState);
       
Log.d(TAG, "onCreate: taskId" + getTaskId());
       
setContentView(R.layout.activity_main
);
   
}

}

它可以是空的、預設生成的。我們要關注的是AndroridMainifest.xml關於這個Activity的屬性:

<?xml version="1.0" encoding="utf-8"?>
<manifest
xmlns:android="http://schemas.android.com/apk/res/android"
   
package="com.example.administrator.myapplication">

   <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>

   </application>

</manifest>

主角出場了,它就是excludeFromRecents,從字面意思也很好理解它的用處。當然,其預設為false,也就是在Recents中顯示,這裡可以將其設定成true。它有什麼效果?執行起來這個簡單的專案,通過虛擬機器一目瞭然:


可以看到,這裡就一個Activity,也就是根Activity,它會影響其他Activity嗎?我們可以在新增一個Activity,並通過一個按鈕啟動它。

此時MainActivity.java:

public void launch(View view) {
   Intent intent = new Intent();
   
intent.setAction("yayun");
   
intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
   
startActivity(intent);
}

AndroidMainfest.xml中新增一個Activity:

<activity android:name=".ActivityTest">
   <intent-filter>
       <action
android:name="yayun" />
       <category
android:name="android.intent.category.DEFAULT" />
   </intent-filter>
</activity>

執行專案:

也是有效果的,一般其使用也是放在根Activity中。忙碌一天了,回來還能堅持寫個文章,著實不易,哈哈,喜歡的朋友分享一下吧。

最後,宣傳一下我的書籍:(亞馬遜和百度閱讀有售)

《android百戰經典》


《android控制元件操作二十四章經》

謝謝關注我的微信公眾號,覺得好可以分享到朋友圈哦.

請關注我的新浪微博:AndroidTip

CSDN部落格:http://blog.csdn.net/yayun0516