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的人口是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")
}
你可以看一下这个文件,AndroidManifest.xml,找到里面设置了这个的:<intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER"掘和扮 /></intent-filter>你看一下这几行代码是设置在哪个Activity里的,这个Activity就是整个应用程序的入判灶口点棚唯欢迎分享,转载请注明来源:内存溢出
评论列表(0条)