2012-05-28 32 views
13

Ứng dụng của tôi được sử dụng cho mục đích bảo mật. vì vậy, từ người dùng ứng dụng của tôi chụp ảnh, tất cả ảnh được lưu trữ trong một thư mục mà thư mục không được truy cập từ bất kỳ ứng dụng nào khác và không được cấp quyền truy cập khi thiết bị kết nối với hệ thống máy tính. Nếu người dùng muốn xem những hình ảnh này, anh ấy chỉ nên truy cập từ ứng dụng của tôi.Cách tạo thư mục riêng trong sdcard

+1

sử dụng Mode.PRIVATE –

Trả lời

2

Cách duy nhất, AFAIK là encrypt các tệp mà bạn lưu trữ. Không có cách nào để ngăn người dùng gắn thẻ sdcard để truy cập mọi tệp được lưu trữ trong đó.

+0

xin lỗi tôi không hiểu bạn có thể mô tả ..... –

+0

Chỉ cần mã hóa hình ảnh của bạn bằng rsa/dsa (điều tốt nhất cho mục đích của bạn) khi người dùng lưu trữ hình ảnh và giải mã khi muốn để hiển thị. – Blackbelt

+0

hãy xem tại đây: http://stackoverflow.com/questions/4526612/encryption-of-image-files-on-android-cipheroutputinputstream-problems – Blackbelt

0

theo câu hỏi có liên quan này, bạn chỉ có thể tạo ra các file được bảo vệ trong lưu trữ nội bộ (không phải trên SD) ...

Create Folder that can not accessible by any other application

+0

Người dùng có thể lưu nhiều số ảnh Nếu tất cả ảnh được lưu trong bộ nhớ trong, bộ nhớ có thể không hoạt động. –

0

Hãy thử giải pháp sau đây:

How to store a file in Hidden mode

Mặc dù nó không phải là chính xác những gì bạn muốn và tôi nghi ngờ cho dù đó là có thể hay không. Lựa chọn tốt nhất là để làm cho nó ẩn nhưng điều đó cũng làm việc với các hạn chế (chỉ hoạt động cho Linux và không dành cho Windows, vẫn ứng dụng khác có thể truy cập vào thư mục)

How to hide the folder of sdcard in android

How to make a file hidden in android sd card?

0

của nó không thể không có quyền truy cập vào thư mục đó khi thiết bị kết nối với máy tính. Cũng không thể trên sdcard, Nhưng bạn có thể sử dụng định dạng khác cho hình ảnh chỉ có thể được mở từ ứng dụng của bạn hoặc bạn có thể mã hóa hình ảnh. Hoặc nếu bạn muốn ẩn hình ảnh không hiển thị chúng trong thư viện, bạn có thể đặt một tệp trống có tên là ".nomedia" trong thư mục của bạn. Nhưng nguyên nhân không thể của nó nếu u đọc tài liệu về WRITE_EXTERNEL_STORAGE cho phép bạn sẽ hiểu những gì tôi đang nói. :)

7

Theo điều này guide, bạn có thể lưu tệp trực tiếp trên bộ nhớ trong của thiết bị. Theo mặc định, các tệp được lưu vào bộ nhớ trong là riêng tư đối với ứng dụng của bạn và các ứng dụng khác không thể truy cập chúng (cũng không phải người dùng). Khi người dùng gỡ cài đặt ứng dụng của bạn, các tệp này sẽ bị xóa. Ví dụ:

String FILENAME = "hello_file"; 
String string = "hello world!"; 
FileOutputStream fos = openFileOutput(FILENAME, Context.MODE_PRIVATE); 
fos.write(string.getBytes()); 
fos.close(); 

MODE_PRIVATE sẽ tạo ra các tập tin (hoặc thay thế một tập tin cùng tên) và làm cho nó tin để ứng dụng của bạn. Các chế độ khác có sẵn là: MODE_APPEND, MODE_WORLD_READABLE và MODE_WORLD_WRITEABLE.

+0

Người dùng có thể lưu nhiều hình ảnh Nếu tất cả hình ảnh được lưu trong bộ nhớ trong, bộ nhớ có thể không hoạt động .. –

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