Jak naprawić błąd NET::ERR_CLEARTEXT_NOT_PERMITTED? (5 metod)

Opublikowany: 2023-12-15

Czy chcesz naprawić błąd NET::ERR_CLEARTEXT_NOT_PERMITTED? Zatem trafiłeś na właściwy post.

Ten błąd NET::ERR_CLEARTEXT_NOT_PERMITTED jest charakterystyczny dla użytkowników Androida i wiemy, że Android ma ogromny udział w rynku w porównaniu do innych mobilnych systemów operacyjnych.

Oznacza to, że nie jesteś jedyną ofiarą tego konkretnego błędu, ale może być wielu użytkowników takich jak Ty, którzy czasami spotkali się z tym komunikatem o błędzie lub są podatni na jego działanie.

Ale nie musisz się martwić. W tym poście postaramy się rozwiać wszystkie Twoje wątpliwości dotyczące tego błędu i pomóc Ci dokładnie zrozumieć, co poszło nie tak i co musisz zrobić, aby to naprawić.

Bądź więc czujny i czytaj dalej ten obszerny post do końca.


Spis treści
Jak naprawić błąd Androida NET::ERR_CLEARTEXT_NOT_PERMITTED?
Co to jest błąd NET::ERR_CLEARTEXT_NOT_PERMITTED?
Co to jest widok sieciowy Androida?
Co powoduje błąd NET::ERR_CLEARTEXT_NOT_PERMITTED?
Streszczenie
Często Zadawane Pytania

Jak naprawić błąd Androida NET::ERR_CLEARTEXT_NOT_PERMITTED?

Teraz w tej sekcji omówimy rozwiązywanie problemów z błędem NET::ERR_CLEARTEXT_NOT_PERMITTED . W tym celu, jeśli jesteś programistą Androida, będziesz musiał uzyskać dostęp do swojej aplikacji na Androida.

  • Włącz ruch w postaci zwykłego tekstu, modyfikując plik Androidmanifest.xml
  • Dodanie określonej witryny do białej listy przy użyciu pliku „network_security_config.Xml”
  • Przekierowanie HTTP na HTTPS dla Nginx
  • Wymuś, aby Twoja witryna WordPress korzystała z protokołu HTTPS
  • Załaduj witrynę w nowoczesnych przeglądarkach

1. Włącz ruch w postaci zwykłego tekstu, modyfikując plik Androidmanifest.xml

Pierwszą metodą rozwiązywania problemów, którą możesz zastosować, jest włączenie ruchu w postaci zwykłego tekstu poprzez modyfikację pliku androidmanifest.xml. Każda aplikacja na Androida ma plik Androidmanifest.xml, który zawiera wszystkie informacje związane z aplikacją wymagane przez system operacyjny Android i inne platformy Android.

Ta konkretna metoda omija rygorystyczne wytyczne Google dotyczące protokołu HTTPS, dlatego może być rozwiązaniem tymczasowym, chyba że witryna, którą próbujesz załadować, zostanie przeniesiona do ruchu szyfrowanego.

Aby włączyć lub zezwolić na Clear Traffic, wystarczy dodać atrybut „android:usescleartexttraffic” i ustawić jego wartość na „true” w tagu „<application>”.

Aby nawigować i edytować plik Androidmanifest.xml, wykonaj proste kroki podane poniżej:

Krok 1: Najpierw musisz otworzyć projekt na Androida lub uzyskać dostęp do pliku .apk aplikacji. Istnieją różne sposoby otwierania i edytowania projektu na Androida, ale dla wygody użyj Android Studio.

Krok 2: Kiedy możesz otworzyć projekt Androida w Android Studio, przejdź do pliku „AndroidManifest.xml” znajdującego się w strukturze katalogów Twojego projektu.

Krok 3: Gdy znajdziesz plik „AndroidManifest.xml”, kliknij, aby otworzyć go w edytorze tekstu.

Krok 4: Teraz poszukaj tagu „<application>” i dodaj ten atrybut „android:usescleartexttraffic”

  • Znajdź plik „AndroidManifest.xml” w strukturze katalogów projektu.
  • Otwórz plik „AndroidManifest.xml” w edytorze tekstu lub w środowisku IDE.
  • Znajdź i dodaj następujący wiersz kodu „ android:usesCleartextTraffic=”true ” w tagach otwierających i zamykających aplikację.

<application
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
android:usesCleartextTraffic=”true”
</application>

Jeśli atrybut jest już ustawiony na False, zmień go na True.

Krok 5: Następnie zapisz plik i gotowe.


Uwaga: pamiętaj, że powyższa metoda nie jest zdecydowanie zalecana, ponieważ omijasz zabezpieczenia i zezwalasz na niezabezpieczony ruch do widoku internetowego aplikacji na Androida. Może to spowodować ujawnienie poufnych informacji użytkownika osobom trzecim. Dlatego ta metoda najlepiej nadaje się do celów testowych lub programistycznych.


2. Dodanie określonej witryny do białej listy za pomocą pliku „network_security_config.Xml”

Oprócz tego, co widziałeś w poprzedniej metodzie. To rozwiązanie koncentruje się na umożliwieniu ruchu w postaci zwykłego tekstu do określonych zaufanych domen.

W porównaniu z poprzednią metodą ta metoda jest całkiem bezpieczna i pozwala jedynie na linkowanie bezpiecznych stron internetowych w celu załadowania ich w przeglądarce aplikacji na Androida.

Należy pamiętać, że można wypróbować tylko jedną z tych dwóch metod: włączyć ruch w postaci zwykłego tekstu dla wszystkich witryn lub aplikacji lub zezwolić tylko na określone domeny lub aplikacje.
Jeśli bezpieczeństwo jest Twoją największą troską, lepiej będzie, jeśli zastosujesz metodę opisaną poniżej:

Pierwszą rzeczą, którą musisz zrobić, to utworzyć plik network_security_config.Xml. W tym celu musisz otworzyć projekt Androida w Android Studio i przejść do katalogu „res”, podążając tą ścieżką app/src/main/res/xml/network_security_config.xml.

Teraz utwórz nowy plik o nazwie „ network_security_config.xml ” w katalogu res i dodaj do niego następujący wiersz kodów.

<?xml version=”1.0″ encoding=”utf-8″?>
<network-security-config>
<base-config cleartextTrafficPermitted=”true”>
<trust-anchors>
<certificates src=”system” />
</trust-anchors>
</base-config>
<domain-config cleartextTrafficPermitted=”true”>
<domain>insert_name_of_domain</domain>
<domain includeSubdomains=”true”>insert_sub_domain_including_ip_addresses</domain>
</domain-config>
</network-security-config>

Umożliwi to tylko określonej domenie używanie czystego tekstu. Możesz jednak dodać wiele domen lub adresów URL, korzystając z elementów „domena zawiera poddomeny”. Jednak ze względów bezpieczeństwa lepiej byłoby dodać tylko te domeny lub adresy URL, którym ufasz.

Teraz zapisz plik „ network_security_config.xml ” i zaktualizuj plik „AndroidManifest.xml”, aby działał.

Aby to zrobić, otwórz plik „ AndroidManifest.xml ”, poszukaj znaczników podelementów aplikacji i wstaw między nimi następujący wiersz kodów.

<?xml version=”1.0″ encoding=”utf-8″?>
<manifest …>
<uses-permission android:name=”android.permission.INTERNET” />
<application

android:networkSecurityConfig=”@xml/network_security_config” …>

</application>
</manifest>

Zapisz i zamknij plik „ AndroidManifest.xml ”. To wszystko, teraz możesz załadować stronę HTTP w Webview.


Przeczytaj: 12 najlepszych metod naprawienia błędu NET::ERR_CERT_DATE_INVALID


3. Przekierowanie HTTP na HTTPS dla Nginx

Jeśli chcesz, aby serwery internetowe Nginx nie wyświetlały komunikatu o błędzie „ NET::ERR_CLEARTEXT_NOT_PERMITTED ” w WebViw. Możesz wymusić na nich korzystanie z protokołu HTTPS i ustanowienie bezpiecznego połączenia pomiędzy serwerem a klientem.

Aby było to możliwe, wykonaj poniższe kroki:

  • Najpierw musisz otworzyć plik konfiguracyjny Nginx dla swojej witryny, podążając jedną z tych ścieżek: /etc/nginx/conf.d lub etc/nginx/nginx.conf.
  • Zwróć uwagę na blok serwera wyświetlający nazwę Twojej witryny i wstaw następujący wiersz kodów.

<VirtualHost *:80>
ServerName your_website.com # Replace with your domain name
# Redirect HTTP to HTTPS
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]
</VirtualHost>

Ten kod umożliwi przekierowanie z HTTP na HTTPS. Zapisz plik, aby zmiany zaczęły obowiązywać.

Teraz sprawdź, czy plik konfiguracyjny działa, wykonując polecenie „apachectl configtest”.

Jeśli wszystko okaże się działać, musisz zrestartować serwer Apache, wykonując poniższe polecenie.

# Ubuntu, Debian
sudo service apache2 restart
# CentOS, Fedora
sudo systemctl restart httpd

4. Zmuś witrynę WordPress do korzystania z protokołu HTTPS

Jedną z najbezpieczniejszych i wysoce zalecanych metod usuwania błędu NET::ERR_CLEARTEXT_NOT_PERMITTED, którą możesz zastosować, jest wymuszenie lub skonfigurowanie witryny internetowej korzystającej z protokołu HTTP zamiast HTTPS. Nawet wyszukiwarka Google uważa bezpieczne strony internetowe za jeden z głównych czynników rankingowych w SERP.

Możesz sprawdzić nasze dedykowane blogi na temat tej techniki przekierowania. Po prostu zastosuj dowolną z wybranych metod i wyeliminuj błąd NET::ERR_CLEARTEXT_NOT_PERMITTED.

  • Jak działa adres URL przekierowania WordPress? 5 najlepszych metod
  • Kompletny przewodnik na temat migracji HTTP do HTTPS w WordPress

5. Załaduj witrynę w nowoczesnych przeglądarkach

Jeśli żadna z powyższych metod nie działa dla Ciebie lub czujesz się na tyle leniwy, aby zastosować się do powyższych metod. Wystarczy wejść na stronę lub domenę w dowolnej nowoczesnej przeglądarce, którą posiadasz, np. Chrome lub Firefox.

Jednak obecnie, jeśli spróbujesz załadować witrynę HTTP w tych przeglądarkach, możesz napotkać komunikat o błędzie „połączenie, nie prywatne” lub „znak połączenia niezabezpieczonego” na pasku adresu.

Nie oznacza to jednak, że jesteś wolny od błędu NET::ERR_CLEARTEXT_NOT_PERMITTED firmy Samsung , ale mimo to jesteś narażony na ryzyko bezpieczeństwa, a wszelkie dane udostępniane w witrynie nadal są zapisane w postaci zwykłego tekstu.

Dlatego należy unikać udostępniania lub przekazywania jakichkolwiek wrażliwych danych osobowych witrynom korzystającym z protokołu HTTP. Jest to główny powód, dla którego Google domyślnie go wyłączył.


Przeczytaj: Jak naprawić błąd NET::ERR_CERT_AUTHORITY_INVALID? (10 rozwiązań)


Co to jest błąd NET::ERR_CLEARTEXT_NOT_PERMITTED?

NET::ERR_CLEARTEXT_NOT_PERMITTED to komunikat o błędzie wyświetlany w przeglądarce internetowej systemu Android, gdy aplikacja na Androida próbuje załadować informacje niezaszyfrowane lub HTTP.

Nie należy błędnie rozumieć tego błędu w przypadku jakichkolwiek usterek technicznych lub problemów. Co zaskakujące, gdy próbujesz załadować ten sam adres URL lub załadować te same informacje w dowolnej przeglądarce internetowej. Być może nie napotkasz żadnych błędów.

Ponieważ w aplikacjach na Androida wyświetla się komunikat NET::ERR_CLEARTEXT_NOT_PERMITTED, możesz również źle zrozumieć, że coś jest nie tak z samą aplikacją na Androida. Można jednak łatwo ominąć lub naprawić ten błąd.

Większość dostępnych rozwiązań jest przeznaczona dla programistów Androida i administratorów sieci. Jeśli jednak jesteś użytkownikiem końcowym, oprócz ładowania adresu URL w przeglądarkach internetowych możesz zastosować tylko kilka metod rozwiązywania problemów.


Co to jest widok sieciowy Androida?

Jeśli jesteś użytkownikiem końcowym, możesz nie mieć pojęcia o widoku internetowym Androida. Pomożemy Ci sprawić, że będzie to łatwe do zrozumienia.

Jest to specjalna funkcja systemu operacyjnego Android, która umożliwia ładowanie stron internetowych w aplikacjach na Androida bez korzystania z zewnętrznych przeglądarek. Umożliwia także programistom tworzenie aplikacji hybrydowych, które stanowią kombinację funkcji natywnych i internetowych.

Oprócz tych wszystkich funkcji jedyną wadą widoku sieciowego jest to, że nie udostępnia on takiej liczby funkcji, jakie można uzyskać w przeglądarce.

Błąd NET::ERR_CLEARTEXT_NOT_PERMITTED jest specyficzny dla aplikacji na Androida korzystających z widoku internetowego. Nie pojawi się taki błąd podczas przeglądania serwisu poprzez przeglądarkę np. Chrome czy Firefox.

Jeśli jednak odwiedzisz niezabezpieczoną witrynę internetową lub witrynę zbudowaną w języku PHP, możesz napotkać błąd innego typu „Błąd Twoje połączenie nie jest prywatne”.


Co powoduje błąd NET::ERR_CLEARTEXT_NOT_PERMITTED?

Pojawił się błąd NET::ERR_CLEARTEXT_NOT_PERMITTED , ponieważ Twoja aplikacja na Androida próbowała załadować niezaszyfrowaną zawartość internetową za pomocą zwykłego tekstu. Jednak od wersji Androida 9 (Pie) Google wyłączyło transmisję niezaszyfrowanych danych lub ładowanie stron internetowych HTTP w ich domyślnej konfiguracji.

Teraz ta konfiguracja ma zastosowanie tylko do aplikacji korzystających z Android View. Jest to główny powód, dla którego ten błąd nie wystąpi w przeglądarkach nawet w systemie operacyjnym Android, ale w aplikacjach na Androida.

Głównym celem Google jest zapewnienie użytkownikom bezpiecznego środowiska, w którym będą mogli chronić swoje poufne informacje przed osobami trzecimi. Google zachęca programistów Androida, aby w swoich widokach internetowych udostępniali wyłącznie witryny zgodne z protokołem HTTPS, a nie niezabezpieczone połączenia HTTP. Ponieważ protokół HTTPS ma różne zalety, takie jak:

  • Zwiększone bezpieczeństwo aplikacji na Androida
  • Zaufanie i pewność użytkownika
  • Integralność danych
  • Uwierzytelnianie
  • Korzyści SEO
  • Poufność dla Użytkowników i nie tylko.

Streszczenie

Jeśli w przeglądarce internetowej aplikacji na Androida pojawi się błąd NET::ERR_CLEARTEXT_NOT_PERMITTED, oznacza to po prostu, że aplikacja próbuje załadować niezabezpieczoną witrynę HTTP. Ze względów bezpieczeństwa Google umożliwił blokowanie takich niezabezpieczonych stron internetowych, które mogą potencjalnie naruszyć poufne informacje użytkownika.

Jeśli jesteś programistą Androida lub administratorem witryny, postępuj zgodnie z metodami podanymi poniżej:

  • Włącz ruch w postaci zwykłego tekstu, modyfikując plik Androidmanifest.xml
  • Dodanie określonej witryny do białej listy przy użyciu pliku „network_security_config.Xml”
  • Przekierowanie HTTP na HTTPS dla Nginx
  • Wymuś, aby Twoja witryna WordPress korzystała z protokołu HTTPS
  • Załaduj witrynę w nowoczesnych przeglądarkach

Jeśli masz jakieś pytania lub sugestie dotyczące tego posta, daj nam znać w sekcji komentarzy poniżej.


Często Zadawane Pytania

Co oznacza Err_cleartext_not_permitted?

NET::ERR_CLEARTEXT_NOT_PERMITTED to komunikat o błędzie wyświetlany w przeglądarce internetowej systemu Android, gdy aplikacja na Androida próbuje załadować informacje niezaszyfrowane lub HTTP.

Co to jest błąd w postaci zwykłego tekstu, który nie jest dozwolony w systemie Android?

Błąd „Zwykły tekst niedozwolony” w systemie Android zwykle pojawia się, gdy aplikacja próbuje wykonać żądanie sieciowe za pośrednictwem niezabezpieczonego połączenia HTTP (czysty tekst), a nie bezpiecznego połączenia HTTPS. Ten błąd to funkcja zabezpieczeń wprowadzona w systemie Android, która ma zachęcić programistów do korzystania z bezpiecznych połączeń do przesyłania danych w sieci.

Jak naprawić błąd err_cleartext_not_permitted Androida

Jeśli jesteś programistą Androida lub administratorem witryny, postępuj zgodnie z metodami podanymi poniżej:
1. Włącz ruch w postaci zwykłego tekstu, modyfikując plik Androidmanifest.xml
2. Dodanie określonej witryny do białej listy za pomocą pliku „network_security_config.Xml”
3. Przekierowanie HTTP na HTTPS dla Nginx
4. Zmuś witrynę WordPress do korzystania z protokołu HTTPS
5. Załaduj witrynę w nowoczesnych przeglądarkach