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

android程序的入口

發布時間: 2022-10-24 04:43:18

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

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

❷ apk入口在哪裡

android應用程序(apk)沒有固定的入口點,系統會根據各個程序的manifest設定,在發生指定事件的時候調用程序的指定位置。
如果你說的入口點是傳統上認為的main函數,那麼在android應用程序裡面,相對應的就是在manifest裡面用intent-filter設定了會處理main action的那個activity。
(2)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程序的入口點在哪裡

你可以看一下這個文件,AndroidManifest.xml,找到裡面設置了這個的:<intent-filter <action android:name="android.intent.action.MAIN" / <category android:name="android.intent.category.LAUNCHER" /</intent-filter你看一下這幾行代碼是設置在哪個Activity里的,這個Activity就是整個應用程序的入口點

❹ android程序的入口點在哪裡

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

❺ Android應用程序的入口點是什麼ActivityThreadonCreate

以前一直都說Activity的人口是onCreate方法。
其實android上一個應用的入口,應該是ActivityThread。
和普通的java類一樣,入口是一個main方法。
public static void main(String[] args) {
SamplingProfilerIntegration.start();

// CloseGuard defaults to true and can be quite spammy. We
// disable it here, but selectively enable it later (via
// StrictMode) on debug builds, but using DropBox, not logs.
CloseGuard.setEnabled(false);

Environment.initForCurrentUser();

// Set the reporter for event logging in libcore
EventLogger.setReporter(new EventLoggingReporter());

Security.addProvider(new AndroidKeyStoreProvider());

Process.setArgV0("<pre-initialized>");

Looper.prepareMainLooper();

ActivityThread thread = new ActivityThread();
thread.attach(false);

if (sMainThreadHandler == null) {
sMainThreadHandler = thread.getHandler();
}

AsyncTask.init();

if (false) {
Looper.myLooper().setMessageLogging(new
LogPrinter(Log.DEBUG, "ActivityThread"));
}

Looper.loop();

throw new RuntimeException("Main thread loop unexpectedly exited");
}

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

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

與傳統的main函數類程序不同,Android程序的最小執行單元是程序片段(Component),部件包括有界面的(Activity)和無界面的(Service,Receiver,Provider)等,而且一個程序中可能包括多個程序片段。因此可以講,有多少個程序片段,程序就有多少個入口點。另外從編程角度來講,不同程序片段的代碼入口點也有所差別。像大多數基於操作系統的程序設計一樣,我們的程序是被操作系統調用,而不是我們調用操作系統。因此,程序片段隱藏了實際上的程序入口點,而只暴露給我們可以編寫代碼的入口點。典型的情況,對於Activity來講,編寫代碼的入口點就是onCreate()方法。 到安卓巴士網站查看回答詳情>>

❽ android程序的入口點在哪裡

android應用程序(apk)沒有固定的入口點,系統會根據各個程序的manifest設定,在發生指定事件的時候調用程序的指定位置。
如果你說的入口點是傳統上認為的main函數,那麼在android應用程序裡面,相對應的就是在manifest裡面用intent-filter設定了會處理main action的那個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要被應用程序載入.

熱點內容
演算法題抽獎 發布:2025-01-31 17:08:04 瀏覽:124
壓縮內存軟體 發布:2025-01-31 16:51:39 瀏覽:145
腳本lcd 發布:2025-01-31 16:41:02 瀏覽:515
安卓selinux干什麼用的 發布:2025-01-31 16:32:04 瀏覽:531
俠盜獵車手加錢密碼是多少 發布:2025-01-31 15:44:28 瀏覽:662
沒密碼怎麼登微信 發布:2025-01-31 15:33:51 瀏覽:737
c語言死機程序 發布:2025-01-31 15:07:52 瀏覽:18
編程教育裝修 發布:2025-01-31 15:04:38 瀏覽:402
函數和存儲過程的區別 發布:2025-01-31 14:39:12 瀏覽:610
地下室柱子箍筋的加密 發布:2025-01-31 14:36:11 瀏覽:935