當前位置:首頁 » 安卓系統 » android程序入口

android程序入口

發布時間: 2022-07-05 03:25:50

㈠ 想問一下,安卓項目從哪開始運行的呀

從基礎的來講就是在項目的AndroidManifest.xml文件中可以找到程序的入口界面,在文件中有一個application標簽,它的下一級有一個activity標簽包含了
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
那麼這個activity就是APP啟動的時候進入的界面,進到界面中,要了解一下Activity的生命周期就能知道,界面剛進來就走了onCreate()方法,所以Android項目中開始運行的地方就是第一個Activity的onCreate()方法。
另外如果在設置了AndroidManifest的application標簽中設置了android:name=".MyApplication",那麼程序入就成了MyApplication的onCreate()方法,當然Application在onCreate方法之前還會執行其他的方法,感興趣的話可以自己再查詢一下資料。平常說的話就是這么兩個入口,如果在設置了AndroidManifest的application,那麼最先的入口還是這個Application的onCreate()方法。

㈡ android 沒有main函數,怎麼找到程序執行入口

android應用程序中,並沒有像c++和java這樣有main函數來作為應用程序的入口.android應用程序提供的是入口Activity(你打開一個應用,第一眼看到的),而非入口函數.
在AndroidManifest.xml中
給你要最先啟動的acticity寫上下面這些語句,表示這個activity就是入口

㈢ Android 應用的真正入口是哪裡

入口就是在清單文件manifest.xml里<application>中排在第一的那個

㈣ 如何查看Android應用apk的包名和入口Activity名稱

Android開發過程中我們有時需要使用第三方apk資源,而啟動第三方apk在某些情況下需要指定相應的包名和啟動的Activity名,這個時候就需要獲取這兩個名稱,我們可以使用如下三種方法:

1、使用aapt //aapt是sdk自帶的一個工具,在你安裝的Eclipse路徑下的sdk\build-tools\中,如我的是D:\Eclipse\androidTools\sdk\build-tools\android-4.4.2,如果你下載有apk反編譯工具,也可以直接使用裡面的aapt

以「GO備份.apk」為例,先進入cmd命令行窗口,然後運行:D: -> Eclipse\androidTools\sdk\build-tools\android-4.4.2
-> aapt mp badging C:\Users\Administrator\Desktop\GO備份.apk,即可獲取到AndroidManifest.xml中我們需要的內容,如

package: name='com.jiubang.go.backup.ex'

launchable-activity: name='com.jiubang.go.backup.pro.StartupPageActivity'

2、查看AndroidManifest.xml

同樣是查看AndroidManifest.xml,這里我們可以採用反編譯方法來獲取信息,同樣是打開cmd命令行窗口,然後運行:E:
-> apk反編譯工具\apktool\apktool -> apktool.bat d -f C:\Users\Administrator\Desktop\GO備份.apk GO備份,然後打開「GO備份」文件夾,打開droidManifest.xml文件,找到manifest節點的package屬性值package="com.jiubang.go.backup.ex"語句即為包名,查找android.intent.action.MAIN和android.intent.category.LAUNCHER對應的activity,該activity對應的android:name屬性即為入口activity名稱,如<activity
android:name="com.jiubang.go.backup.pro.StartupPageActivity"。

3、使用uiautomatorviewer

可以直接在命令行輸入uiautomatorviewer,打開獲取屏幕截圖工具,連接手機,打開所要獲取包名的應用,然後獲取其截圖,根據截圖查看package即可,uiautomatorviewer的使用這里就不做介紹了。使用這個需要注意的是,該app必須是有界面的,否則無法獲取。

另外,

android.intent.action.MAIN 屬性決定應用程序最先啟動的Activity

android.intent.category.LAUNCHER屬性決定應用程序是否顯示在程序列表裡

㈤ 在android程序中如何獲得應用的package名稱及程序入口activity

packinfo.get(i).activities[0]得到的是manifest文件中的第一個activity

㈥ android程序的入口點在哪裡

同意樓上的觀點,但也不一定是在Activity標簽下的intent-filter里的,因為也可以一個因為程序也可以沒有Activity的,比如說Service。只不過,在一般情況下,Activity還是有的,這樣才構成很好的用戶體驗吧

㈦ Android應用程序入口點究竟是什麼

android應用程序,由一到多個Activity組成.每個Activity沒有很緊密的聯系,因為我們可以在自己的程序中調用其它Activity,特別是調用自己的代碼之外生成的Activity,比如android提供的發簡訊或者打電話的Activity. Intent call = new Intent(Intent.ACTION_CALL,Uri.parse("tel:"+phonenumber);
startActivity(call);

Intent sms = new Intent(Intent.ACTION_SENDTO,Uri.parse("smsto:"+phonenumber);
startActivity(sms);
從這點上看,android應用程序實際上是由多個Activity按照一定的次序拼裝起來的,只不過拼裝的過程中,後台傳遞了一些數據,使得各個Activity之間能比較好的銜接起來.
扯了這么多,其實我的意思還是想說,android應用程序中,並沒有像c++和java這樣有main函數來作為應用程序的入口.android應用程序提供的是入口Activity,而非入口函數.

在eclipse中創建一個android應用程序的時候,默認會創建一個Activity.這個Activity實際上就是入口Activity了.從
哪裡定義它是Activity呢?AndroidManifest.xml文件中定義了整個android應用所包含的Activity.默認生成的
Activity的定義為:
<activity android:name=".activity01" android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>

action節點中的android.intent.action.MAIN表明它所在的Activity是整個應用程序的入口點.而category中
的android.intent.category.LAUNCHER意思是把這個Activityg歸屬到載入器類,即把這個Activity標注為自
動會載入和啟動的Activity,這樣程序啟動時候就先載入這個Activity了.參考手冊上是這么說的----"the LAUNCHER
category says that this entry point should be listed in the application
launcher."意思和我理解的有出入.不過意思都是說這個Activity要被應用程序載入.

㈧ 在程序中動態的更改入口的activity,怎樣實

android 程序的入口activity能更改和指定。

你打開android project的AndroidManifest.xm或者喜歡反編譯的話打開apk裡面的AndroidManifest.xml文件,一開始便是指定:

package="com.i3nu.sprofile" //package名、包名

android:versionCode="1" //版本碼

android:versionName="1.0"> //版本名

<application android:icon="@drawable/icon" android:label="@string/app_name"> //指定項目程序的圖標、名稱

<activity android:name=".SProfileActivity"

android:label="@string/app_name">

<intent-filter>

<action android:name="android.intent.action.MAIN" /> //此處表示該Activity是主程序

<category android:name="android.intent.category.LAUNCHER" /> //此處表示該Activity是入口

</intent-filter>

</activity>

㈨ apk入口在哪裡

android應用程序(apk)沒有固定的入口點,系統會根據各個程序的manifest設定,在發生指定事件的時候調用程序的指定位置。
如果你說的入口點是傳統上認為的main函數,那麼在android應用程序裡面,相對應的就是在manifest裡面用intent-filter設定了會處理main action的那個activity。
(9)android程序入口擴展閱讀:
APK(全稱:Android application package,Android應用程序包)是Android操作系統使用的一種應用程序包文件格式,用於分發和安裝移動應用及中間件。一個Android應用程序的代碼想要在Android設備上運行,必須先進行編譯,然後被打包成為一個被Android系統所能識別的文件才可以被運行,而這種能被Android系統識別並運行的文件格式便是「APK」。 一個APK文件內包含被編譯的代碼文件(.dex 文件),文件資源(resources), 原生資源文件(assets),證書(certificates),和清單文件(manifest file)。
APK 文件基於 ZIP 文件格式,它與JAR文件的構造方式相似,互聯網媒體類型是:application/vnd.android.package-archive。
介紹
APK是Android application package的縮寫,即Android安裝包(apk)。APK是類似SymbianSis或Sisx的文件格式。通過將APK文件直接傳到Android模擬器或Android手機中執行即可安裝。[2]
apk文件和sis一樣,把androidsdk編譯的工程打包成一個安裝程序文件,格式為apk。 APK文件其實是zip格式,但後綴名被修改為apk,通過UnZip解壓後,可以看到Dex文件,Dex是DalvikVM executes的簡稱,即Android Dalvik執行程序,並非Java ME的位元組碼而是Dalvik位元組碼。Android在運行一個程序時首先需要UnZip,然後類似Symbian那樣直接,但不同於Windows mobile中的PE文件,程序的保密性和可靠性不是很高,通過dexmp命令可以反編譯它,但這種架構符合發展規律,微軟的WindowsGadgets(WPF)也採用了這種架構方式。在Android平台中,dalvikvm的執行文件被打包為apk格式,最終運行時載入器會先解壓,然後獲取編譯後的androidmanifest.xml文件中的permission聲明對安全訪問的限制,要知道仍然存在很多安全限制,但將apk文件傳到/system/app文件夾下會發現執行是不受限制的。也許我們平時安裝都不會選用這個文件夾,但在androidrom中,系統的apk文件默認會放入這個文件夾,它們擁有root許可權。

㈩ Android APP最終入口在哪學JAVA的時候有main class,Android有嗎

android程序裡面我們見不到main方法,但實際我想應該還是有,不過在android中,入口方法,其實就是第一個被顯示的activity,而第一個顯示的activity是在AndroidManifest.xml中配置的,代碼如下

<activity
android:name=".activity.WelcomeActivity"
android:label="@string/app_name"
android:screenOrientation="portrait">
<intent-filter>
<actionandroid:name="android.intent.action.MAIN"/>

<categoryandroid:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
熱點內容
scratch少兒編程課程 發布:2025-04-16 17:11:44 瀏覽:631
榮耀x10從哪裡設置密碼 發布:2025-04-16 17:11:43 瀏覽:360
java從入門到精通視頻 發布:2025-04-16 17:11:43 瀏覽:76
php微信介面教程 發布:2025-04-16 17:07:30 瀏覽:301
android實現陰影 發布:2025-04-16 16:50:08 瀏覽:789
粉筆直播課緩存 發布:2025-04-16 16:31:21 瀏覽:339
機頂盒都有什麼配置 發布:2025-04-16 16:24:37 瀏覽:204
編寫手游反編譯都需要學習什麼 發布:2025-04-16 16:19:36 瀏覽:804
proteus編譯文件位置 發布:2025-04-16 16:18:44 瀏覽:358
土壓縮的本質 發布:2025-04-16 16:13:21 瀏覽:584