9

I'm working in one project and I'm stuck in the implementation of login/signup page. When I try to implement the code it gives me the error Cleartext HTTP traffic to 192.168.1.130 not permitted. I checked the ipconfig and that was my IPv4 so I have added 192.168.1.130, but I have also checked 127.0.0.1, but that one doesn't work either.

I have tried implementing <domain includeSubdomains="true">192.168.1.130</domain> however that one doesn't work(implementation of android:usesCleartextTraffic="true" doesn't work either).

I'm using XAMPP for the back-end and if I run php code everything works good, so no problem with that. Problem is in the Android Studio(I'm using Kotlin).

For the Emulator I'm using Genymotion emulator(it uses VirtualBox).

Here's the code for the button that takes the url. I have checked everything, but still nothing achieved.

login.setOnClickListener {
            var url = "http://192.168.1.130/php/login.php?mobile=" + login_user.text.toString() +
                    "&password=" + login_password.text.toString()
Nijat Mursali
  • 930
  • 1
  • 8
  • 20

3 Answers3

31

To do this in Android 9 Pie you will have to set a networkSecurityConfig in your Manifest application tag like this:

<?xml version="1.0" encoding="utf-8"?>
<manifest ... >
     <application android:networkSecurityConfig="@xml/network_security_config">
     </application>
</manifest>

Then create a xml file named network_security_config just like the way you have named it in the Manifest and the content of your file should be like thisto enable all requests without encryptions:

<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
    <base-config cleartextTrafficPermitted="true">
        <trust-anchors>
            <certificates src="system" />
        </trust-anchors>
    </base-config>
</network-security-config>

If this is not working, please make your request from a secure domain(HTTPS).

Shafi Muhammed
  • 433
  • 6
  • 12
9

Add this into your Manifest

android:usesCleartextTraffic="true"

like this..

<application
    android:icon="@mipmap/ic_launcher"
    android:usesCleartextTraffic="true"
    android:label="@string/app_name"
    android:theme="@style/AppTheme">
...
 </application>
Pavel Smirnov
  • 4,611
  • 3
  • 18
  • 28
Rahul
  • 219
  • 1
  • 10
4

I also faced the same issue recently with android 9 pie.

I added in my Manifest

android:usesCleartextTraffic="true"
tools:ignore="UnusedAttribute"

second line is mentioned is to ignore the warning for SDK less than 23.

Padmini S
  • 143
  • 1
  • 10