2010-09-25 34 views
6

Tôi cố gắng để sử dụng mã bằng văn bản và được tải lên bởi Fedor gởi bài trong mục này (mã Nguồn: http://open-pim.com/tmp/LazyList.zip) Lazy load of images in ListViewAndroid ứng dụng: cho phép SocketException bị từ chối (Không có tập tin hoặc thư mục)

dự án Fedor của hoạt động tốt, nhưng khi tôi cố gắng để thích ứng với mã để dự án của tôi, mọi thứ không chạy tốt kể từ khi tôi va vào ngoại lệ này (SocketException).

Bằng cách nào đó, tôi tiếp tục nhận được nó ngay cả sau khi thiết lập sự cho phép trong biểu hiện để có sự cho phép Internet (và vâng, tôi có kết nối Internet đang hoạt động):

<uses-sdk android:minSdkVersion="8"> 
    <uses-permission android:name="android.permission.INTERNET"></uses-permission> 
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission> 
</uses-sdk> 

Trường hợp ngoại lệ: SocketException: Permission denied. Xem chi tiết LogCat.

09-24 23:43:00.591: ERROR/File was not found.(1124): /mnt/sdcard/ListViewTest/-421624214 (No such file or directory) 
09-24 23:43:00.601: WARN/System.err(1124): java.net.SocketException: Permission denied 
09-24 23:43:00.611: WARN/System.err(1124):  at org.apache.harmony.luni.platform.OSNetworkSystem.createStreamSocketImpl(Native Method) 
09-24 23:43:00.611: WARN/System.err(1124):  at org.apache.harmony.luni.platform.OSNetworkSystem.createStreamSocket(OSNetworkSystem.java:186) 
09-24 23:43:00.622: WARN/System.err(1124):  at org.apache.harmony.luni.net.PlainSocketImpl.create(PlainSocketImpl.java:265) 
09-24 23:43:00.632: WARN/System.err(1124):  at java.net.Socket.checkClosedAndCreate(Socket.java:873) 
09-24 23:43:00.632: WARN/System.err(1124):  at java.net.Socket.connect(Socket.java:1020) 
09-24 23:43:00.632: WARN/System.err(1124):  at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnection.<init>(HttpConnection.java:62) 
09-24 23:43:00.642: WARN/System.err(1124):  at org.apache.harmony.luni.internal.net.www.protocol.http.HttpConnectionPool.get(HttpConnectionPool.java:88) 
09-24 23:43:00.642: WARN/System.err(1124):  at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getHTTPConnection(HttpURLConnectionImpl.java:927) 
09-24 23:43:00.652: WARN/System.err(1124):  at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.connect(HttpURLConnectionImpl.java:909) 
09-24 23:43:00.661: WARN/System.err(1124):  at org.apache.harmony.luni.internal.net.www.protocol.http.HttpURLConnectionImpl.getInputStream(HttpURLConnectionImpl.java:1152) 
09-24 23:43:00.661: WARN/System.err(1124):  at java.net.URL.openStream(URL.java:653) 
09-24 23:43:00.661: WARN/System.err(1124):  at fabiomilheiro.tests.ImageLoader.getBitmap(ImageLoader.java:80) 
09-24 23:43:00.671: WARN/System.err(1124):  at fabiomilheiro.tests.ImageLoader.access$0(ImageLoader.java:66) 
09-24 23:43:00.671: WARN/System.err(1124):  at fabiomilheiro.tests.ImageLoader$PhotosLoader.run(ImageLoader.java:173) 

Lỗi/mnt/sdcard/ListViewTest/-421624214 (Không có tệp hoặc thư mục nào) đang làm phiền tôi. Tôi sửa lỗi của tôi thích ứng của mã Fedor và tôi không thấy lý do tại sao các tập tin không được tìm thấy. Tôi đã kiểm tra và xác nhận các tệp mà tôi đang cố gắng thực hiện trên web.

Nhân tiện, lớp trình tải lên hình ảnh hoàn toàn giống nhau. Sự khác biệt chính tôi thấy giữa mã của tôi và mã của Fedor là lớp hoạt động chính của tôi mở rộng ListActivity trong khi và mở rộng BaseActivity của mình.

Trả lời

17

Tôi không biết liệu nó có giải quyết được vấn đề của bạn hay không, nhưng trong tệp kê khai của bạn, chỉ thị sử dụng quyền không nên được đặt bên trong chỉ thị sử dụng-sdk.

+3

Cảm ơn bạn Kevin Gaudin! Đề xuất của bạn đã giải quyết được sự cố. Đó là một trong những điều đơn giản không rõ ràng đối với người mới bắt đầu. –

+0

Lỗi cũng xảy ra khi sự cho phép bị thiếu hoàn toàn. – tos

+0

@ chắc chắn, có một sự cho phép không đúng chỗ là tương đương với không có nó ở tất cả. –

1

Bạn có thực sự có tệp có tên "/ mnt/sdcard/ListViewTest/-421624214" ???

Bởi vì nó trông giống như một người nào đó chạy nước rút tên tập tin với% d thay vì% s và nó chuyển đổi giá trị của con trỏ thành số thập phân thay vì bỏ tham chiếu nó thành chuỗi. (Hoặc một số nhầm lẫn kiểu lập trình có thể so sánh được trong Java)

Đây cũng là lỗi khi truy cập tệp cục bộ, bất kể có gì hoặc không tồn tại trên web.

+0

không phải là vấn đề, nhưng dù sao đi nữa. Tôi cũng nghĩ rằng nó có thể là một cái gì đó như thế! –

Các vấn đề liên quan