2010-09-28 9 views
5

tôi ra khỏi danh sách tập tin trong '/' bởi:Tại sao thư mục 'dữ liệu' không thể được hiển thị giống như trong trình thám hiểm tệp DDMS?

File directory = new File("/"); 
fill_listview(directory.listFiles()); 

Và tôi nhận được những người trong danh sách:

sqlite_stmt_journals 
config 
cache 
sdcard 
d 
etc 
system 
sys 
sbin 
proc 
init.rc 
init.goldfish.rc 
init 
default.prop 
data 
root 
dev 

Tôi có hai câu hỏi:

1.Why Tôi cann't truy cập thư mục '/ data' giống như trình thám hiểm tệp tin DDMS của Eclipse?

2.Why nó ​​là khác nhau từ DDMS mà chỉ hiển thị:

data 
sdcard 
system 

Cảm ơn!

Trả lời

12

On rooted thiết bị mà bạn có thể làm điều này để truy cập vào thư mục/data:

  1. mở cmd
  2. Loại 'adb shell'
  3. su
  4. Nhấn 'Cho phép' trên thiết bị
  5. chmod 777 /data /data/data /data/data/com.application.pacakage
  6. Chuyển đến chế độ xem DDMS trong Eclipse

Sau này, bạn sẽ có thể duyệt các tệp trên thiết bị.

+0

xin lỗi nhưng có anyway để duyệt/thư mục dữ liệu mà không có quyền truy cập root? – dumbfingers

+0

@ ss1271 Tôi không nghĩ vậy. – peceps

+0

điều này cung cấp cho bạn quyền truy cập vào thư mục gốc của thư mục dữ liệu ứng dụng của bạn, nhưng để đến bất kỳ thứ gì hữu ích, bạn cũng cần phải chmod các thư mục con. chmod -R 777 /data/data/com.application.pacakage – nathanielwolf

7

Chủ yếu là do sự cố bảo mật. Nếu/thư mục dữ liệu hiển thị với mọi người, thì một số ứng dụng độc hại có thể đọc/tính/xóa dữ liệu của một số ứng dụng khác có thể trở nên tồi tệ hơn nếu một số ứng dụng lưu trữ một số dữ liệu nhạy cảm như mật khẩu/số thẻ tín dụng, v.v. chỉ hiển thị qua bảng điều khiển gỡ lỗi (hoặc ddms).
Bạn không thể truy cập dữ liệu của bất kỳ ứng dụng nào trên thiết bị trừ khi nó được root bởi vì làm như vậy, tính toàn vẹn của hệ thống có thể bị xâm phạm và nó có thể dẫn đến hành vi lạ. Điều đó có nghĩa là bạn không thể truy cập dữ liệu/cơ sở dữ liệu được lưu trong bộ nhớ cache của ứng dụng.

+0

Cảm ơn rất nhiều! Bây giờ tôi biết đó là do điều khiển truy cập Android. Điều này thực sự hữu ích. – herbertD

+0

Đây là câu trả lời rất hay. –