1. 程式人生 > >The activity must be exported or contain an intent-filter

The activity must be exported or contain an intent-filter

安卓中作為啟動頁的activity在mainfest中必須必須設定intent-filter或者設定成exported
如下2中設定方式:

1.
<activity
   android:name=".ActivityMain"
   android:configChanges="orientation|screenSize|keyboardHidden"
   android:screenOrientation="portrait">
     <intent-filter>
         <action android:name="android.intent.action.MAIN"
/>
<category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity> 2. <!--此處設定 exported--> <activity android:name=".ActivityMain" android:configChanges="orientation|screenSize|keyboardHidden" android:exported="true"
android:screenOrientation="portrait">
<!--此處設定 intent-filter--> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> </activity
>

以下是我踩過的一個坑,如果在android studio中修改了預設的activity導致每次執行專案的時候都會先進入到自定義的頁面,此時專案一些資料還未初始化,導致出錯。這個activity也要配置exported或intent-filter;
配置預設啟動頁面如下圖:
這裡寫圖片描述
此時是預設的啟動頁:
這裡寫圖片描述
修改預設啟動頁(只是在配置中修改,實際上專案啟動頁是沒有變化的),選擇1標示中的選項,之後選擇標示2自定義的頁面即可
這裡寫圖片描述
這裡寫圖片描述
選擇好之後下面就有提示要設定了
這裡寫圖片描述