0

PC に 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=".Login" を android:name=".Chat" に変更すると、アクティビティ チャットが開き、クラッシュしません。しかし、ログインを最初に開きたいので、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?

なぜ私にこれを宣言させたいのですか?

どうもありがとう!

4

3 に答える 3

0

.Chatアクティビティを宣言する必要があります。お察しのとおりです。現在、.Loginアクティビティのみが宣言されています。マニフェスト ファイルの のすぐ下に次の行を追加して、同様</activity>に宣言する必要があります。.Chat

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

このように、アプリケーションには と の 2 つのアクティビティがあり.Loginます.ChatstartActivityこれで、メソッドによってアプリケーションから両方にアクセスできるようになりました。作成するすべての新しいアクティビティは、この方法で宣言する必要があります。

于 2013-08-24T20:11:32.080 に答える
0

マニフェスト ファイルでこのアクティビティを宣言します。

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

そして、あなたの問題はずっとなくなっているはずです!

于 2013-08-24T20:15:13.500 に答える
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>

「ログイン」アクティビティのインテントから開始していますか? 私の知る限り、実際に参照されているアクティビティを宣言するように求められるだけです。

于 2013-08-24T20:10:10.527 に答える