Hôm qua tôi đã nhận được bản nâng cấp mới cho bản xem trước Android N. Kể từ khi tôi nâng cấp, tôi không thể khởi động ứng dụng của mình nữa.Lưu lượng truy cập HTTP Cleartext tới myserver.com không được phép trên bản xem trước Android N
java.io.IOException: Cleartext HTTP traffic to myserver.com not permitted
Tôi đã cố gắng để thiết lập usesCleartextTraffic
để true
trong biểu hiện hoặc để thêm một network_security_config.xml
<?xml version="1.0" encoding="utf-8"?>
<network-security-config>
<domain-config cleartextTrafficPermitted="true">
<domain includeSubdomains="true">myserver.com</domain>
</domain-config>
</network-security-config>
Cả đã làm việc. Bất kỳ ý tưởng về những gì đang xảy ra ở đó?
Khi tôi cố gắng xác định networkSecurityConfig trong biểu hiện, tôi nhận được một lỗi biên dịch
Error:(35) No resource identifier found for attribute 'networkSecurityConfig' in package 'android'
Không thực sự chắc chắn lý do tại sao. Các tập tin là có và tất cả mọi thứ có vẻ tốt.
Tìm thấy đề xuất this trong trình theo dõi vấn đề Android từ Google. Họ đề nghị di chuyển định nghĩa network_security_config
sang số meta-data
. Tôi vẫn nhận được ngoại lệ tương tự mặc dù.
Để chắc chắn, bạn thực sự đã nói với ứng dụng của mình sử dụng tệp cấu hình? ví dụ. 'android: networkSecurityConfig =" @ xml/network_security_config "' trong tệp kê khai ứng dụng của bạn. – vcsjones
Tôi dường như không có vấn đề này, ít nhất là trong các ứng dụng tôi chỉ cần thử nghiệm. Lưu lượng truy cập HTTP văn bản thuần túy là tốt. Bạn có thể thử gỡ cài đặt hoàn toàn và cài đặt lại ứng dụng. Ngoài ra, bạn đang sử dụng 'StrictMode'? Có lẽ ['detectCleartextNetwork()'] (https://developer.android.com/reference/android/os/StrictMode.VmPolicy.Builder.html#detectCleartextNetwork()) đang được bật – CommonsWare
Tôi đã gỡ cài đặt và cài đặt lại nhiều lần đã và tôi không sử dụng StrictMode. Tôi không thể xác định networkSecurityConfig trong tệp kê khai. Tôi sẽ cập nhật câu hỏi – SimonSays