Flagi wdrażania funkcji są używane przez Google w celu zapewnienia stabilnych gałęzi kodu. Te flagi są też wymagane w przypadku niektórych typów wkładów do AOSP. Przed wdrożeniem funkcji oznaczających włączenie funkcji sprawdź, czy aby wprowadzić zmiany, musisz dodać flagę. Jeśli flaga jest konieczna, to wybór typu flagi.
Określanie użycia flagi
Aby określić, kiedy użyć flagi uruchomienia funkcji, postępuj zgodnie z tymi wskazówkami:
Jeśli wprowadzasz zmianę, która może spowodować niestabilną bazę kodu AOSP, np. dodanie nowej funkcji lub naprawienie szczególnie złożonego błędu, należy użyć funkcji flaga uruchomienia.
Jeśli natomiast wprowadzasz zmianę w kodzie, która nie powinna powodować bazy kodu, aby była niestabilna, np. przy modyfikowaniu komentarzy, nie trzeba używać flagę uruchomienia funkcji.
Określ typ flagi
Istnieją 2 typy flag: flagi aconfig i flagi kompilacji.
Flagi Aconfig
Flagi aconfig służą do oddzielania wykonywania nieopublikowanego kodu od publikowanego kodu podczas procesu testowania i publikowania. Flagi Aconfig mogą być Odczyt/zapis lub tylko do odczytu:
Flagi aconfig z możliwością odczytu i zapisu to zmienne logiczne, które możesz włączyć (ustawić na
true
) lub wyłączyć (ustawić nafalse
) w czasie wykonywania. Użyj flagi odczytu i zapisu, aby przetestować i opublikować zmiany bez wpływu na stabilność gałęzi głównej.Flagi aconfig tylko do odczytu to stałe logiczne, których nie możesz zmieniać. w środowisku wykonawczym. Możesz konwertować flagi aconfig do odczytu i zapisu na flagi aconfig tylko do odczytu , by uzyskać stabilny i gotowy do opublikowania kod.
Dodatkowo w zależności od używanego kompilatora, gdy używana jest flaga tylko do odczytu, kod, który nie jest wykonywany, może zostać wykluczony z kompilacji. Dlatego możesz użyć flag tylko do odczytu, aby ukryć kod, który nie jest gotowy do wydania.
Flagi kompilacji
Flagi kompilacji są stałymi czasowymi kompilacji (ciągami znaków) i nie można ich zmienić podczas w środowisku wykonawczym. Tych flag należy używać w sytuacjach, gdy nie można używać flag aconfig, Na przykład:
- masz skompilowany lub wstępnie utworzony fragment kodu, który chcesz uwzględnić w kompilacji;
- Chcesz wprowadzić zmiany, aby samodzielnie utworzyć system.
- Chcesz dodać flagi do zależności, aby zarządzać rozmiarem kodu.