Android - aplikace nefunguje na skutečném telefonu, ve virtuálním funguje (Rest API přes http)

Autor Oxyethanol
Publikováno 13.12.2020
Kategorie android
Stav Vyřešeno
Dobrý den,

pomocí návodu pro vývoj na androidu jsem zprovoznil RestAPI aplikaci s Volley library v Android studio.

Aplikace přístupuje na web Rest API pod lokální IP adresou přes http takto http://192.168.5.22 , nepotřebuji https, je to pouze zatím vývojová verze.

Testuji to přes AVD na virtuálním stroji s API 24 - Nougat - Android 7.0 (+ i Android 8 Oreo). Tam vše funguje. Když to pustím na skutečném telefonu, který má android 9 a dalším s android 10, tak to nefunguje - nedostanu se k datům.

Pokud použiji starší telefon s android 4.4 kitkat, tak aplikace funguje - dostanu přes rest api výpis dat.

Nevím co s tím, myslel jsem si, že je problém s oprávněním, ale to mám nastavené správně v AndroidManifest.xml :

< uses-permission android:name="android.permission.INTERNET" / >
< uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" / >

Prosím o pomoc, jsem na tom zaseknutý už několik dnů, šel jsem na to i tak, že jsem myslel, že musím řešit na novějším androidu tzv Runtime permissions, ale to vypadá na špatnou cestu. Dle všeho se na androidu o práva k internetu žádat nemusí - měla by to mít každá android aplikace automaticky když je to definováno v AndroidManifest.xml .

Díky za pomoc


Odpovědi na dotaz 3

The English language is translated by machine - the translator can modify eg cited codes = it is better to use codes from the Czech original.

Android - application isn't working on real device, on virtual device is working (Rest API over http)

Good day,

using the development instructions for android, I launched the RestAPI application with the Volley library in the Android studio.

The application accesses the Rest API website under the local IP address via http like http://192.168.5.22, I don't need https, it's just a development version yet.

I test it via AVD on a virtual machine with API 24 - Nougat - Android 7.0. Everything works there. When I run it on a real phone that has android 9 and another with android 10, it doesn't work - I can't get to the data.

If I use an older phone with android 4.4 kitkat, the application works - I get a data listing via rest api.

I don't know what to do with it, I thought there was a permission issue, but I have it set up correctly in AndroidManifest.xml:

< uses-permission android:name="android.permission.INTERNET" / >
< uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" / >

Please help, I've been stuck for a few days, I went for it even though I thought I had to deal with a newer android called Runtime permissions, but it looks like the wrong way. Apparently, an android does not have to apply for internet rights - every android application should have it automatically when it is defined in AndroidManifest.xml.

Thanks for the help

RE: Android - aplikace nefunguje na skutečném…

Autor Oxyethanol
Publikováno 15.01.2021
Kategorie android
Stav Zkontrolováno
Dobrý den,

celý problém s přístupem k internetu jsem vyřešil nakonec velice jednoduše, ale problém bylo najít řešení.

Přidal jsem do android manifestu jeden řádek:
android:usesCleartextTraffic="true"

A aplikace funguje.

Co jsem se dočetl, tak toto se musí nastavit pokud má cílový webový server pouze protokol http a nikoliv zabezpečený https.... Zavedeno to bylo od verze Android 9...


3

The English language is translated by machine - the translator can modify eg cited codes = it is better to use codes from the Czech original.

Android - application isn't working on real device, on virtual device is working (Rest API over http)

Hi,

I solved the whole problem with internet access very simply in the end, but the problem was to find a solution.

I added one line to the android manifest:
android:usesCleartextTraffic="true"

And the application works.

What I read, this must be set if the target web server has only the http protocol and not secure https .... It has been introduced since Android 9 ...
Tento web používá k poskytování služeb, personalizaci reklam a analýze návštěvnosti soubory cookie. Používáním tohoto webu s tím souhlasíte. Další informace