cleartext HTTP traffic to not permitted
На 9ом андроиде запрос в php даёт ошибку
cleartext HTTP traffic to not permitted
Все пишут, что решается это добавлением в манифест разрешения
android:usesCleartextTraffic="true" (другие схожие решения также выносят приложение)
Но в этом случае приложение падает без каких либо ошибок. Как можно отыскать или проблему или решение этого?
Спасибо.
Лог: https://gist.github.com/kofnal/b26ba7cb95ac48541742eff81fb55509
--------- beginning of crash E/AndroidRuntime: FATAL EXCEPTION: Thread-10 Process: market5.project.market5, PID: 10342 java.lang.NoClassDefFoundError: Failed resolution of: Lorg/apache/http/ProtocolVersion; at com.android.volley.toolbox.HurlStack.performRequest(HurlStack.java:109) at com.android.volley.toolbox.BasicNetwork.performRequest(BasicNetwork.java:96) at com.android.volley.NetworkDispatcher.run(NetworkDispatcher.java:112) Caused by: java.lang.ClassNotFoundException: Didn't find class "org.apache.http.ProtocolVersion" on path: DexPathList[[zip file "/data/app/market5.project.market5-Xv8APaI1vVwS-UfQyuB5OA==/base.apk", zip file "/data/app/market5.project.market5-Xv8APaI1vVwS-UfQyuB5OA==/split_lib_dependencies_apk.apk", zip file "/data/app/market5.project.market5-Xv8APaI1vVwS-UfQyuB5OA==/split_lib_resources_apk.apk", zip file "/data/app/market5.project.market5-Xv8APaI1vVwS-UfQyuB5OA==/split_lib_slice_0_apk.apk", zip file "/data/app/market5.project.market5-Xv8APaI1vVwS-UfQyuB5OA==/split_lib_slice_1_apk.apk", zip file "/data/app/market5.project.market5-Xv8APaI1vVwS-UfQyuB5OA==/split_lib_slice_2_apk.apk", zip file "/data/app/market5.project.market5-Xv8APaI1vVwS-UfQyuB5OA==/split_lib_slice_3_apk.apk", zip file "/data/app/market5.project.market5-Xv8APaI1vVwS-UfQyuB5OA==/split_lib_slice_4_apk.apk", zip file "/data/app/market5.project.market5-Xv8APaI1vVwS-UfQyuB5OA==/split_lib_slice_5_apk.apk", zip file "/data/app/market5.project.market5-Xv8APaI1vVwS-UfQyuB5OA==/split_lib_slice_6_apk.apk", zip file "/data/app/market5.project.market5-Xv8APaI1vVwS-UfQyuB5OA==/split_lib_slice_7_apk.apk", zip file "/data/app/market5.project.market5-Xv8APaI1vVwS-UfQyuB5OA==/split_lib_slice_8_apk.apk", zip file "/data/app/market5.project.market5-Xv8APaI1vVwS-UfQyuB5OA==/split_lib_slice_9_apk.apk"],nativeLibraryDirectories=[/data/app/market5.project.market5-Xv8APaI1vVwS-UfQyuB5OA==/lib/arm, /system/lib, /system/vendor/lib]] at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:134) at java.lang.ClassLoader.loadClass(ClassLoader.java:379) at java.lang.ClassLoader.loadClass(ClassLoader.java:312) at com.android.volley.toolbox.HurlStack.performRequest(HurlStack.java:109) at com.android.volley.toolbox.BasicNetwork.performRequest(BasicNetwork.java:96) at com.android.volley.NetworkDispatcher.run(NetworkDispatcher.java:112) Suppressed: java.io.IOException: No original dex files found for dex location (arm) /data/app/market5.project.market5-Xv8APaI1vVwS-UfQyuB5OA==/split_lib_resources_apk.apk at dalvik.system.DexFile.openDexFileNative(Native Method) at dalvik.system.DexFile.openDexFile(DexFile.java:354) at dalvik.system.DexFile.(DexFile.java:101) at dalvik.system.DexFile.(DexFile.java:75) at dalvik.system.DexPathList.loadDexFile(DexPathList.java:394) at dalvik.system.DexPathList.makeDexElements(DexPathList.java:354) at dalvik.system.DexPathList.(DexPathList.java:164) at dalvik.system.BaseDexClassLoader.(BaseDexClassLoader.java:74) at dalvik.system.BaseDexClassLoader.(BaseDexClassLoader.java:65) at dalvik.system.PathClassLoader.(PathClassLoader.java:64) at com.android.internal.os.ClassLoaderFactory.createClassLoader(ClassLoaderFactory.java:73) at com.android.internal.os.ClassLoaderFactory.createClassLoader(ClassLoaderFactory.java:88) at android.app.ApplicationLoaders.getClassLoader(ApplicationLoaders.java:74) at android.app.ApplicationLoaders.getClassLoader(ApplicationLoaders.java:40) at android.app.LoadedApk.createOrUpdateClassLoaderLocked(LoadedApk.java:766) at android.app.LoadedApk.getClassLoader(LoadedApk.java:849) at android.app.LoadedApk.getResources(LoadedApk.java:1090) at android.app.ContextImpl.createAppContext(ContextImpl.java:2563) at android.app.ActivityThread.handleBindApplication(ActivityThread.java:6176) at android.app.ActivityThread.access$1200(ActivityThread.java:241) at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1807) at android.os.Handler.dispatchMessage(Handler.java:106) at android.os.Looper.loop(Looper.java:214) at android.app.ActivityThread.main(ActivityThread.java:7156) at java.lang.reflect.Method.invoke(Native Method) E/AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:494) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:975) I/Process: Sending signal. PID: 10342 SIG: 9
Ответы (2 шт):
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="ex.ex.ex">
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<application
...
android:usesCleartextTraffic="true"
>
<uses-library android:name="org.apache.http.legacy" android:required="false" />
<activity android:name=".MainActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
...
</application>
</manifest>
Интернет разрешаем в манифесте
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
и далее добавляем файл по пути
**res** -> **xml** -> network_security_config.xml
содержимое
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<base-config cleartextTrafficPermitted="true" />
</network-security-config>
под тегом application прописываем путь
<application
android:networkSecurityConfig="@xml/network_security_config"
android:usesCleartextTraffic="true"
>