2013-08-24 132 views
0

我在我的電腦上重新安裝了Windows,並試圖用較新版本的android studio打開我的舊項目。清單錯誤應用程序崩潰

這是我的清單:

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

<uses-sdk 
     android:minSdkVersion="16" 
     android:targetSdkVersion="18" /> 

<application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme" > 
    <activity 
      android:label="@string/app_name" 
      android:name=".Login" > 
     <intent-filter > 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
</application> 

當我改變行機器人:名字=至Android 「登陸」: 「聊天」 NAME =,活動聊天開闢了和沒有按不會崩潰。但我想登錄首先打開,所以我使用android:name =「。Login」,如果我然後單擊按鈕打開聊天它崩潰。

我從logcat中得到的錯誤是:

Caused by: android.content.ActivityNotFoundException: Unable to find explicit activity class {com.linkr.chat/com.linkr.chat.Chat}; have you declared this activity in your AndroidManifest.xml? 

它爲什麼要我申報呢?

非常感謝!

回答

0

它想要你聲明.Chat活動,你猜對了。現在只聲明.Login活動。你應該在你的清單文件中添加此行正下方</activity>申報.Chat還有:

<activity android:name=".Chat"/> 

這樣就會出現你的應用二actvities:.Login.Chat。現在他們都可以通過您的應用程序通過startActivity方法訪問。您創建的每個新活動都應該以這種方式進行聲明。

+0

omg謝謝! :D我不敢相信我是如此愚蠢。我對Java和Android非常陌生。非常感謝! – calmandniceperson

0

項目中的所有活動都需要在清單中聲明。

<application 
     android:allowBackup="true" 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" 
     android:theme="@style/AppTheme" > 
    <activity 
      android:label="@string/app_name" 
      android:name=".Login" > 
     <intent-filter > 
      <action android:name="android.intent.action.MAIN" /> 
      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 

    <activity android:name=".Chat" > 
</application> 

你是從「登錄」活動中的意圖開始的嗎? AFAIK,它只會要求你聲明實際參考的活動。

+0

謝謝你們! :D聲明它修復了它^^ – calmandniceperson

0

在清單文件中聲明此活動。

<activity android:name="com.linkr.chat.Chat" > </activity> 

而你的問題應該早就消失了!