Trong khi URL.openStream sẽ hoạt động, bạn nên sử dụng thư viện Apache HttpClient đi kèm với Android cho HTTP. Trong số các lý do khác, bạn có thể sử dụng mã hóa nội dung (gzip) với nó, và điều đó sẽ làm cho việc chuyển tập tin văn bản nhỏ hơn nhiều (tuổi thọ pin tốt hơn, ít sử dụng hơn) và nhanh hơn.
Có nhiều cách khác nhau để sử dụng HttpClient và một số người trợ giúp tồn tại để bao bọc mọi thứ và làm cho nó dễ dàng hơn. Xem bài đăng này để biết thêm chi tiết về điều đó: Android project using httpclient --> http.client (apache), post/get method (và lưu ý HttpHelper tôi đã bao gồm ở đó sử dụng gzip, mặc dù không phải tất cả đều làm).
Ngoài ra, bất kể bạn sử dụng phương pháp nào để truy xuất dữ liệu qua HTTP, bạn sẽ muốn sử dụng AysncTask (hoặc Trình xử lý) để đảm bảo không chặn chuỗi giao diện người dùng trong khi thực hiện cuộc gọi mạng. Và lưu ý rằng bạn không nên sử dụng URL.openStream (mà không cần thiết lập một số cấu hình, như timeouts), mặc dù nhiều ví dụ cho thấy, bởi vì nó sẽ chặn vô thời hạn nếu bạn không có máy chủ (theo mặc định, nó có không có thời gian chờ): URL.openStream() Might Leave You Hanging.
Nguồn
2010-05-27 16:33:48
Làm cách nào để bạn phân phối tệp văn bản trên máy chủ? Thông qua HTTP? – aioobe
Vâng, nếu tôi truy cập http://www.mysite.com/thefile.txt, tôi có thể thấy văn bản. Trên iPhone tôi có thể kết nối với tập tin và nạp nó vào một String, sau đó làm bất cứ điều gì tôi muốn với nó. – Chris