你能用HTML/CSS和Javascript编写Cocoa应用程序吗?

你能用HTML/CSS和Javascript编写Cocoa应用程序吗?,javascript,cocoa,webkit,webview,Javascript,Cocoa,Webkit,Webview,我在想,创建一个Cocoa应用程序是否可行,它本质上只是一个带有web视图的界面?或者做这样的事情有严重的限制吗 如果它是“可行的”,这是否也意味着您可以对Windows应用程序执行相同的操作 是的,有相当多的应用程序可以做到这一点。我认为他们通常存储html文件,并使用jquery获取更新的数据。它主要只是给用户一个稍微快一点的体验,因为您只是检索数据,而不是大部分HTML 这些限制主要是由于您无法访问所有iPhone控件和库。MapKit、Mail等。当然可以创建一个应用程序,它只是一个Co

我在想,创建一个Cocoa应用程序是否可行,它本质上只是一个带有web视图的界面?或者做这样的事情有严重的限制吗


如果它是“可行的”,这是否也意味着您可以对Windows应用程序执行相同的操作

是的,有相当多的应用程序可以做到这一点。我认为他们通常存储html文件,并使用jquery获取更新的数据。它主要只是给用户一个稍微快一点的体验,因为您只是检索数据,而不是大部分HTML


这些限制主要是由于您无法访问所有iPhone控件和库。MapKit、Mail等。

当然可以创建一个应用程序,它只是一个Cocoa窗口,里面有一个web视图。这是否有意义地被称为“可可应用程序”仍有争议。显然,像应用程序菜单这样的东西需要一些Cocoa glue代码,所以是的,在HTML和JS中可以做的事情是有限的

您还必须仔细考虑如何处理本地化(不希望为每种语言复制整个HTML和JS源代码),并且有许多接口构造比使用Cocoa更难创建,和/或不会让习惯OSX外观的人觉得自己是本地人。您将通过使用解释语言放弃一些性能,这对您的应用程序可能有影响,也可能没有影响

有些OSX应用程序就是这样构建的,它们通常感觉像糟糕的端口;如果你的目标是制作一款真正的Mac应用程序,那么这可能不是一个好办法。

当然。正是这样。它是一个包含Javascript桥的现有flash应用程序的薄包装。我曾在其他UI上工作过,这些UI是通过直接DOM操作编程控制的web视图,以获得非常好的效果(从未给人“web应用程序”的感觉)。您可以使用ObjC/Javascript桥让Javascript调用ObjC,WebKit使从ObjC运行Javascript变得简单

相关的,但在相反的方向,有,这是一个类似于Cocoa的Javascript框架


我不清楚你所说的“对Windows应用程序做同样的事情”是什么意思。

iPhone操作系统拥有奇妙的功能,可以让网络应用程序成为设备上的头等公民。你可以将你的网络应用图标添加到springboard,就像一个Cocoa应用一样,你可以在本地存储数据和许多其他非常整洁的东西。。。当然有可能,你也可以去看看。

。这会有很大的限制。这样的应用程序不能做任何网页不能做的事情。因此,例如,除非您编写了支持Cocoa的代码,否则使用标准的全系统文档处理支持将是不可能的。

可以帮助您很多,它基本上是一个带有WebView(您正在寻找的东西)的Cocoa窗口,但是(好的部分)带有JavaScript绑定到本机内容,如访问文件系统、菜单栏、Dock图标(即badge),声音等。此外,它将在Mac、Linux、Windows、iPhone和Android上运行

钛业自称为开源软件,但开发者需要注册一个帐户,并保持与专有服务器软件的互联网连接,以便使用该平台。

不完全是你所要求的,但

mProjector是Flash的操作系统包装器。它就像一个扩展版本的Flash投影仪,带有一个系统API,让您可以访问Mac/Win操作系统的功能

这将使您能够使用web技能构建跨平台桌面应用程序。它比另一个主要选项锌更便宜、更好。

你可以用两种方式用HTML编写可可应用程序。 电子 Electron是一个将html、css和js转换为cocoa应用程序的框架

WKWebview WKWebView是Safari web浏览器中使用的web浏览器


如果您选择了WKWebView,请确保将html应用程序放在网页中,因为人们可以进入应用程序资源

您可能希望澄清您谈论的是Mac还是iPhone应用程序。Logitech Harmony remote软件过去也是以类似的方式完成的,很明显,考虑到使用Cocoa应用程序的痛苦程度,它不是一个原生的Cocoa应用程序。WebKit和JavaScriptCore有许多特定于供应商的CSS和JS功能,与默认的标准HTML/CSS/JS相比,允许更广泛的访问原生Mac外观和行为。不幸的是,上一次我检查时,行为端的很多内容都有糟糕的文档记录,需要开发人员进入Cocoa文档以找出可能的内容。如果你是为可可目标而开发的,那么仅仅学习可可可能是更好的投资。只把答案作为答案发布。如果你在发表评论,就你所指的答案发表评论。