actionandroidname
⑴ 關於android.intent.action.MAIN在manifest里的使用
1、android.intent.action.MAIN決定應用程序是最先啟動的。
2、如果有多個activity都具有此許可權,那麼就應該用<intent-filter>來定義哪個activity在什麼情況下啟動。
3、如果在某個activity中不添加android.intent.action.MAIN有沒有影響這個沒有嘗試過,如果沒有應該是無法啟動的。理論上提示無許可權。
Android會根據manifest.xml是啟動相應的應用程序。
啟用應用程序的時候,會啟用對應的Activity,啟用的這些Activity也要在manifest.xml中聲明。
<intent-filter>在聲明的時候用到的,是在activity下一級,而<action>和<category>又是在<intent-filter>的下一級
<activity...
<intent-filter>...
<action...
<category...
</intent-filter>
</activity>
<intent-filter>就理解為過濾器,它指定了啟動應用程序的Intent對象的動作和類型
<actionandroid:name="android.intent.action.MAIN"/>
-->表示這個activity是主入口,換句話說,你只要啟動這個應用程序,就要首先調用這個activity
<categoryandroid:name="android.intent.category.LAUNCHER"/>
-->表示這個activity種類,要加到LAUNCHER程序列表裡。
(1)actionandroidname擴展閱讀:
任何一個C++程序都包含一個main函數,這是規定。main函數由系統直接調用,是程序執行的入口。(和C++語言中一樣)
main函數與用戶自己定義的函數都是各自獨立的模塊,即函數不能嵌套定義,通俗的說,不能在一個函數的函數體內定義另一個函數,即使在main函數中也不行。但main函數可以對用戶自己定義的函數進行調用(但main函數只能由系統調用)。用戶自己定義多個函數時,這幾個用戶自己定義的函數之間都可以互相調用。
參考自拉理由:網路-main
⑵ android中的action定義
action有自定義的,也有系統的。自定義的action,比如你要用到自定義的broadcastreceiver,一般就需要自定義的action,action的命名一般是包名+.+大寫的標志;系統自帶的action,你可以上網查下。
⑶ android開發中如何設置主界面,比如我有兩個activity,如何選擇我想要的最先出現!
在AndroidManifest.xml里修改<activityandroid:name=".CdBusSearchActivity"android:label="@string/app_name"><intent-filter><actionandroid:name="android.intent.action.MAIN"/><categoryandroid:name="android.intent.category.LAUNCHER"/></intent-filter></activity><activityandroid:name=".BusInfoActivity"/>CdBusSearchActivity是主界面,如果想換成BusInfoActivity的話,只需交換兩個的名字就行
(3)actionandroidname擴展閱讀
如果intent對象包含FLAG_ACTIVITY_CLEAR_TOP 標記,當目標task中已存在與接收該intent對象的 activity類型相同的activity實例存在時,所有位於該activity對象上面的activity將被清空,這樣接收該intent的 activity就位於棧頂,可以響應到來的intent對象。
如果目標activity的運行模式為standard(默認),則目標activtiy也會被清空。因為當運行模式為standard時,總會創建新的activity對象來接收到來的intent對象。
參考資料
android開發 網路
⑷ 安卓開發的時候在Manifest文件中有一個<intent-filter>裡麵包含<action>和<category>
Android 會根據 manifest.xml 是啟動相應的應用程序。
啟用應用程序的時候,會啟用對應的Activity,啟用的這些Activity也要在manifest.xml中聲明。
你說的這個<intent-filter>在聲明的時候用到的,是在activity下一級,而<action>和<category>又是在<intent-filter>的下一級
<activity...
<intent-filter>...
<action...
<category...
</intent-filter>
</activity>
<intent-filter> 就理解為過濾器,它指定了啟動應用程序的Intent對象的動作和類型
<action android:name="android.intent.action.MAIN" />
--> 表示這個activity是主入口,換句話說, 你只要啟動這個應用程序,就要首先調用這個activity
<category android:name="android.intent.category.LAUNCHER" />
--> 表示這個activity種類,要加到LAUNCHER程序列表裡。
希望對你有用。
⑸ <action android:name="android.intent.action.MAIN" />是什麼意思
android 的主啟動項
⑹ <action android:name="android.intent.action.MAIN" /> <category android:name=.....這兩句是什麼意思
去清單文件 <application android:icon="@drawable/icon" android:label="@string/app_name" android:... "portrait"> <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="...
⑺ 安卓編程intent-filter 裡面action android:name="xx" 這里的x
當然不是,要啟動你的Activity,需要使用intent,顯式intent直接指明你的activity名字,所以不需要intent-filter,但是有時候使用隱式intent啟動,比如,你要打開瀏覽器,就使用intent說,我要打開瀏覽器,這時候intent沒有指明要啟動的activity名字,而是說明了要啟動的其他信息(action、category等),這時候系統會尋找所有程序的intent-filter,看看符不符合(action、category等匹配不匹配),如果只有一個符合要求,就啟動,如果有多個符合要求,則彈出一個列表,讓用戶選擇使用哪個
⑻ <action android:name="android.intent.action.MAIN" />怎麼用滑鼠點開它
ACTION_MAIN
就是一個常量,
android.intent.action.main
就是這個常量的值
一個Activity下如果有此標記就代表這個Activity是APP的入口
⑼ 怎麼修改android項目名
前段時間研究好程序員分享視頻,在引入項目時,發現通過Refactor-Rename重命名之後,下次引入項目,工程名還是會改變為原來的工程名!
1、通過研究Eclipse引入Android工程機制,發現Eclipse會自動讀取android代碼的清單文件AndroidManifest.xml
<intent-filter
<action android:name=android.intent.action.MAIN /
<category android:name=android.intent.category.LAUNCHER /
</intent-filter
查找到過濾器為運行的主activity
2、通過獲取主activity的名字,然後生成工程名
<activity
android:name=.FlashActivity
3、既然分析出原因,那麼我們只要把主運行的activity的名字修改一下,然後再次引入時,都會按照這個名字進行import