Nieoczekiwana wartość z nativeGetEnabledTags: 0


301

Zainstalowałem najnowszą wersję zestawu SDK (r21) i narzędzia ADT 21.0.0. Próbowałem prostego kodu i działa dobrze, ale teraz pojawia się ostrzeżenie w LogCat, które nie pojawiało się w poprzednich wersjach:

Nieoczekiwana wartość z nativeGetEnabledTags: 0

Poszukałem go i znalazłem problem 39723: Emulator spamer LogCat z komunikatem „Nieoczekiwana wartość z nativeGetEnabledTags: 0” .

Co to znaczy?


30
oznacza to błąd w najnowszym SDK. upewnij się i zaznacz gwiazdkę, aby zagłosować na jej naprawienie.
Jeffrey Blattman

Mam ten sam problem, czy powinienem obniżyć wersję aplikacji?
nowy

Odpowiedzi:


478

Właśnie wpadłem na ten problem. Aby obejść ten problem, filtruję dane LogCatwyjściowe za pomocą następującego wyrażenia w by Log Messagepolu filtru:

^(?!.*(nativeGetEnabledTags)).*$ 

W przeciwnym razie jest tak spamowany, że prawie bezużyteczny.

Zgodnie z sugestią Laksha , jeśli chcesz to zawsze filtrować bez konieczności zapisywania go zawsze na Search for messagespolu:

  1. Idź do swojego Logcat
  2. W Saved Filtersczęści po lewej stronie kliknij Edit selected logcat filter(Jeśli zapisane filtry nie są widoczne, kliknij Wyświetl widok zapisanych filtrów w Logcat)
  3. Tam w polu Według wiadomości dziennika wpisz ^(?!.*(nativeGetEnabledTags)).*$.

powiedz mi, jak napisać to w Dzienniku.
Hardik Vora,

67
Przejdź do swojego Logcata, aw Saved Filtersczęści kliknij Edit selected logcat filter. Tam w by Log Messagepolu wpisz ^(?!.*(nativeGetEnabledTags)).*$. Jeśli Saved Filtersnie jest widoczny, kliknij Display saved filters viewLogcat.
Laksh,

To miłe obejście dla tych z nas, którzy używają obrazów Intela (w przeciwieństwie do ARM, gdzie powinno to zostać naprawione)
MattD

Wciąż uczę się wyrażeń regularnych i trochę mnie to zagubiło. Rozumiem składniki (początek linii, negatywne spojrzenie w przyszłość, dowolne znaki, literał łańcuchowy, dowolne znaki, koniec linii), ale nie rozumiem, dlaczego niektóre z nich są konieczne. Nie regex zwrócić dowolną wiersz zawierający spotkanie, więc dlaczego potrzebujemy ^, .*i $? Dlaczego nie tylko (?!nativeGetEnabledTags)? (ps to nie działa)
DavidS

Może myślisz o tym, grepco jest miłe i domyślnie przeszukuje wiersz. Odpowiedź na: „Czy wyrażenie regularne nie zwraca żadnego wiersza zawierającego dopasowanie ...” brzmi NIE.
dcow

59

Jest to błąd w emulatorze Obraz systemu dla API 17.

W tej chwili obejścia są następujące:

Jeśli NIE potrzebujesz interfejsu API na poziomie 17

  • Użyj emulatora z API 16 (lub niższym) ...
  • ... lub nowszy (na przykład API 19, przetestowany również w celu rozwiązania problemu).

Jeśli potrzebujesz interfejsu API na poziomie 17

  • Użyj prawdziwego urządzenia: Nexus 4, Nexus 7, Nexus 10.
  • Użyj filtru LogCat zaproponowanego przez Hendrik. Będziesz jednak musiał edytować każdy filtr, który posiadasz (jeśli chcesz je wszystkie naprawić).

3
Korzystam z Nexus 7 Real Device, ale błąd nadal pojawia się w Logcat ... Obejście Hendrika jest najlepsze na razie ..
Laksh

1
To samo z Nexusem 4 i Galaxy Nexusem z 4.2.1. Chociaż obejście jest nieco ograniczone: inne dzienniki zwykle znikają dość szybko.
3c71

Wygląda na to, że te rzeczywiste urządzenia mają również obraz błędnego systemu. Wydaje mi się, że w tym przypadku jedynym rozwiązaniem tego problemu jest filtr dziennika.
Iñigo,

Nie jest potrzebny, jest niższy. Miałem ten sam problem, uruchamiam emulator z Androidem 4.4.2 API Poziom 19 i to również rozwiązało problem.
Xavi Montero

18

Link, o którym mowa, zawiera odpowiedź. Jest to błąd wprowadzony w najnowszej wersji narzędzi. W komentarzach uzupełniających możesz przeczytać, że przedstawiciel Google mówi, że poprawka jest w drodze.


15

Zaktualizuj ARM EABI v7a System Imageod, Android SDK Managera ostrzeżenie nie będzie więcej widoczne !! :)

Tak. Działa to tylko dla obrazu systemu ARM EABI, a nie dla obrazu Intel.

Aktualizacja

Wygląda na to, że dostępna jest aktualizacja Intel x86 Atom System Imagedla API 18, która rozwiązuje problem (chociaż nie próbowałem tego). A, linkaby ręcznie zainstalować obraz systemu. Oczywiście jest również dostępny w Android SDK Manager.

Ale to tylko dla Androida 4.3. Programiści 4.2.x mogą nadal czekać na poprawkę ..!


Nie ma wpływu, nie przejmuj się
Adam

1
Ma efekt! Po aktualizacji obrazu systemu błąd nie jest widoczny. Jeśli w twoim przypadku nie ma efektu, spróbuj również zaktualizować swój adt plugini android sdk.
Laksh

7
Nadal widzę to na obrazie wywiadu.
Kevlar,

2
Aktualizacja obrazu systemu ARM EABI m7a działała dla mnie. Dziękuję Ci!
TrippinBilly,

7
To nie jest rozwiązanie dla obrazu Intel . Oczywiście ARM EABI nie jest dla Intela.
Petr Gladkikh

5

Problem z obrazami Intel x86 Atom i „nativeGetEnabledTags: 0” został rozwiązany w wydaniu obrazu Intel x86 Atom x86 dla systemu Android 4.3 (API 18). Właśnie to przetestowałem i mogę to potwierdzić.

W przypadku obrazów ARM zostało to naprawione jakiś czas temu, wiem ...


4

Ponieważ te wiadomości są oznaczone Tracetagiem, możesz użyć prostszego wyrażenia, aby je filtrować by Log Tag:

^(?!Trace)

Otóż ​​to.

Przy okazji, te wiadomości widzę także na prawdziwym urządzeniu (Fly IQ4410).


4

Otrzymywałem wiele podobnych wiadomości, więc potrzebowałem lepszych filtrów. Dodaj te filtry do LogCat:

Według tagu dziennika:

^(?!.*(GN_FW_TextView|GN_FW_Editor|SurfaceTextureClient|skia|AbsListView|Provider/Settings|InputMethodManager|jdwp)).*$

Według wiadomości dziennika:

^(?!.*(nativeGetEnabledTags)).*$

1

Dodałem ^(?!.*(nativeGetEnabledTags)).*$ filtr, ale widać, jak mało mi to pomaga:

wprowadź opis zdjęcia tutaj

z 1157 jest filtrowane kilka, a 799 ominęło ten sam współczynnik, ale nieco większe liczby:

wprowadź opis zdjęcia tutaj

Musiałem dodać „SpamFilter”, aby móc korzystać z Logcat:

wprowadź opis zdjęcia tutaj

według Log Tag:

 ^(?!Trace|ADB_SERVICES|BufferQueue|wpa_supplican|SurfaceFlinger|Settings/BW|Bluetooth HS/HF)

według nazwy aplikacji:

^(?!com.android.systemui|system_process)

Dla mnie to sprawiło, że Logcat był trochę użyteczny.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.