Khởi động ứng dụng bên ngoài từ Tiện ích mở rộng của Google Chrome?


77

Cách khởi động ứng dụng bên ngoài từ Tiện ích mở rộng của Google Chrome?

Vì vậy, về cơ bản tôi có một tệp thực thi sẽ thực hiện công việc khi bạn khởi chạy nó. Tôi cần có thể khởi động nó mà không có cửa sổ (nó là một ứng dụng bảng điều khiển) và chuyển URL hiện tại cho nó trong một đối số,


16
Nếu có chúa thì Google sẽ không bao giờ cho phép bất kỳ ai làm điều này trong bất kỳ hoàn cảnh nào.
Azeem.Butt

ít nhất bạn có thể có tệp exe của riêng bạn mà bạn có thể bắt đầu ... mà không cần nghĩ đến c hoặc C ++.
Muhammad Umer

7
@ Azeem.Nhưng điều gì sẽ xảy ra nếu bạn ở trong môi trường công ty và tất cả người dùng đều cho phép rõ ràng loại hành động này? Có vẻ như một quy trình làm việc rất hữu ích đối với tôi. Do đó nhắn tin gốc (mà đầu tiên đòi hỏi một ứng dụng bản địa riêng biệt phải được cài đặt / chạy) dường như con đường để đi (xem câu trả lời jonny của)
JoeCool


@msangel Vì câu hỏi bạn đề cập nằm sau câu hỏi này nên nó nên được coi là bản sao.
C.Champagne

Câu trả lời:


83

Trước đây, bạn sẽ thực hiện việc này thông qua các plugin NPAPI .

Tuy nhiên, Google hiện đang loại bỏ NPAPI cho Chrome , vì vậy cách ưu tiên để làm điều này là sử dụng API nhắn tin gốc . Ứng dụng bên ngoài sẽ phải đăng ký một máy chủ nhắn tin gốc để trao đổi tin nhắn với ứng dụng của bạn.


Tôi thực sự nghĩ rằng bạn có thể làm được, bằng cách sử dụng FileIO: developer.chrome.com/native-client/pepper_stable
i336_

19

Bạn không thể khởi chạy các lệnh tùy ý, nhưng nếu người dùng của bạn sẵn sàng trải qua một số thiết lập bổ sung, bạn có thể sử dụng các giao thức tùy chỉnh .

Ví dụ: bạn yêu cầu người dùng thiết lập mọi thứ để some-app://các liên kết bắt đầu "SomeApp", sau đó trong my-awesome-extensionbạn mở một tab trỏ đến some-app://some-data-the-app-wants, và bạn đã sẵn sàng!


Tôi nghĩ đây phải là câu trả lời mới được chấp nhận và nó có vẻ hoạt động rất tốt trên Win & Linux, rất muốn biết về Pears ... hoặc là Bananans ... thứ gì đó có trái cây trong đó :-)
Xan-Kun Clark- Davis

2

Có một tiện ích mở rộng cho Chrome (SimpleGet) có một plugin dành cho Windows và Linux có thể thực thi một ứng dụng với các tham số dòng lệnh .....
http://pinel.cc/
http://code.google.com/p/ simple-get /
http://www.chromeextensions.org/other/simple-get/


1
Đơn giản nhận được là một trình quản lý tải xuống, nó không phải là những gì họ đang tìm kiếm.
joanlofe

1
@joanlofe "có một plugin dành cho Windows và Linux có thể thực thi một ứng dụng với các tham số dòng lệnh"
PAEz

7
Bất kỳ ai khác nhìn vào điều này, phần mở rộng sử dụng phần mở rộng NPAPI sẽ bị loại bỏ dần vào cuối năm nay.
The Humble Rat

2

Tôi đi tìm các giả thuyết vì bây giờ tôi không thể xác minh được.

Với Apache, nếu bạn tạo một tập lệnh php trên máy cục bộ của mình gọi tập lệnh thực thi của bạn và sau đó gọi tập lệnh này qua POST hoặc GET qua html / javascript?

nó sẽ hoạt động?

cho tôi biết.


1
Tất nhiên điều này sẽ làm việc nếu quá trình Apache có quyền yêu cầu, nhưng điểm là những gì khi bạn sau đó sẽ cần phải cài đặt Apache và cổng máy chủ web mở trên máy tính của người dùng ....
Pacerier

0

Câu hỏi có thứ hạng trang tốt trên google, vì vậy đối với bất kỳ ai đang tìm kiếm câu trả lời cho câu hỏi này, điều này có thể hữu ích.

Có một tiện ích mở rộng trong google chrome marketspace để thực hiện chính xác điều đó: https://chrome.google.com/webstore/detail/hccmhjmmfdfncbfpogafcbpaebclgjcp


6
Lưu ý rằng các câu trả lời chỉ có liên kết không được khuyến khích, các câu trả lời SO phải là điểm cuối của quá trình tìm kiếm giải pháp (so với một điểm dừng khác của các tham chiếu, có xu hướng cũ dần theo thời gian). Vui lòng xem xét thêm một bản tóm tắt độc lập ở đây, giữ liên kết làm tài liệu tham khảo.
kleopatra

@kleopatra tôi đã cung cấp một số bối cảnh cho liên kết
Kent Aleksandrov

Đó là một tiện ích mở rộng "Mở bằng ứng dụng bên ngoài", nguồn được lưu trữ trên BitBucket ( bitbucket.org/lck/open-with-external-application ) và nó sử dụng plugin SimpleGet. Ví dụ tốt để học hỏi.
Victor

1
Lưu ý rằng plugin này sử dụng NPAPI hiện đã được mô tả, vì vậy nó không hoạt động với các phiên bản Chrome hiện đại (phiên bản 35 cho linux).
Hjulle
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.