Skocz do zawartości
Adramel

Zmiana nazwy pakietu

    Rekomendowane odpowiedzi

    Napisano (edytowane)

    Witam

    Ściągnąłem sobie źródła GreatFit dla tarczy zegarka AmazFit Startos. Pomodyfikowałem, zmieniłem nazwę, ale nie wiem jak zmienić nazwę pakietu bo przez to nie mogę równolegle mieć zainstalowanej wersji oryginalnej GreatFita i mojej zmodyfikowanej.
    https://forum.xda-developers.com/smartwatch/amazfit/app-watchface-greatfit-v1-1-settings-t3791516 

    Czy zmiany pakietu w Android Studio dokonuje się w jakiś szczególny sposób?
    W głównym pliku aplikacji jest odwołanie do pakietu:

    package com.dinodevs.greatfitwatchface;

    Jak to zmienić na jakąś swoją nazwę?


    EDIT
    Chyba znalazłem. Prawym i Refactor. Tam jest Rename

    Edytowane przez Adramel

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach

    Możesz to też zrobić w poprzez konfiguracje builda w gradle:

    buildTypes {
            custom {
                applicationIdSuffix ".custom"
            }
    }

    Wtedy do każdego pakietu będzie dodawany suffix .custom i Android będzie rozpoznawał go jako inną aplikację ;) 
    Więcej informacji znajdziesz też tutaj:

     

    • Lubię to! 1

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach

    Mam problem z ze zmianą nazwy pakietu poprzez Refactor. Aplikacja się uruchamia na zegarku, ale wejście w Ustawienia zawiesza Launcher. Reflactor czasem działa a czasem nie.
    Zmieniłem dodałem w nazwie pakietu swoje z cyferką. Teraz chce zmienić nazwę (usunąć cyferkę) i aplikacja znowu się wykłada na Ustawieniach. A nakombinowałem się by trafić na zmianę która działa. com.dinodevs.greatfitwatchface na com.dinodevs.malcerz2.greatfitwatchface . Teraz chce inną wersje pakietu bez 2 i nic nie działa.
    O czym jeszcze nie wiem?;) Jest jeszcze inny sposób zmiany nazwy pakietu dla aplikacji kompilowanej jako podpisana?

     

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach

    Trzeba być ostrożnym przy zmianie nazwy pakietów w taki sposób. Łatwo o pomyłkę :P Szczególnie jak modyfikuje się nie swoją aplikację :D Dodatkowy build w gradle nie wystarczy? Zakładam że nie masz wytycznych co do nazwy pakietu i może ona wyglądać np. tak:  com.dinodevs.greatfitwatchface.malcerz

    • Piwko! 1

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach

    Ale build można chyba tylko dodawać dla debug? Dla release to nie działa(albo nie wiem jak to ustawić).

    Najbardziej mnie dziwi że czasem to działa, udało mi się kilka razy zmienić nazwę pakietu i skompilować poprawnie działającą aplikacje. Ale najczęściej przy wejściu ustawienia się wykłada. A przeszukałem przez systemowe wyszukiwanie ciągu znaków w pliku czy przypadkiem nie ma jeszcze jakiś odwołań do starej nazwy. Nie ma.


    Mam jeszcze jedną zagadkę. Jak dodaję klasę i kopiuje zawartość starej 1 do 1 pod nową nazwą i zmieniam wszystkie (jedno) odwołania do niej na nową nazwę to apka na zegarku się wiesza. Jak kasują starą klasę i podmieniam ją na identyczną ale utworzoną przeze mnie z tą samą nazwą i taką samą zawartością to znowu się wiesza. Jak zmienię nazwę klasy Refactorem to działa. Ręcznie zmienię  z powrotem nazwę na oryginalną to się wiesza.
    Musi być coś jeszcze o czym nie wiem? Coś w konfiguracji samego Android Studio? Np zauważyłem że klucz do kompilacji release zapisuje się w Workspace.xml. Jak tego nie skasuje to nie zmienię klucza podpisu.

    Udostępnij tę odpowiedź


    Odnośnik do odpowiedzi
    Udostępnij na innych stronach

    Jeśli chcesz dodać odpowiedź, zaloguj się lub zarejestruj nowe konto

    Jedynie zarejestrowani użytkownicy mogą komentować zawartość tej strony.

    Zarejestruj nowe konto

    Załóż nowe konto. To bardzo proste!

    Zarejestruj się

    Zaloguj się

    Posiadasz już konto? Zaloguj się poniżej.

    Zaloguj się

    • Ostatnio przeglądający   0 użytkowników

      Brak zarejestrowanych użytkowników przeglądających tę stronę.

    x