Android: aplikacja po zmianie nazwy głównego Activity przestaje działać po ponownej kompilacji

0

Witam,
Problem: aplikacja nie działa po zmianie nazwy głównego activity, a następnie wrzucenia tego na telefon.

  1. Korzystam z Android SDK wbudowanego w Eclipse.
  2. Tworzę nowy projekt: testowy. Wybieram pakiet: com.testowy. W projekcie znajduje jedno activity:
package com.testowy;

import android.app.Activity;
import android.os.Bundle;

public class TestowyActivity extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
}

Nastepnie kompiluje aplikacje, ktora jest instalowana na moim telefonie (podpiety telefon).

Zmienam nazwe activity na Testowy:

package com.testowy;

import android.app.Activity;
import android.os.Bundle;

public class Testowy extends Activity {
    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
    }
}

Eclipse wymusza zmiane nazwy pliku, robie to. Kompilacja udala sie, ale aplikacja nim sie zacznie konczy sie wyjatkiem.
Podejrzewam, ze to jakies smieci. Robie wiec w menu Eclipse: Project/Clean. Po wyczyszczeniu kompiluje raz jeszcze i uruchamiam na telefonie. To samo, czyli aplikacja konczy sie wyjatkiem. Usuniecie katalogu bin nie pomaga.

Co to moze byc?

Pozdrawiam,

0

Ja tam na androidzie słabo się znam, ale main activity jest definiowany w AndroidManifest.xml. Pewnie po zmianie nazwy klasy trzeba też zmodyfikować XML-a.

0

Po powrocie nazwy klasy i pliku do TestowyActivity znowu dziala. Znalazlem, ze kluczem jest plik AndroidManifest.xml.
Nalezy ustawic na:

        <activity
            android:name=".Testowy"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

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

To bylo to.

0

jar :)

1 użytkowników online, w tym zalogowanych: 0, gości: 1