Mam projekt na Androida utworzony w Eclipse . Chcę zmodyfikować nazwę pakietu i zastosowanie projektu. Jak to zrobić w Eclipse?
Odpowiedzi:
Jak zwykle, naciskając F2
nazwę pakietu, możesz zmienić lub zmienić nazwę pakietu, a także klikając prawym przyciskiem myszy, a następnie wybierając Rename
opcję, możesz zmienić lub zmienić nazwę pakietu.
Po naciśnięciu F2wyświetli okno dialogowe jako:
W tym oknie dialogowym nie zapomnij zaznaczyć pola wyboru "Aktualizuj odniesienia", ponieważ zaznaczając to pole wyboru, wprowadzisz zmiany we wszystkich odniesieniach pakietu, do których odwołują się inne komponenty projektu.
F2
, ale nazwa pakietu działa.
Rename
polecenia poniżej, Refactor
jeśli nie znajduje się ono w katalogu głównym menu kontekstowego.
To jest błąd w narzędziach Eclipse na Androida .
Aby naprawić: Kliknij prawym przyciskiem myszy projekt, przejdź do Narzędzia Android -> Zmień nazwę pakietu aplikacji.
A także sprawdź, AndroidManifest.xml
czy został poprawnie zaktualizowany. W moim przypadku tak się nie stało i to powinno rozwiązać ten problem.
Żaden z nich nie zadziałał, wszystkie wprowadzały błędy.
Pracowały dla mnie:
Jedna niezwykle ważna uwaga:
NIGDY nie używaj bezpośrednich nazw pakietów, jak w czymś podobnym do przekazywania wartości ciągu zawierającej nazwę pakietu. Użyj metody getPackageName (). Dzięki temu zmiana nazwy będzie dynamiczna. Zrób wszystko, aby dotrzeć do metody getPackageName ().
W Eclipse Juno prawidłowy sposób zmiany nazwy to:
Idź do Src folderu projektu systemu Android i otwórz plik Java.
Zmień pakiet OldName.android.widget
nanewName.android.widget
.
Daje ci taki błąd
Zadeklarowany pakiet „newName.android.widget” nie pasuje do oczekiwanego pakietu „OLDName.android.widget.
Aby rozwiązać ten problem, wybierz Przenieś nazwę pliku.Java do Newname.android.widget i usuń stary folder pakietu.
Następny krok: przejdź do AndroidManifest.xml
i zmień
package="OldName.android.widget"
na package="newName.android.widget"
.
To zadziałało idealnie dla mnie (proste zastąpienie tekstu):
Przejdź do wyszukiwania -> plik
Zawiera tekst: stara nazwa opakowania
Wzorzec nazwy pliku: *
Zakres: obszar roboczy
Naciśnij Zamień
Zastąp: nowa nazwa pakietu
Teraz Twój projekt jest pełen błędów.
Kliknij swój pakiet w eksploratorze projektów i naciśnij F2 (zmień nazwę).
Wpisz nową nazwę pakietu i zaznacz wszystkie znaczniki wyboru.
Naciśnij Podgląd .
Kliknij OK .
Poczekaj, aż Eclipse się odświeży. Jeśli nadal występują błędy, wyczyść wszystkie projekty w obszarze roboczym:
Projekt -> Wyczyść
Nic z tego nie zadziałało, dopóki nie połączyłem dwóch odpowiedzi wymienionych w tym poście.
Krok 1: Kliknij prawym przyciskiem myszy projekt -> Wybierz Narzędzia Android -> Zmień nazwę pakietu aplikacji. (Spowoduje to zmianę wszystkich plików w folderze gen i AndroidManifest, ale nie zmieni nazwy pakietu w folderze src, więc wykonałem krok 2)
Krok 2: Wewnątrz folderu src Kliknij prawym przyciskiem myszy nazwę pakietu -> Refaktoryzuj -> Zmień nazwę -> Wprowadź nową nazwę, którą wprowadziłeś w Kroku 1.
Tylko po to, aby upewnić się, że sprawdź AndroidManifest, czy nadal istnieje stara nazwa pakietu i zastąp nową (w moim przypadku wewnątrz tagu „uses-Permissions”).
Następnie zamknij Eclipse i otwórz je ponownie. Odinstaluj aplikację z urządzenia i zainstaluj ją ponownie, a wszystko powinno działać poprawnie.
Mam nadzieję, że to pomoże i oszczędza Twój czas.
OK, oto co musiałem zrobić:
Problem: Miałem projekt podstawowy, którego chciałem użyć jako punktu wyjścia dla kilku innych projektów, które znajdowałyby się w tym samym obszarze roboczym co projekt podstawowy. Projekt podstawowy był już pod kontrolą GiT w moim własnym lokalnym repozytorium. Nadszedł czas, aby zduplikować projekt podstawowy „MyBaseApp”, aby stać się punktem wyjścia dla „MyKillerApp”.
Rozwiązanie:
W ten sposób miałem nowy projekt pochodzący z projektu podstawowego bez nomenklatury pozostałej z projektu podstawowego i znajdował się on we własnym lokalnym repozytorium GiT.
Następujące działały dla mnie w zaćmieniu:
Przejdź do AndroidManifest, wyszukaj i zamień starą nazwę pakietu na nową i zaktualizuj wszystko podczas zapisywania. Przejdź do głównego pakietu projektu, a następnie naciśnij klawisz F2, wpisz nową nazwę i zaznacz pola wyboru Aktualizuj odwołania i Zmień nazwę podpakietów. Po tym wszystko było czerwone w projekcie (narzekałem na import R dla każdego pliku java), ponieważ nie zmieniało to tagu zamykającego moich niestandardowych widoków w plikach XML układu. Po ręcznej zmianie tych ustawień wszystko wróciło do normy. To jest to.
Zmiana nazwy aplikacji - kompletny przewodnik
**A) for changing Just the application name
(App name which is displayed below icon)
in the Manifest.xml file, in <application tag,
android:label="YourAppName"
then do the same in All the <activity Tags
B) For changing EVERYTHING
(folder names, Package names, Refrences,app name, etc.)
*1) Renaming package names in gen folder and manifest.xml
Right Click on Your project
Android tools- Rename Application Package
*2) Renaming package names in src folder
Expand src folder, Click on package (Single click)
Press Alt+Shift+R
Check Update references and Rename subpackages
3) Renaming the app's main Folder (Optional)
click on the application's folder (Single click)
then Press Alt+Shift+R
4) Renaming application name- Refer "A)"**
Po prostu pobierz Far Manager i wyszukaj starą nazwę. Następnie ręcznie (w Far Manager) wymień wszędzie. Niestety jest to jedyna metoda, która działa w 100% możliwych przypadków.
Ja też miałem z tym duży problem.
Zmieniłem nazwę projektu i pakietu przez refaktoryzację, ale spowodowało to, że aplikacja stała się bezużyteczna. Zmieniłem nazwę z powrotem na oryginał i użyłem narzędzi Androida do zmiany nazwy pakietu i to zadziałało, ale mój folder pakietu i klasy miały starą nazwę.
Następnie refaktoryzowałem folder pakietu. Teraz aplikacja nie działała. Mój manifest był bałaganem. To podwoiła się moje wyrzutni nazwę np com.ronguilmet.app/com.ronguilmet.com.class
. Naprawiłem to i musiałem ręcznie edytować wszystkie działania.