您的位置:首页 > 其它

Mac 命令行安装Chrome插件

2013-08-27 17:16 393 查看

1. 在终端调用命令行实现Chrome插件安装

/Applications/Google\ Chrome.app/Contents/MacOS/Google\ Chrome --enable-easy-off-store-extension-install extensionPath


其中extensionPath是指的插件文件路径(Chrome插件文件的后缀名是crx),例如~/Desktop/chromeExtension.crx

注意:安装插件之前要确保Chrome浏览器不在运行

2. 通过代码实现Chrome插件安装

- (void)startInstallChromeExtension {
NSURL *url = [[NSWorkspace sharedWorkspace] URLForApplicationWithBundleIdentifier:@"com.google.Chrome"];
if (url) {
NSString *chromeExtensionPath = [[NSBundle mainBundle] pathForResource:EXTENSIONSOURCENAME ofType:@"crx" inDirectory:EXTENSIONDIRNAME];
NSDictionary *configuration = [NSDictionary dictionaryWithObjectsAndKeys:
[NSArray arrayWithObjects:@"--enable-easy-off-store-extension-install",chromeExtensionPath,nil],NSWorkspaceLaunchConfigurationArguments, nil];

[[NSWorkspace sharedWorkspace] launchApplicationAtURL:url
options:NSWorkspaceLaunchDefault
configuration:configuration error:nil];

}
}

- (IBAction)installChromeExtension:(id)sender {
NSArray *runningChromes = [NSRunningApplication runningApplicationsWithBundleIdentifier:@"com.google.Chrome"];
if ([runningChromes count] > 0) {
NSAlert * alert = [NSAlert alertWithMessageText:NSLocalizedString(@"安装Chrome插件,需要关闭正在运行的Chrome浏览器,是否允许?", @"")
defaultButton:NSLocalizedString(@"OK", @"")
alternateButton:NSLocalizedString(@"Cancel", @"")
otherButton:nil
informativeTextWithFormat:@""];

NSInteger result = [alert runModal];

if (result == NSAlertDefaultReturn ) {
for (int i = 0; i < [runningChromes count]; i++) {
[(NSRunningApplication *)[runningChromes objectAtIndex:i] forceTerminate];
}
[self performSelector:@selector(startInstallChromeExtension) withObject:nil afterDelay:0.5];
}
}
else {
[self performSelector:@selector(startInstallChromeExtension) withObject:nil afterDelay:0.5];
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: