2011-07-24 36 views
6

Tôi đang sử dụng UIDocumentInteractionController để mở tệp trong một ứng dụng khác, DropBox.Mở tệp UIDocumentInteractionController trong một ứng dụng cụ thể mà không cần tùy chọn

Những gì tôi đang cố gắng làm là mở tệp trong một ứng dụng cụ thể khác nhưng tôi chỉ quản lý cho đến nay để hiển thị các ứng dụng được hỗ trợ và cho phép người dùng chọn.

UIDocumentInteractionController *udi = [UIDocumentInteractionController interactionControllerWithURL:[NSURL fileURLWithPath: jpgPath]]; 
[udi retain]; 
CGRect r = CGRectMake(0, 0, 300, 300); 
[udi presentOpenInMenuFromRect:r inView:self.view animated:YES]; 

Đây là danh sách các ứng dụng được hỗ trợ, nhưng tôi muốn trực tiếp mở tệp bằng tài khoản đăng, không có hộp tùy chọn. Bất kỳ ý tưởng?

Trả lời

1

Tôi rất vui khi được mâu thuẫn, nhưng tôi nghĩ điều này là không thể (ít nhất là đến và bao gồm iOS 4).

Cách thông thường để mở tệp trong ứng dụng khác là sử dụng lược đồ URL tùy chỉnh. (Xem tài liệu cho openURL: trong Tài liệu tham khảo lớp UIApplication và cũng là Implementing Custom URL Schemes trong Hướng dẫn lập trình ứng dụng iOS.) Theo hiểu biết tốt nhất của tôi, Dropbox chưa triển khai Lược đồ URL tùy chỉnh. Và, cho rằng, cách tiếp cận này được đóng lại.

UIDocumentationController khá mờ. Bạn có thể coax nó vào telling you whether or not there is any application on the device that will open your file. Nhưng không rõ bạn có thể làm được gì khác không.

+0

Và nếu chúng ta đang nói về instagram? nó có instagram: // scheme nhưng tôi không biết cách nào để truyền một hình ảnh ở đó. –

+0

Có iOS 5 có lẽ đã thêm bất cứ điều gì cho chúng tôi? Tôi không thể tìm thấy bất cứ điều gì, nhưng nghĩ rằng tôi muốn hỏi trong trường hợp ai đó có !! – strawtarget

0

Nếu bạn muốn cung cấp tập tin mở trong một ứng dụng cụ thể, chỉ cần thêm (sử dụng nhanh chóng 3.0):

docController.uti = @"com.dropbox.ios"; 
Các vấn đề liên quan