如果OSX Cocoa应用程序使用WebKit,它是否包含在可执行文件中,或者像系统中的dll一样被访问?

时间:2012-03-10 21:30:53

标签: macos cocoa webkit

在Windows上,围绕WebBrowser控件的dotnet包装应用程序通常不会包含dll,所以基本上它的可执行文件会很小。使用WebKit的类似Cocoa自定义浏览器怎么样 - 它是否很小或是否会包含WebKit本身,因此相对较大?

2 个答案:

答案 0 :(得分:4)

默认情况下,Mac上的所有系统库都是动态链接的。这包括WebKit。否则,每当您执行Mac OS X软件更新时,系统上的任何应用都不会使用更新的代码。

每当Apple更新Safari时,都会提供WebKit更新。如果您安装新版本的Safari,所有实现WebView的应用程序都将使用新的WebKit框架,除非这些应用程序已链接到他们自己的私有版本的WebKit。

答案 1 :(得分:1)

这可能取决于你如何构建它?应该可以使用WebKit作为动态库。例如,如果您看一下Safari:

$ otool -L /System/Library/PrivateFrameworks/Safari.framework/Safari  | grep -i webkit
    /System/Library/Frameworks/WebKit.framework/Versions/A/WebKit (compatibility version 1.0.0, current version 534.53.10)
    /System/Library/PrivateFrameworks/WebKit2.framework/Versions/A/WebKit2 (compatibility version 1.0.0, current version 534.53.10)