2016-03-15 15 views
8

Tôi mở tập tin chọn Ý định với, Bellow đangRemove Liên chọn tùy chọn tập tin hình thức chọn tùy chọn

Intent intent_upload = new Intent(); 
    intent_upload.setType("*/*"); 
    intent_upload.setAction(Intent.ACTION_GET_CONTENT); 
    activity.startActivityForResult(intent_upload, Constants.FILE_PICK_REQUEST_CODE); 

I Want loại bỏ tùy chọn Liên hệ từ danh sách, xin vui lòng bất cứ ai có thể giúp đỡ.

Cảm ơn enter image description here

+0

Bạn đang yêu cầu cho tất cả các loại nội dung ('*/*'). Danh bạ là một loại nội dung. Nếu bạn không muốn liên hệ, không yêu cầu '*/*' cho loại MIME. – CommonsWare

+0

Cảm ơn @CommonsWare for Quick replay, Nếu tôi không yêu cầu "*/*" thì không cho phép tôi chọn tệp có sẵn trong ổ google. Làm cho các tệp đó vô hiệu hóa để lựa chọn. –

Trả lời

5

Sử dụng mã dưới đây tôi nghĩ rằng nó có thể giúp bạn và cũng đề cập Link

Intent intent_upload = new Intent(); 
     intent_upload.setType("*/*"); 
     intent_upload.setAction(Intent.ACTION_GET_CONTENT); 
     intent_upload.addCategory(Intent.CATEGORY_OPENABLE); 
     activity.startActivityForResult(intent_upload, Constants.FILE_PICK_REQUEST_CODE); 
+0

Cảm ơn @hharry_tech hữu ích. –

0

Bạn cần chỉ định loại mục đích (ứng dụng) bạn muốn mở. Bây giờ bạn thiết lập cung cấp cho tôi tất cả các ứng dụng:

intent_upload.setType("*/*"); 

Điều này có thể loại khác nhau cho hình ảnh, nhạc, tài liệu, vv Eg .:

intent.setType("image/*"); 
+0

intent_upload.setType ("image/*"); Chuỗi [] mimeTypes = {"âm thanh/*", "video/*", "văn bản/*", "ứng dụng/*", "multipart/*", "message/*", "model/*"}; Tôi đang sử dụng tính năng này cho tất cả các loại tệp. Nhưng nó không cho phép tôi chọn các tệp có sẵn trong Google Drive. –

+0

Ví dụ: "text/*" cung cấp Google Drive làm tùy chọn. GDrive trong trình giả lập Genymotion đó có được cài đặt không? –

+0

Tôi đang sử dụng thiết bị của mình, nhưng không cho phép ing chọn tệp, như Hình ảnh, pdf, v.v. –

0

Như CommonsWare nói bạn không có lựa chọn thay thế hơn là thiết lập cụ thể MIME_TYPES và bỏ qua sử dụng "*/*". Sử dụng quy định MIME_TYPES như ở đây ..

String[] mimetypes = {"image/*", "video/*"}; 
    Intent intent_upload = new Intent(); 
    intent_upload.setType("image/*,video/*"); 
    intent_upload.putExtra(Intent.EXTRA_MIME_TYPES, mimetypes); 
    intent_upload.setAction(Intent.ACTION_GET_CONTENT); 
    MainActivity.this.startActivityForResult(intent_upload, Constants.FILE_PICK_REQUEST_CODE); 
Các vấn đề liên quan