2012-05-05 189 views
0

我剛創建應用程序後更改了主要活動名稱,並在Manifest文件中對其進行了更新。但現在這個應用程序正在建設中沒有任何錯誤,它一點也沒有啓動。下面是我得到在輸出文摘應用程序未啓動

[2012-05-05 21點32分12秒 - 測試]執行同步[2012-05-05 21時32分12秒 - 測試]自動目標模式:首選AVD 'Test_G'在仿真器'emulator-5554'上可用[2012-05-05 21:32:12 - 測試]將Test.apk上載到設備'emulator-5554'[2012-05-05 21:32 :12 - 測試]安裝Test.apk ... [2012-05-05 21:32:15 - 測試]成功! [2012-05-05 21:32:16 - 測試] \ Test \ binTest.apk安裝在設備上 [2012-05-05 21:32:16 - 測試]完成!

如何解決這個

的Manifest.xml

?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="Test" 
    android:versionCode="1" 
    android:versionName="1.0" > 

    <uses-sdk android:minSdkVersion="8" /> 

    <application 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" > 
     <activity android:name="contactListTab"></activity> 
    </application> 

</manifest> 
+0

你可以發佈android清單文件嗎?這些信息表明您的應用正在啓動。 –

+0

清單文件添加..請看看它 – Naruto

回答

1

您尚未提供意向類別。嘗試添加

<intent-filter> 
<action android:name="android.intent.action.MAIN" /> 
<category android:name="android.intent.category.LAUNCHER" /> 
</intent-filter> 

之間的活動標籤!

+0

是的,你是對的。我做了,但我的應用程序開始工作只追加。 (點)進行活動。爲什麼這樣?...請參考下面的回答我的評論,並給我提供理由 – Naruto

+0

點是一個shorform。你可以寫「package.name.Activity」或者只是使用「。活動「,以便操作系統知道它需要執行哪個文件 – Shobhit

+0

哦,謝謝你.. – Naruto

0
package="Test" 

相反的Test,把您的活動所在的包。另外請確保contactListTab是您的Activity

我建議你在res/strings.xml文件中聲明這樣的字符串,而不是在這裏。這種方式改變他們更容易。

+0

追加後(點)到我的活動並添加<意圖過濾器> 。<操作機器人:名字=「android.intent.action.MAIN」 /> <類別的Android :name =「android.intent.category.LAUNCHER」/> 它開始工作的代碼行 但是爲什麼不能使用默認的編輯器放這些?...爲什麼這個點是必需的? – Naruto

+0

該點是完整軟件包名稱的縮寫,因此您不必再次明確鍵入它。我不信任xml gui編輯器 - 你可以讓它嘗試添加東西,但如果它破壞了某些東西,可能需要手動編輯實際的xml代碼。 –

1

您的活動聲明並不是說它應該是應用程序開始執行此操作後應該打開的第一個活動,您必須添加意圖過濾器並且您的活動名稱應該是。因爲它是包中的一個java文件。正如在其他答案中提到的,您必須將設置爲您應用的軟件包名稱。

試着改變你的清單,以這樣的:

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="-->PACKAGE NAME<--" 
    android:versionCode="1" 
    android:versionName="1.0" > 

    <uses-sdk android:minSdkVersion="8" /> 

    <application 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" > 
     <activity android:name=".contactListTab"> 
     <intent-filter > 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
     </activity> 
    </application> 

</manifest> 

確保activityname是contactListTab!

+0

爲什麼它需要追加點活動名稱,即爲什麼.contactListTab,而不是我們可以簡單地寫contactListTab。但它不工作..可能我請詳細瞭解原因 – Naruto

+0

該點用於定義您在應用程序的Android程序包中使用的文件,也可能位於另一個可能具有其他名稱的程序包中。 –