Avatar ·

كيفية السماح بجميع أنواع اتصالات الشبكة HTTP و HTTPS في Android 9 (Pie) على Kotlin؟

مرحبًا! أقوم بتطوير تطبيق على Kotlin لنظام Android، وواجهت مشكلة عند الاختبار على جهاز يعمل بنظام Android 9 (Pie). يرسل تطبيقي طلبات HTTP إلى خادم يستخدم كلاً من HTTPS و HTTP (للبيئة الاختبارية). في Android 8 والإصدارات الأقل، كان كل شيء يعمل بشكل رائع، لكن على Android 9 (API 28) أحصل على خطأ "Cleartext HTTP traffic to my-server.com not permitted". إليك كيفية إرسال الطلب باستخدام Retrofit: ```kotlin interface ApiService { @GET("api/data") suspend fun getData(): Response } val retrofit = Retrofit.Builder() .baseUrl("http://my-test-server.com/") .addConverterFactory(GsonConverterFactory.create()) .build() ``` أفهم أن Google شددت متطلبات الأمان في Android 9، لكني بحاجة للسماح مؤقتًا بجميع أنواع الاتصالات لأغراض التصحيح. جربت إضافة `android:usesCleartextTraffic="true"` في البيان (manifest) لكن ذلك لم يساعد. كما سمعت عن ملف network_security_config.xml، لكني لا أعرف كيف