2015-04-09 26 views
7

Sau khi đọc tài liệu của Apple và kiểm tra trên stackoverflow, tôi không thể hiểu hoàn toàn nếu có thể hoặc không gọi một phần mở rộng ứng dụng cụ thể theo loại "Hành động" hoặc "Chia sẻ".Gọi phần mở rộng ứng dụng iOS theo chương trình

Chủ yếu, tôi đã tạo tiện ích ứng dụng loại "Hành động" và tôi muốn gọi nó theo chương trình từ ứng dụng thứ hai (vì vậy tôi có thể gửi một số thuộc tính đầu vào và lấy kết quả từ tiện ích mở rộng) mà không phải mở UIActivityViewController.

Có cách nào để làm điều đó không? Bất kỳ gợi ý hoặc liên kết đến một số câu trả lời sẽ rất được đánh giá cao.

Xin cảm ơn,

Trả lời

1

Không chính xác. Cách gọi hành động khác trong ứng dụng khác là sử dụng Lược đồ URL tùy chỉnh như được đề cập trong tài liệu của Apple - https://developer.apple.com/library/ios/documentation/iPhone/Conceptual/iPhoneOSProgrammingGuide/Inter-AppCommunication/Inter-AppCommunication.html#//apple_ref/doc/uid/TP40007072-CH6-SW8

Bạn có thể chuyển một số đối số như đã đề cập trong tài liệu và trong ứng dụng khác của bạn, bạn sẽ cần phải phân tích cú pháp URL và hành động theo các thông số đó.

+0

Tuy nhiên, bằng cách sử dụng phương pháp này của Lược đồ URL, tôi không thể chuyển các tệp chẳng hạn, chỉ "đối số URL". Trong trường hợp của tôi, tôi muốn chuyển một tập tin PDF và nhận được như gọi lại một tập tin PDF. Sử dụng phần mở rộng ứng dụng này rất dễ dàng vì có một danh sách các tham số "đầu vào" và danh sách các tham số "đầu ra". Tuy nhiên bằng cách sử dụng phương pháp tiếp cận chương trình URL nó không phải là. Đó là lý do tại sao tôi đã tự hỏi về việc gọi phần mở rộng ứng dụng ios-programmatically. – vilanovi

+0

Bạn có thể có bộ nhớ chia sẻ cho cả hai ứng dụng và lưu pdf ở đó, và hơn là chỉ chuyển tên của nó thành tham số. Điều này có phù hợp với bạn không? – Asaf

+0

Vâng, không thực sự, như "phần mở rộng" của tôi là nghĩa vụ phải làm việc với tất cả các ứng dụng, không chỉ với tôi. Do đó, tôi không thể thiết lập bộ nhớ dùng chung. :/ – vilanovi

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